Check for a direct export
Check online banking first for a direct Xero export covering the required account and period. If it is not available, use the statement.
Absa provides statements for personal and business cheque, savings and credit card accounts in South African rand, with card statements issued in English or Afrikaans. The reviewed statements include a Classic Business Account, a Growing Business Account and an Afrikaans credit card statement from 2026.
Countries: South Africa
Supported statement formats: PDF
Supported destinations: QuickBooks Online, Xero, Sage Pastel, CSV/Excel
Check online banking first for a direct Xero export covering the required account and period. If it is not available, use the statement.
For a short statement, type the date, memo, and amount into the destination. Reconcile the result to the closing balance.
Open the PDF statement, review the extracted transactions, choose Xero, and save the converted file on your computer.
Credit card statements have their own Statements tab with a file format choice. eStatements also arrive by email as a password-protected PDF; the cover email says which password to use, and the file must be unlocked before a converter can read it.
Steps follow the bank's own help pages. Menu names change from time to time; if they differ, follow the bank's page.
Choose the posted transaction date, supply a missing year from the statement period, and check statements that cross January.
Remove currency symbols from numeric cells, preserve the decimal separator, and verify debit and credit signs against the running balance.
Keep the payee or customer reference that helps identify the transaction, while avoiding repeated headers and unrelated reference numbers.
The following details were checked against Absa statements from 2026: two business cheque account statements, a Classic Business Account and a Growing Business Account, and one credit card statement issued in Afrikaans. All are South African rand. Absa prints its cheque statements in English and its card statements in the language the customer chose, so the same converter has to read "Cheque account statement" and "Kredietkaartstaat" as the same kind of page.
D/MM/YYYY with no zero padding on the day, 1/02/2026 and 12/02/2026, and the period is printed as "31 Jan 2026 to 28 Feb 2026" under the title. Card rows carry two dates, transaction and processing, as two separate elements each, 5 and Feb then 7 and Feb, with the year only in the period line "4 Feb 2026 tot 4 Mar 2026 (29 dae)". Some cheque rows add (Effective 31/05/2026) on a line below when the effective date differs from the posting date.92 387,26 and 213 288,06- with a trailing minus, while the transaction rows use a point, 92 387.26 and 13 484.40. Card statements use a comma throughout, 9 546,56, and mark credits with a Kt suffix, 36 000,00 Kt, sometimes glued to the number, 5 799,39Kt. Cheque rows are unsigned; the column decides the sign.4550-1900-5301-3038.Absa cheque statements have four amount columns: Charge, Debit Amount, Credit Amount and Balance. The Charge column shows the fee that a transaction will attract, 10.00 next to a Digital Payment Dt row or 1.25 next to a Proof Of Pmt Email row, followed by a one-letter code, T, A or *. That fee is not taken from the account on that row; the balance moves only by the Debit or Credit amount, and the charges are collected later as Monthly Acc Fee, Transaction Charge and Admin Charge rows on the first of the month, which do sit in the Debit column. A converter that adds the Charge column to the debit doubles every fee and the running balance stops matching. A row with a Charge and no Debit or Credit, such as Archive Stmt Enq 14.00 A, is a fee notice with no money movement and should not become a transaction.
The dated row holds the transaction type and the channel, Digital Payment Dt and Settlement, or Acb Credit and Settlement. The payee or payer is on the next line, indented, Absa Bank Merch Order, Yoco Qjfxv 310126, Outsurance Ot93196730 958474. Card purchases add Card No. 9659 Volpes Weskus Mall Vre Vrede on the second line and sometimes (Effective 31/05/2026) on a third. A converter that keeps only the first line calls every payment Digital Payment Dt; one that joins the lines gets a usable payee, and the effective-date line has to be dropped or moved to a memo, not read as a new row.
The Account Summary at the top of a cheque statement prints Sundry Debits 213 288,06- with a comma and a trailing minus, and the transactions below print 213 288.06 style amounts with a point. A converter set to South African comma decimals reads the transaction rows as thousands; one set to point decimals reads the summary wrong. The summary is the check for the parse, so both formats have to be read, each in its own section. Card statements are consistent, comma decimals throughout, but add the Kt suffix for credits and sometimes glue it to the number.
The card statement was issued in Afrikaans: "Kredietkaartstaat vir die periode", "Saldo van vorige staat" for the opening balance, "Transaksies", "Oorplasing na kontrolerekening", "Betalings/krediete", "Bankkostes" and "Rente bereken" as section headings, "Tran datum" and "Verwerk datum" as the date columns, "Bedrag R" as the amount, and "(Subtotaal)" under each section. Merchant names stay as the merchant printed them. A converter that looks for English headings finds no transactions. Column positions and row shapes are the same as the English version, so a converter that finds the table by the two date columns and the amount column works on both, and the section subtotals give the checks: purchases, transfers, payments, fees and interest each add up separately.
A card purchase in another currency prints a second line, Geldeenheid USD Buitelandse bedrag 9,00, under the row. The rand amount is on the dated row; the foreign amount is not a transaction. Two-letter country codes, ZA, US, IE, sit in their own column after the merchant city, and a converter that joins everything after the reference number gets a payee that ends in a country code.
The "Bankkostes" section lists each fee with its VAT portion and its total, Internasionale transaksiefooi 4,15 31,79, and the Account Summary on page one repeats the total as "Bankkoste 113,79". The fee rows are real transactions and belong in the export; the summary line does not. A converter that reads the two-column fee rows has to take the total, not the VAT figure.
Every card row carries a 23-digit reference, 74548586035122520035208, in its own column between the dates and the merchant. On cheque statements the reference is shorter and lives on the payee line, Yoco Qjfxv 310126, where the last six digits are the date the merchant batched the sales. Neither is an amount, but both are long strings of digits that a loose amount pattern can catch.
Compare the converted transaction count and totals with the statement, then confirm that the calculated final balance equals the printed closing balance.
Yes. If the PDF statement is readable, its age does not prevent conversion. Confirm the year when transaction rows omit it.
No. Convert posted transactions that contribute to the statement balance. Pending or future-dated items should not be mixed into that reconciliation.
Use the destination-specific settings below, then review the file before import. The destination may require particular columns, dates, account identifiers, or sign rules.
A bank PDF can contain searchable text, scanned page images, or a mixture of both. Searchable text still needs layout analysis because transaction descriptions wrap, columns move, and headers or balances repeat at page breaks. A scanned statement adds OCR uncertainty.
A transaction may begin at the bottom of one page and continue on the next. Continuation pages can omit column headings, repeat an opening balance, or insert footer text and legal pages between transaction pages. A conversion should join split rows and exclude repeated page furniture before it writes the output.
On scanned pages, OCR can turn 0 into O, 1 into l, or 5 into S. It can also lose a minus sign or decimal mark, read two columns in the wrong order, or struggle with skewed and faint pages. The running balance is the best check: a damaged amount or missing row breaks the balance sequence.
Yes. Review the OCR result and reconcile every balance movement. Scans with faint printing, rotation, or handwritten marks need more checking than searchable PDFs.
PDF text stores page positions rather than a spreadsheet table. Wrapped descriptions, repeated headers, and visually aligned columns can paste in the wrong order or into the wrong cells.
Try selecting a transaction description in a PDF reader. If individual words can be selected, the page probably contains text. If the whole page behaves like one picture, it requires OCR.
Xero imports bank transactions through Accounting, Bank accounts, Import a Statement (also reached as Manage Account, Import a Statement). The file goes into the bank account's reconcile list, where Xero matches each line to invoices, bills and bank rules, or creates a spend or receive money transaction.
.ofx. If a QBO, QFX or OFX file downloaded from a bank is rejected, the file usually has a header, encoding or date format Xero does not accept; converting it to a plain OFX fixes that.Settings that matter:
OFX. It carries the payee, description, reference and check number in separate fields and gives Xero a transaction ID for duplicate checks. CSV is fine when the file was written for Xero with the right column names; a bank's own CSV usually needs mapping and cleanup.
Most often the file has a header Xero does not read, non-UTF-8 text, dates in a format it does not accept, or a missing transaction ID. Convert the file to plain OFX and import that. Renaming QBO or QFX to .ofx helps only when the content is already clean.
Xero skips lines whose transaction ID it already has, and for CSV it skips lines it reads as duplicates by date, amount and description. Two genuine identical lines on the same day can be dropped from a CSV. Use OFX with unique IDs for those.
The date order was misread. A file with 03/04/2026 can be read as 3 April or 4 March. Set the order on the import screen, or export dates as YYYY-MM-DD, which Xero reads without asking.
Open the bank account, go to the statement lines or Bank Statements tab, select the imported statement and delete it. The lines disappear from reconcile and the file can be imported again.
Yes. There is no date limit on file imports. Import periods in order and do not overlap them, so the balance in Xero follows the statements.
No. The statement balance in Xero is computed from the imported lines. Compare it to the printed closing balance after each import. If they differ, a line is missing, doubled, or has the wrong sign.