Problem Solving in Odoo Accounting
Four Things You Need to Know
31 October, 2023 by
Problem Solving in Odoo Accounting
Kaylie Kipe

Do you ever find yourself scratching your head about how something was reconciled? Or wondering why you can’t reconcile a transaction? Or who made that journal entry that’s throwing off your end of month close procedure?

You’re not alone, but you can easily look into all of these things and more if you familiarize yourself with the concepts and mechanisms of accounting in Odoo. So in this article I outline some of the key pieces of information I use when auditing and troubleshooting accounting scenarios.

It’s not all inclusive (for that, schedule some time to talk about a project with Hibou!), but if you become adept at navigating and using these pieces of information then I can guarantee you’ll be answering many of the above questions in no time. So buckle in and grab your yarn, because here we go...

Use Filters and Group By

I am starting with a core aspect of Odoo that is handy throughout the system: Filtering and Grouping.

(When I say “filtering” I mean either a quick search option or clicking Filters, which gives you access to more fields than search.)

Here are my favorite search criteria/Filters in accounting:

  • Journal
  • Account
  • Partner
  • Journal Entry
  • Date
  • Label
  • Created On
  • Created By
  • Last Updated On
  • Last Updated By

Odoo Quick Search

And here are my favorite Group By criteria in accounting:

  • Journal
  • Account
  • Partner
  • Journal Entry
  • Date
  • Matching Number
  • Created On
  • Created By
  • Last Updated On
  • Last Updated By

Odoo Group By

There is a lot of overlap between these two lists; search/filter to reduce the items you see to only those that match your criteria then group to easily digest the data. Which of these you use and when will be based on the scenario you are looking into. But I can guarantee one thing: You will uncover new information by utilizing these tools to their full potential!

Get Cozy with Journal Entries + Journal Items

A journal entry typically represents a single/discrete transaction and is made up of debits and credits, which must balance.

Journal items are the individual lines of a journal entry, i.e. the debits and credits for specific accounts.

Journal Items are a great place to put your grouping and filtering skills to use because this is where you will go to do most of your research related to how transactions have been posted/matched. Sure, you could use journal entries but let’s be honest: What matters is what a journal entry is made up of - debits and credits to specific accounts and how these are (or are not!) reconciled. So cozy on up to this menu item because it will be your best friend when it comes to auditing and troubleshooting. (Bonus Points: You can reconcile journal items from this list view!)

Understanding Payments and Bank Statement Reconciliation

Starting in 14, Odoo introduced Outstanding Payments and Outstanding Receipts accounts. I must say, this felt like a controversial change. I mean, I totally get it - the money is not in or out of your account until it hits the bank. So it’s closer to reality to keep these transactions in an outstanding account rather than having them immediately hit your bank balance.

However, it has caused a bit of heartburn (so to speak) due to the backwards incompatibility this causes with reconciling existing payments should you need to unreconcile a statement line from pre-migration to 14 or later.

So what does a payment’s journal entry look like these days?

For customer or vendor payments, one side will be a Payables or Receivables account and the other side will be an outstanding receipts or outstanding payments account.

The payable/receivable account allows you to immediately match it to an outstanding invoice or vendor bill (or likely was auto-matched when you registered payment from this record) while the other side hangs out waiting to be reconciled to a bank statement.

Odoo Customer Payments Journal Entry

An internal transfer, on the other hand, will have one side as the outstanding receipts or outstanding payments account and the other side as liquidity transfer. When you post an internal transfer, a second transfer for the receiving account gets created automatically. The liquidity accounts are automatically reconciled to each other, as evidenced by a matching number (A5). Again, the outstanding payment/receipts account awaits bank statement reconciliation.

Odoo Accounting Internal Transfer Journal Entries

Originating Transfer and Journal Entry

Odoo Accounting: Originating Transfer Payment

Odoo Accounting: Originating Transfer Journal Entry

Receiving Transfer and Journal Entry

Odoo Accounting: Receiving Transfer Journal Entry

Odoo Accounting: Receiving Transfer Journal Entry

Oh yeah, and then we have bank statement journal entries!

Whenever you post a bank statement, this makes journal entries in the background. For bank statement journal entries, one side will be debiting or crediting the bank account and the other side will be the journal’s Suspense Account.

Odoo Accounting: Bank Statement Journal Entry

Okay, so what does all of this have to do with reconciliation?

When a payment (specifically, I’m not getting into direct account reconciliation here!) is reconciled to a bank statement line, the Suspense Account on the bank statement journal entry gets modified to reflect the outstanding account it was reconciled to!

Odoo Accounting: Bank Reconciliation

Odoo Accounting: Reconciled Bank Statement

What is this magic?! I kid, but many people feel that this process is quite mysterious. In reality though, as with all things, it can be broken down into its component parts to understand the mechanisms at play behind the scenes.

Get to Know Matching Numbers

A matching number ties together journal items that have been reconciled to one another.

Odoo Accounting: Full Matching Number

In the case of our bank transfer above, we had two matching numbers:

  • One matching number that shows our liquidity transfer between the two accounts are reconciled to each other (immediate and automatic)
  • One matching number that shows our transfer out of the bank account is reconciled to a bank statement line (matching number was created during reconciliation)

Matching numbers come into play across a variety of journal items, not just payments and bank reconciliation. However, the concept is the same: They tie together transactions.

Within Journal Items, you can click on a matching number to see all of the transactions that share that matching number.

If you see a “P” in the matching number, this means that this is not a full reconciliation/match but instead is Partially matched.

Odoo Accounting: Partial Matching Number

Learning the above concepts and workflows is going to greatly improve your ability to track down and troubleshoot many issues in the Accounting application. That's all for now folks - happy accounting!

Problem Solving in Odoo Accounting
Kaylie Kipe 31 October, 2023
Share this post
Sign in to leave a comment