How to Import Malaysian Bank Statements into Xero (CIMB, Maybank, Public Bank and More)
Direct bank feeds vs statement imports, how to prepare a CSV file Xero accepts, and how to fix the most common import errors.
Bank reconciliation is where Xero saves the most time, but only if your bank transactions get into Xero in the first place. For Malaysian businesses there are two ways to do that.
Option 1: Direct bank feed (best)
A direct bank feed sends your transactions into Xero automatically every business day. Some Malaysian banks offer direct feeds to Xero (for example, RHB launched a fully digital feed in 2025), and availability is expanding.
To check your bank: in Xero, go to Accounting → Bank accounts → Add bank account and search for your bank. If it shows a direct feed, follow the steps to connect. Some banks also require you to authorise the feed in your business banking portal.
Option 2: Import a bank statement file
If your bank doesn't have a direct feed, or you need to bring in older transactions, you can import a statement file. Xero accepts CSV, OFX, QIF and QBO files. Most Malaysian business banking portals let you download transactions as CSV.
Step 1: Download your statement
Log in to your business banking portal and download the transactions for the period you need, in CSV format if available.
Step 2: Prepare the CSV for Xero
Bank CSV files rarely work in Xero straight away. Tidy the file so it has one row per transaction and these columns:
| Column | Required? | Tips |
|---|---|---|
| Date | Yes | Use one consistent format, e.g. DD/MM/YYYY |
| Amount | Yes | Money in as positive, money out as negative. Remove "RM", commas and "DR"/"CR" labels |
| Payee | Recommended | Helps Xero suggest matches and bank rules |
| Description | Recommended | The bank's transaction description |
| Reference | Optional | Cheque number, invoice number or transfer reference |
Also delete header text above the column names, plus any opening balance, closing balance or subtotal rows. Xero would treat them as transactions.
Separate debit and credit columns? Many Malaysian banks export money in and money out as two columns. Either combine them into one signed Amount column, or map them as separate debit and credit columns during import.
Step 3: Import into Xero
- Go to Accounting → Bank accounts and find the bank account the statement belongs to.
- Click Manage account → Import a statement.
- Browse to your file and click Import.
- Match each column in your file to the Xero field (Date, Amount, Payee, Description, Reference) and choose the date format.
- Review the preview, then complete the import.
Step 4: Reconcile
Your transactions now appear in the Reconcile tab. Xero suggests matches with your invoices and bills, and bank rules can code repeat transactions automatically. Check that the statement balance in Xero matches your bank statement.
Common import problems and fixes
| Problem | Likely cause | Fix |
|---|---|---|
| Dates are wrong or rejected | Date format doesn't match what you selected | Make every date DD/MM/YYYY and choose that format when importing |
| Payments show as money received | Amounts have the wrong sign | Make money out negative, then re-import |
| Duplicate transactions | The import overlaps dates already brought in by a bank feed or an earlier import | Delete the duplicate statement lines, and only import dates not already in Xero |
| Odd transactions like "Balance B/F" | Balance or subtotal rows left in the file | Remove them from the CSV before importing |
| Amounts import as zero or fail | Commas, "RM" or "DR/CR" text in the amount | Leave only numbers, a decimal point and a minus sign |
Skip the spreadsheet work: free bank statement converter
Cleaning up bank CSV files every month is tedious. FusionETA clients get our free bank statement converter, which turns statement exports from Malaysian banks into a Xero-ready import file. It currently supports CIMB, Maybank, Public Bank, Hong Leong Bank, AmBank, Alliance Bank, UOB and OCBC.
Tips for smooth bank reconciliation
- Import monthly, so reconciliation never piles up.
- Keep one file per bank account and never mix accounts.
- Set up bank rules for repeat transactions like rent, utilities and bank charges.
- Capture bills and receipts in Xero as they arrive, so imported transactions have something to match.
Menu names and bank feed availability can change. Check Xero's Add bank account screen for the current list of Malaysian banks with direct feeds.