One platform for finance, people, sales, operations, fleet, commerce, and BI.
XOERP
Let's meet

Banking & Reconciliation

Connect bank and cash accounts, import statements, automate classification with bank rules, and reconcile in minutes.

Updated March 4, 2026

Banking keeps the cash side of your ledger accurate. Add your bank, cash, and card accounts, pull in statements, let bank rules classify transactions automatically, and reconcile against your books so every riyal is accounted for — including cheque cycles common in the GCC.

Who this is for: anyone responsible for cash, bank reconciliation, or cheque management.

Before you begin

  • Your bank/cash accounts should exist in the chart of accounts (see General Ledger).
  • Have a recent bank statement ready as CSV/Excel (or a PDF XO can parse).

Add a bank, cash, or card account

  1. Go to XO Books → Banking → Accounts → Add account.
  2. Choose the type: Bank, Cash, or Credit card.
  3. Enter the account name, IBAN, and currency, and link it to the matching ledger account.
  4. Click Save.

Note: for credit cards, set the account as a liability so balances show what you owe.

Import a bank statement

  1. Open the account and click Import statement.
  2. Upload the CSV/Excel file (or a supported PDF).
  3. Map the columns — date, description, debit, credit, balance — and confirm.
  4. XO loads the lines into the reconciliation workspace as unmatched.

📷 Screenshot: column-mapping step during statement import.

Automate with bank rules

Bank rules classify recurring transactions so you don’t code them by hand.

  1. Go to Banking → Bank rules → New rule.
  2. Set conditions — e.g. description contains “STC”, amount range, or which account.
  3. Set the action — post to a target account, set a category, add a cost center/tax.
  4. Save. New imported lines that match are auto-categorized and ready to confirm.

Tip: start with rules for your top 10 recurring payees (rent, utilities, payroll transfers, payment-gateway settlements) — they usually cover most of the volume.

Reconcile

  1. Open Banking → Reconcile for the account.
  2. XO suggests matches between statement lines and existing ledger transactions.
  3. For each line:
    • Match the suggested transaction, or
    • Create a new transaction (XO pre-fills from any bank rule), or
    • Transfer if it moves money between your own accounts.
  4. Watch the difference counter fall to 0.00.
  5. Click Finish reconciliation to lock the period’s bank position.

Note: bank commissions and fees can be split off a single line — use Add line → Bank charge so the fee posts to its expense account while the net matches the statement.

Transfers between accounts

  1. Go to Banking → Transfer.
  2. Choose from and to accounts, amount, and date.
  3. XO posts both sides automatically — no manual journal needed.

Cheque cycle (GCC)

Track post-dated and in-hand cheques end to end.

  1. Enable Banking → Cheques.
  2. Manage cheque books, then record receivable and payable cheques.
  3. Move each cheque through its statuses — issued → deposited → cleared / bounced — and XO posts the matching entries at each step.

Troubleshooting mismatched balances

  • Statement balance ≠ ledger balance. Look for unmatched lines on either side, duplicate imports, or transactions dated outside the statement window.
  • Duplicate import. XO flags likely duplicates on import — discard them before reconciling.
  • A payment account is missing. Confirm the ledger account is linked to the bank account and isn’t archived.

Best practices

  • Reconcile weekly for active accounts, not just at month-end.
  • Keep bank rules tidy — review them quarterly as payees change.
  • Reconcile before locking the accounting period in XO Core.