Enable Dark Mode!
By: Shabna P

An Overview of Continental Accounting in Odoo 16

Functional Odoo 16 Accounting

Odoo 16 Continental Accounting is an accounting practice that records the cost of revenue at the time of purchase. In general, when purchasing goods or services, there will be some expenses. Such expenses will register at the time of creation of the expenses in the ledger. Even though it follows GAAP accounting, one can decide which account should be debited or credited based on the configured accounts.

Now let’s see how continental accounting affects the ledgers. For that let’s take a product category whose inventory valuation can be put to ‘Automated’ to analyze the stock journal effects. It’s not mandatory to put inventory valuation to ‘Automated’ it can also be manual. This is purely based on how the company operates. Sometimes companies used to count the stock value quarterly or half-yearly and update it in their ERP. Using inventory valuation ‘Automated’ all stock entries will be updated automatically upon the transaction.

Before going to continental accounting, we have to ensure that when we are in continental accounting mode or not. For that activate the developer mode and go to the accounting configuration settings and ensure that the ‘Anglo-Saxon Accounting’ is disabled.


Disabling ‘Anglo-Saxon’ considers it as in continental accounting mode. Now let’s dive into it.

Consider the below product category having 52 products under this category and whose inventory valuation is automated.


Since the inventory valuation is ‘Automated’, we have to add the stock accounting properties further. The stock input account records the stock value of the incoming stock. The stock output account records the stock value that moved out of the inventory. The stock valuation will keep the difference between stock in and out, which refers to the current stock value.

Costing methods can be either Standard, Average Cost (AVCO) or First In First out (FIFO). Now consider a product to purchase from a vendor. Initially, the stock on hand is zero.


Now let's do a purchase operation for the product and see how the ledgers affect continental accounting.


Purchase orders will have nothing to do with accounts, it simply creates a document which is valid for business, no accounts are affected here. The next step is the purchase receipt. On receiving goods stock is affected and hence the stock accounts.


On receiving the stock input account will record the value of the stock that is received and hence the current stock value will be increased as well. Now let's have a look at the stock journal.


The nature of the received stock is considered a Liability. As per the asset-liability chart account will be credited when the liability increases. Thus the stock interim received account is credited and the stock valuation account is debited. A stock valuation account keeps the current asset value. So as an asset increases, the stock valuation account is debited.

Note: As per the asset-liability chart, When LIABILITY and INCOME increase account will be CREDITED, and when the ASSET and EXPENSE increase account will be DEBITED.

The next step is to create the bill for the purchase order which accounting ledgers will affect.


In the journal items tab, one can see the ledger details, where the expense account is debited and the account payable is credited. Here, while creating a bill, the company is liable to pay the vendor, which is the account payable. The nature of account payable is a liability and as liability increases, the account is credited. A purchase increases the expense of the company which is recorded in the expense account. Thus expense increases and the account is debited.

Now the next operation is making payment to the vendor through register payment. Click on register payment which will appear a pop-up to choose the payment journal and payment method. Creating payment will generate a payment journal entry where the accounts payable and outstanding payments are recorded.


Let's see the payment journal entry. Here the account payable is debited and outstanding receipts are credited.


Once the payment has been done the liability decreases, that’s why the account payable account is debited, and this amount is recorded in the outstanding payments for reconciliation. Thus the unreconciled entries will be recorded in the outstanding payments account.

In the accounting dashboard now can see the outstanding payments in the bank journal. Once it is reconciled with the bank statement it will be moved to the bank and the Balance in GL will get updated.


When bank statements are fetched, it has to be reconciled with payment. The creation of bank statements generates another journal entry for bank accounts and bank suspense accounts. So let's add a statement line in Odoo.


The MATCH will lead you to reconcile the entries. The bank suspense account is also the account for which it keeps the statement value temporarily until it finds the right account to map with the bank. Thus it has a respective journal entry.


When talking about the ledger posting, the Bank is credited. This means, here the asset is decreasing as making payments to the vendor. And the counterpart is the suspense account which is debited.

Now let's reconcile the payment with the bank statement line add. The VALIDATE option validates the respective entries.


Once reconciliation is done the amount in the outstanding payments seems to be moved to the bank. Thus again a journal entry will be generated that includes the outstanding payments and bank suspense account.


After reconciliation, in this journal entry, you can see the bank suspense account is replaced by the outstanding payments account. Then the bill status moved to PAID.

Now see the Sales operation, where we sell some of the purchased items.


Sales orders will not have anything to do with accounts, it makes a document that is substantial for business, and no ledgers are impacted here. The next process is the delivering requested items in the sales order.


Once products are delivered, the stock is impacted, and subsequently the stock ledgers (since inventory valuation is automated). On delivering the goods the stock result record will record the worth of the stock that is delivered in the stock output account and thus the current stock worth will be diminished too. Presently we should view the stock journal.


Here the stock output account is debited since the liability is decreasing and the stock valuation account is credited since the asset is decreasing.

The next process is making an invoice where income will be recorded. The affected ledgers can view under the journal items tab.


Here the income account ‘ Product Sales ‘ is credited. The nature of an income account is income and as income increases during sales, it is credited. The next is account receivable, this account keeps the money that should have been received from the customer. Here the account receivable is an asset in nature and as assets increase, it is debited.

When payment is received from the customer, the cashier can add ‘register payment’ in Odoo. This will generate a payment journal entry where the entry refers to the received amount being moved to outstanding receipts.


When payment is done the receivable amount will decrease. The nature of account receivable is assets and as assets decrease, the account is credited. The counterpart account ‘outstanding receipts’ will be the money till reconciliation, which is debited.

As the next step, a bank statement needs to be fetched from the bank or it has to be created and reconciled. Let's create a statement line from the accounting dashboard. This time also the amount in outstanding receipts will show in the accounting dashboard under the bank journal.


Creating a statement line creates a respective journal entry between the bank account and the bank suspense account.


Here the bank account is debited since the payment is received from the customer to the company bank account. This amount in the bank account will increase, which means the asset increased and hence the account is debited.

Now reconcile the statement with the payment journal in Odoo. The validate button validates the statement and reconciliation is completed.


Now when you check the journal entry you can find that the bank suspense account is replaced by the outstanding receipts account.


Thus the invoice status moved to PAID status.

So we have discussed how the ledgers are posted in each phase of the purchase and sales operation. From this, we have seen that the continental accounting expense is affected at the time of purchase bill creation or it records the expense at the moment of expense generation itself.

If you need any assistance in odoo, we are online, please chat with us.


Leave a comment




Cybrosys Technologies Pvt. Ltd.
Neospace, Kinfra Techno Park
Kakkancherry, Calicut
Kerala, India - 673635



Cybrosys Technologies Pvt. Ltd.
1st Floor, Thapasya Building,
Infopark, Kakkanad,
Kochi, India - 682030.



Cybrosys Techno Solutions
The Estate, 8th Floor,
Dickenson Road,
Bangalore, India - 560042

Send Us A Message