Bank Reconciliation Statement for Odoo 19 Community documentation
A guide to the bank reconciliation: before you start, the reconciliation, the validation, the printed statement and the limits.
Documents version 1.0.0Updated Oct 23, 2026
Start here
In plain words: At the end of the month the bank statement says one number and the books say another. The accountant's answer is the bank reconciliation statement: the balance per bank, plus the deposits in transit, less the outstanding payments, equals the balance per books. Bank Reconciliation Statement builds it in Odoo Community: you enter the ending balance of the statement, tick what the bank has cleared, and the figures update live until the difference is zero. Then you validate, the cleared items are locked, and you print the statement.
Tip: What is not cleared stays proposed in the next reconciliation: outstanding cheques are never lost.
What you get
| Feature | What it does |
|---|---|
| Bank or cash journal | Reconcile any bank or cash journal, one statement date at a time. |
| Load the transactions | The posted items of the journal accounts up to the date that are not part of a previous reconciliation. |
| Tick the cleared items | A switch on each transaction; Clear all and Unclear all for the long statements. |
| Live figures | Balance per books, deposits in transit, outstanding payments, adjusted bank balance and the difference. |
| Validate | Possible when the difference is zero; the cleared items are locked to the reconciliation. |
| Chronological | A later reconciliation must be reset first; the next one starts from what is still outstanding. |
| Reset | Release a reconciliation to correct it. |
| Printed statement | The classic statement with the signature boxes. |
| History | Every reconciliation of every journal, with who validated it. |
| Arabic | Everything is translated and works right to left. |
Requirements
| Item | Details |
|---|---|
| Odoo | 19.0 (Community or Enterprise) |
| Apps needed | Invoicing (account) |
| License | OPL-1 (Odoo Proprietary License v1.0) |
Install
- Unzip the package. Inside is
taqnix_bank_reconciliation.zip; unzip it to get the foldertaqnix_bank_reconciliation. - Copy the folder into one of the
addons_pathfolders of your Odoo server and restart Odoo. - Log in as an administrator, activate Developer mode, open Apps and press Update Apps List.
- Remove the “Apps” filter, search Bank Reconciliation Statement and press Install.
# or from the command line ./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_bank_reconciliation --stop-after-init
Before you start
In plain words: The reconciliation works on the transactions of the bank account of the journal, and on the outstanding receipts and payments accounts of its payment methods. Post your bank movements (payments, receipts, bank entries) on those accounts as usual. If you want payments to hit the bank account directly, choose the bank account as the outstanding account of the payment methods in Accounting → Configuration → Journals.
Reconcile a statement
In plain words: Open Accounting → Accounting → Transactions → Bank reconciliation and click New. Choose the bank journal, the statement date and type the balance per bank statement. Click Load the transactions, then switch on Cleared by the bank for each transaction you find on the statement.
| Figure | Meaning |
|---|---|
| Balance per books | The balance of the journal accounts at the statement date. |
| Deposits in transit | Money received in the books and not yet on the statement (items not ticked, money in). |
| Outstanding payments | Money paid in the books and not yet on the statement (items not ticked, money out). |
| Adjusted bank balance | Balance per statement plus deposits in transit, minus outstanding payments. |
| Difference | Adjusted bank balance minus balance per books: it must be zero to validate. |
Validate
In plain words: When the difference is zero, click Validate. The ticked transactions are locked to this reconciliation and will not be proposed again; the unticked ones stay outstanding for the next statement. If the difference is not zero, look for a transaction ticked by mistake, a missing bank charge or a wrong ending balance.
Tip: Made a mistake? Reset releases the items; a later reconciliation must be reset first.
The statement
In plain words: Print the statement gives the PDF: balance per bank, the deposits in transit and the outstanding payments item by item, the adjusted bank balance, the balance per books and the difference, with the signature boxes for the preparer, the reviewer and the approver.
Who can do what
| Who | Can |
|---|---|
| Accountants | Create, tick, validate, reset and print. |
| Read-only accounting users | See the reconciliations. |
| Other users | No access. |
Arabic and right to left
Limits
| Limit | Detail |
|---|---|
| Company currency | The figures are in the currency of the company. |
| No import of the statement | You type the ending balance and tick the items; use the bank statement import module to load statement lines. |
| One statement at a time | Reconciliations of a journal follow each other in date order. |
For developers
In plain words: Skip this chapter if you only use the module.
rec = env['taqnix.bank.rec'].create({'journal_id': bank_journal.id, 'date': '2026-10-31', 'statement_balance': 35805.0})
rec.action_load()
rec.line_ids.filtered(lambda l: l.ref != 'Cheque 4473').write({'cleared': True})
rec.difference # 0.0 when the statement matches the books
rec.action_validate()Troubleshooting
| Problem | What to do |
|---|---|
| No transaction is proposed | The journal accounts have no posted item before the date: check the outstanding accounts of the payment methods. |
| The difference is not zero | Check the ending balance you typed and the items you ticked. |
| Validate is refused | A later reconciliation of the journal is done: reset it first. |
| An item is missing | Click Load the transactions again after posting it. |
Updating and removing
Replace the folder with the new version, restart Odoo and run -u taqnix_bank_reconciliation. Your reconciliations and the locks on the items are kept.
Support
Installation help and bug fixes are included for 6 months, with lifetime updates. Contact us through the marketplace page where you bought the module or write to support@taqnix.com with your Odoo version and a screenshot.