One of the primary goals of any business is to be profitable. Financial success provides the means and resources necessary for most operations. At the end of the day, real cash that can be used matters as much as the bottom-line profitability. Therefore, organizational success depends on how efficiently the company can control its cash flow.
The standard instrument for cash flow control is the Cash Flow Statement. However, you need to take into account not just the historical indicators but future investments and expenses, sales plans, budgets, and market conditions. And do not forget to pay taxes on time!
Figure 1. Cash flow management processes
In order for your organization to function properly and according to the diagram above, you need to:
- Plan your budget for the next year
- Try to predict and take into account market fluctuations
- Organize ongoing control of budgets to avoid unapproved expenses
- Control your payables and receivables
- Stabilize the business development process
In this article, we focus on financial features of Odoo Enterprise that can help you manage the cash flow health of your organization. Examples are more relevant to the service and engineering industries. We will also compare Odoo Enterprise to Odoo Community Edition.
Generic flow of accounts receivable (AR) control in an organization looks like the following:
Figure 2. Accounts receivable flow
Below, we will consider features of the Odoo 9 Enterprise that assist in controlling AR such as:
Bank account updates, payment registration and reconciliation with invoices
Ongoing control of company’s financial health with dynamic reporting
Invoices and Subscriptions
The difference lies in Odoo Enterprise’s capability to create subscriptions which automatically generate invoices at fixed intervals. This, in turn, automates customer invoicing. A detailed description of this feature is not the focus of this article.
Figure 3. Odoo Subscriptions Management
Timely payment control and invoice follow-up
After you are up-to-date with your reports, the next step is to make sure that you are on track with customer payments. Only if your customers are paying on time, can you have reliable and predictable cash flow. In fact, cash flow is the main KPI of organizational health.
Note that it is not possible to remind your customers about payments in OOTB Odoo 9 Community. Instead, this is done manually by first analyzing receivables, payments list then going to your mail client, and finally sending an e-mail.
To find out overdue invoices, you can have a custom filter in the menu tab Accounting -> Customer Invoices to show all invoices with due dates preceding the current date.
Figure 4. Filter Overdue invoices
Alternatively, you can execute an invoice analyses in Accounting -> Reporting -> Business Intelligence -> Invoices and group by Invoice Status and then “Day”/”Week” or any other period. This ensures a better overview of the overdue payments and the ability to send reminders to your customers via email.
Figure 5. Invoice analyses by Due Date
Odoo 9 Enterprise incorporates a special module that allows you to configure follow up rules for your customers and then follow-up easily on overdue invoices. Simply configure Follow-Up Levels in Accounting -> Configuration -> Management -> Follow-up Levels.
Figure 6. Configuration of follow-up levels for YourCompany
After configuring follow-up levels, you will be able to review your receivables and take necessary action in Accounting -> Sales -> Customer Statements.
Figure 7. Follow-up with customers
Note that depending on the “Due Date” field, you can configure different actions:
- Send an email – this functionality allows to predefine Odoo email templates for each follow-up level. Please note that this email will NOT be sent automatically. You will need to review and submit it in Accounting -> Sales -> Customer Statements
- Send a Letter – for this level of follow-up, you will need to select “PRINT LETTER” (PDF), print the letter, and send it to the customer directly via postal mail. Please remember that this feature does not mail the physical letter to the customer
- Manual Action – this feature allows you to define an action that should be taken by a person such as “Call by phone,” “Hire money collector,” etc
Consequently, the only action your accountant needs to take is to check the daily menu Accounting -> Sales -> Customer Statements and send reminder emails directly from there.
The customer will see the following email in his/her Inbox:
Figure 8. Example of a payment reminder email
As an attachment, a PDF document will be included with details of the overdue payments.
Another exciting feature in Odoo Enterprise is the capability to reconcile payables and receivables if they are with the same partner. Thus, you avoid making additional bank payments and reduce transaction fees.
WARNING: This operation may be forbidden in your country depending on the accounting regulations. Please consult the current laws before using this option. For example, in Spain, this operation is not allowed, unless you can exactly document the operation from both parties (Note from OCA).
Figure 9. Example of payment reminder attachment with list of outstanding payments
Bank account updates, payment registration, and reconciliation of invoices: SEPA standard for European bank operations
In order to have a consistent knowledge of your customer payments, you need to monitor the bank account and check to see if invoices are paid in a timely manner. There is already a mechanism for reconciling bank statements with the invoices. This ensures that you know the exact status of the payments at all times.
However, before you can reconcile, bank statements need to be in Odoo as well. Currently, Odoo 9 Community Edition offers only a manual process for importing bank statements.
Odoo Enterprise, on the other hand, Supports 2 different ways of importing bank statements: manual and automated.
Manual Importing of Bank Statements
Your accountant will first need to export the bank statement for needed period either in QFX or QIF format through your bank account. Subsequently, these files can be imported via Wizard (supported only in Enterprise version). You are now ready to reconcile transactions.
Figure 10. Interface for importing bank statements from your bank
Figure 11. Reconciliation of bank statements
Automatic Import of bank statements directly from your bank
Exporting and importing bank statements manually is not the most efficient strategy. Instead, Odoo Enterprise leverages services like Plaid.com (supports 12 U.S. banks) and Yodlee.com (supports 9,020 banks all over the world) to automatically download new bank statements. If you would like to know whether your bank is supported, please visit this page and enter your bank’s name.
Figure 12. Checking if your bank is supported
If your bank is supported you can automatically download the statements. The default interval for downloading the bank statements is every 4 hours. In order to synchronize this feature with your bank account, you need to configure your Journal as shown below:
Figure 13. Configuration of online synchronization
Generating SEPA file
For European banks and for transactions carried in euros, you have additional option to generate a SEPA .xml file which can be uploaded to your bank. Please configure your company settings if you would like this option.
Figure 14. Filling in required information at the company level
In the journal’s Advanced Settings related to your bank, you will need to select the checkbox SEPA credit transfer. Note that you will also need to indicate the appropriate bank account number for your journal on the Bank Account tab.
Figure 15. Setting SEPA Credit Transfer account bank account
Next, you can create a payment in Sales -> Payment with SEPA Credit Transfer.
Figure 16. Create Payment with SEPA Credit Transfer
Finally, download the SEPA file from the top menu above after saving and confirming.
Figure 17. Downloading SEPA file
NOTE that the bank account should have a valid IBAN. Further, BIC should also be specified in order for this feature to work properly.
Company’s financial health and ongoing control with dynamic reporting
One of the main features in Odoo that makes the system very beneficial both for the top management as well as the accountants and other financial staff.
In the past, our customers have requested a functionality that would allow them to easily preview all accounting reports and export these reports into Excel. This feature, now available in Odoo Enterprise, saves time when analyzing the financial status of your company and allows you to easily correct your strategy if there are inconsistencies. Following a preview, exporting is available both in Excel and PDF. This is the key difference from the Community version.
Below table lists the major differences between the two versions:
Let’s analyze from the process point of view.
|Available Reports / Feature||Community Edition||Enterprise Edition|
|Legal Statements||Profit / Loss
Cash Flow Statement
|Business Statements||Aged Payable
Deferred Revenue Analysis
|Live report Preview with Adjusting||No||Yes|
|Export to Excel||No||Yes|
|Adding notes/annotations to PDF report||No||Yes|
Reporting in Odoo 9 Community
- Go to Accounting -> Reporting -> PDF Reports menu
- Click on the needed report
- Fill out the desired criteria
- Download and review the PDF report
- Repeat from Step 1 if you need to adjust report date range or other filters.
Figure 18. Community Edition Financial Reports
Reporting in Odoo 9 Enterprise
Once you select the necessary report, you will see your report in the browser. Then you can:
- Change filter criteria
- Add notes to the printed PDF form in Odoo
- Add annotations
- Drill down to the General Ledger
- From the General Ledger Report you can navigate to individual invoices and journal entries
- Export to PDF or Excel
Figure 19. Enterprise Edition Financial Reports Capabilities
Figure 20. Easy Navigation in General Ledger
Odoo 9 Enterprise contains functionalities that meet the needs of a mid-size business for operational cash flow control.
Odoo provides a user-friendly insight into your business as you look at the system from the top management perspective rather than merely thinking about the general ledger transactions. Intuitive invoicing, bank statement reconciliation, payment follow-ups, dynamic reporting, and minimally overloaded interface give the management proper overview of the company’s financial well-being.
If you have worked with other accounting software in the past, then there are several innovative differences that you will have to get acquainted with. For example, periods and fiscal years are discarded. This may seem like an unusual approach. However, we have received feedback from several Odoo partners and our customers that the end-users appreciate this approach after receiving minimal amount of training.
Odoo 9 Enterprise is a valuable technical solution to be used as foundation for all financial transaction data and further analysis. The whole system can be wrapped around this core structure organically so that all processes are integrated within a single IT landscape.
Have questions about Odoo? We would be happy to help
Working in IT industry full time since 2006 (as technical and functional expert)
Leading IT teams (technical and non-technical) since 2007
Lots of experience with ERP systems covering different company sizes (Oracle, Odoo)
Co-founded 2 startups (since 2010) before ending up working in business automation. Having 3 publications in Life Science
Since 2012 focusing on business automation using Odoo ERP. Is recognized as well-known expert
Working with customers across the globe (mostly NA, EMEA)
Having huge experience in Finance (managerial accounting) and Supply Chain (Logistics, Inventory, Purchase)
Passionate about creating new IT products. Having high demands to product's quality and level of customer support
Visioner and inventor in the VentorTech company.
Software Maintenance Team Leader
Current position: CEO & COO at VentorTech
Since 2012 focusing on business automation using Odoo ERP. Is recognized as a well-known expert
- Working with customers across the globe (mostly NA, EMEA)
- Having a huge experience in Finance (managerial accounting) and Supply Chain (Logistics, Inventory, Purchase)