Help with statement by cash flow report

For small companies or associations, the state provides an option to report income on a cash flow basis, but conducting accounting using cash flow has disadvantages, the main one being that it’s difficult to track payables and receivables.

I would like to generate a cash flow statement from accrual accounting and combine the best of both worlds.

I believe this can be achieved by filtering moves that originate from cash account (bank, cash-draws ecc…), and including reconciled moves in the report. This can likely be implemented using pure SQL (or hope so).

So I have some implementation design question:

  • What is the best way to identify accounts of “cash flow” type? Should users manually select accounts from a list, or should a “cash flow” flag be added to the account type?
  • Is the “follow the reconciliation” a valid strategy for calculating a cashflow statement?
  • Is best to book moves in a special journal, and filter it in this way? By doing so, will this interfere with other modules, like payment and statement?
  • Should we simply overlook the issue and abuse the analytic account module?

Thanks in advance for your feedback :smiley:

We do not really have yet such information because we do not have a cash flow statement.
But I think it should be done by adding a cash checkbox on account type.

I do not think it can be done in pure SQL because you can not make a direct link between the receivable/payable reconciliation and the expense/revenue line.
I think it should be done like the account_tax_cash does for taxes. When a receivable/payable line is reconciled, some code is triggered to distribute the cash amount between all the expense/revenue lines.

I really do not like relying on journal because it is complicate to find and fix mistakes.

I do not see what you would like to do with analytic but that does not sound right.

Thanks for the response. I’ll check out how payable/receivable are managed in the account_tax_cash module.

Hi @wifasoi I’m looking for something similar and I’m interested in knowing if you managed to do something so I don’t have to start from scratch or reinvent the wheel. Regards!

Unfortunally I did not started to code anything yet… I’m still in the intel gathering phase :smiley: