Skip to content

Import bank transactions and reconcile payments

Quick summary: Import each bank transaction once, match the correct obligation, and inspect any remaining difference.


Open the Accounting dashboard in Odoo

Your Odoo address

Enter the base address of your Odoo instance. It will be stored only in this browser.

The documentation does not receive your address, username, or password.

Use the configured bank journal and an import format your installation supports. If automatic synchronization already imported the period, do not import it again.

  1. On the Accounting dashboard, open the relevant bank journal. Check the company and bank account.

  2. Use the journal’s import action to upload the statement file. Review the detected account, dates, and transactions before completing the import.

  3. Compare the imported period and balances with the bank statement. Investigate gaps or duplicates before reconciliation; bank transactions already affect accounting.

  4. Open Transactions or the journal’s unreconciled transactions to enter Bank Matching.

    Bank Matching with an incoming transfer and a separate bank fee
    Open image at full size (new tab)

This aid distinguishes an existing payment, an unpaid invoice, and a genuine expense. The same choices are explained below.

Is a payment already recorded for this transaction?
  1. Expand the transaction and check its partner, reference, date, amount, and currency.

  2. Click Reconcile, select the existing payment or invoice items, and click Select. If you already registered a payment, match that payment instead of creating another.

    Open receivable items available for matching to the bank transaction
    Open image at full size (new tab)
  3. For a verified bank fee with no invoice counterpart, use Set Account or an approved reconciliation model. Account only for the actual fee.

  4. Review the remaining balance. An underpayment normally leaves part of the invoice open; an overpayment leaves an amount to allocate. Do not mark a short payment fully paid or write off a difference without authorization.

  5. Open the invoice and check the payment status and residual amount. Check that the bank transaction is fully matched when all parts have been allocated.

For example, a €103 debit may settle a €100 bill and a €3 bank fee. A €90 receipt against a €100 invoice normally leaves €10 due. These are different cases even though both involve a difference.

For a wrong match, ask an authorized accountant to remove the incorrect counterpart and rematch it in an open period. Do not delete the imported transaction to hide the error.

If an incoming transaction belongs to a sales order that has not yet been invoiced, set the partner and use the Sales suggestion. See sales orders in bank reconciliation.

See Odoo 19 — Bank reconciliation.