Import a bank statement
Upload your bank statement, tag each line to a ledger, and post all the payment and receipt vouchers in one go.
Bank import reads your bank statement and turns each line into a payment or receipt voucher on your bank ledger. Money going out becomes a payment. Money coming in becomes a receipt.
Before you start
- Create the bank ledger in Chart of Accounts. Put a current or savings account under Cash / Bank. Put a CC or OD account under Bank OD/Cash Credit.
- Enter the bank ledger's opening balance in opening balances. The import does not post the statement's opening balance. If you skip this, your bank ledger will not match the bank.
- Download the statement from your bank as CSV or Excel (.xlsx). A PDF also works if it is downloaded directly from the bank, is not a scanned image, and has no password.
- Create the ledgers you will post to, such as suppliers, customers, bank charges and interest. You can also create them during the import.
Steps
- Open Import & Export > Bank Import.
- In Bank or CC account, pick the bank ledger this statement is for. Click Next.
- Click the upload box and pick your statement file, or drag it onto the box.
- To import only part of the file, fill Skip rows before and Skip rows after. Leave both empty to import the whole file.
- Click Read statement.
- Check the column mapping. Each box shows which column of your file is used for Date, Description / Narration, Debit / Withdrawal, Credit / Deposit, Balance and Reference / Cheque. Change any box that is wrong. Check the First few rows table below.
- Check Opening balance (₹) and Closing balance (₹) against your statement. Correct them if they were read wrongly.
- Click Looks good, continue.
- For each row, pick a ledger in the Ledger column. Rows the app has already recognised come filled in.
- Tick Skip for any row you do not want to post.
- Click Post ... entries. A Confirm post window shows how many receipts and payments will be created, and which rows will not be posted.
- Click Confirm post ... vouchers.
- The All done! screen shows how many rows were posted and skipped. Click View voucher register to see the vouchers, or Import another statement.
Map rows faster
- Rows filled in for you carry a tag: Past mapping (learned from your earlier imports), Party: ... (matched to a customer or supplier), Default rule, or Inter-bank transfer. Check them before posting.
- When you pick a ledger for one row, a message may say it found similar transactions. Click Review & apply, untick any row that does not fit, then click Apply to ... rows.
- Smart Map groups rows with the same kind of narration. Pick one ledger for a whole group. Click Accept all ... suggestions to keep every suggestion at once.
- In Smart Map, click the person icon on a group to create a party from the narration. Choose Supplier (we pay), Customer (we receive) or Other Ledger (bank · cash · expense · loan · income · capital · etc.), type the name, and create it. All rows in that group are mapped to it.
- Click the plus icon next to a row's ledger to open Create new ledger.
- Use the tabs All, To categorize, Match to voucher and Done to work through the rows. Click the ... to map count at the top to see only rows still to map.
- Post ... auto-matched posts only the rows the app filled in for you. The rest stay on screen for you to finish.
When you post, the app remembers which ledger you picked for each kind of narration. Next time these rows come filled in. You can see and edit these in Bank Rules.
Match a row to a voucher you already entered
If you already entered a payment or receipt by hand, match the bank row to it instead of creating a second voucher.
- On the row, click Match.
- The window lists vouchers on this bank with the same amount, dated within 3 days of the bank line, that are not already linked to a bank line.
- Tick one voucher, or tick several whose amounts add up to the bank line.
- Click Match. The row shows Linked to existing voucher. No new voucher is created.
To undo, click Unmatch on the row.
Drafts
- Your work is saved while you map. The top of the screen shows All changes saved. If it shows Couldn't save — your latest changes are local only, click Retry save before posting.
- When you come back to Bank Import, unfinished imports are listed under Saved drafts. Click Resume to carry on, or Delete to throw it away.
- To throw away the import you are working on, click Discard this import.
Rows left unposted
Rows that were skipped or left unmapped are kept. When there are any, a ... pending review button appears at the top of Bank Import. Click it, pick a ledger and post a line, or click Archive to hide a line you do not want to record.
Past imports and void
- On Bank Import, click Past imports.
- The list shows each import's date, bank, file, period, posted and skipped counts, and status.
- Click the eye icon (View lines) to see every line and whether it was posted, skipped or pending.
- To undo a whole import, click the red icon (Void import), then click Void import again to confirm. Every voucher made by that import is cancelled. This cannot be undone.
After you void, you can import the same statement again.
Warnings on the mapping screen
- This exact file has been uploaded before — check Past imports before you go on, or you may post the same entries twice.
- Date range overlaps with ... earlier import(s) — rows already posted from an earlier import show a Duplicate tag and are not posted again.
- Opening balance mismatch — the statement's opening balance is different from your bank ledger's balance on that date. Usually an earlier statement was not imported, the wrong bank was picked, or the ledger has no opening balance yet.
- Reconciliation issues detected — opening balance plus the statement's money in and out does not give the closing balance. Some rows were probably not read. Click the button to show the rows the reader dropped and the balance gaps.
- ... fall in a closed financial year — re-open that year in Financial Years or skip those rows.
- A red tag on a row means the row could not be read properly. Fix it or tick Skip.
Common problems
- Selected ledger is not a bank account. Pick a ledger under Cash/Bank, Bank Accounts, or Bank OD/Cash Credit group. — the ledger picked in step 2 is not a bank ledger. Move it to a bank group in Chart of Accounts.
- This PDF is password-protected — download the statement again without a password, or use "Print to PDF" to save a copy without one.
- File too large (>25 MB) — split the statement month by month, or download it as Excel or CSV.
- Could not parse ... file — the file is in a format the reader does not know. Download it from your bank as CSV or Excel.
- Empty file or No rows to import — the file has no transactions, or every row was outside your Skip rows before / Skip rows after dates.
- Map at least one row to a ledger (or uncheck 'skipped' rows) before posting. — pick a ledger on at least one row.
- A row picked with the same bank ledger is not posted — a bank line cannot be posted against its own bank ledger. Pick the other side, such as the party or the other bank.
- Period ... is locked by reconciliation #... — the date is inside a finalized bank reconciliation. Delete that reconciliation first if you must change the match.
- That voucher is already matched to another bank line — pick a different voucher, or unmatch the other line first.
- This voucher was created from this import — use Delete import to undo, not Unmatch. — void the import from Past imports instead.