Convert Capitec PDF bank statement to Xero

Capitec Bank provides statements for personal and business Global One transaction and savings accounts in South African rand. The reviewed document is a Flexible Savings Account statement produced by the Capitec app as a stamped tax invoice.

Full name: Capitec Bank
Countries: South Africa
Supported statement formats: PDF
Supported destinations: QuickBooks Online, Xero, Sage Pastel, CSV/Excel

Statement formats provided by Capitec

Three ways to get your Capitec statement into Xero

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.

Enter transactions manually

For a short statement, type the date, memo, and amount into the destination. Reconcile the result to the closing balance.

Convert with ProperConvert

Open the PDF statement, review the extracted transactions, choose Xero, and save the converted file on your computer.

How to download a Capitec statement

In the Capitec app

  1. Sign in and tap the account.
  2. Tap the three dots, then tap Statement.
  3. Choose the date range you need.
  4. Tap Share PDF Statement and save it to your phone, or send it to yourself by email.

The app produces a stamped PDF with a SkyQR code, which is the file the converter reads. Pick date ranges that do not overlap when you export more than one statement.

What to check on every bank-statement conversion

Date

Choose the posted transaction date, supply a missing year from the statement period, and check statements that cross January.

Amount

Remove currency symbols from numeric cells, preserve the decimal separator, and verify debit and credit signs against the running balance.

Memo

Keep the payee or customer reference that helps identify the transaction, while avoiding repeated headers and unrelated reference numbers.

Capitec PDF statement details

The following details were checked against a Capitec Global One Flexible Savings Account statement issued from the Capitec app as a stamped tax invoice. Capitec prints transaction, savings and credit facility statements from the same system, so the layout should carry over, but check the converted file against the printed balances for any account type not listed here.

Settings for a Capitec PDF statement

Every fee is its own transaction

Capitec posts a separate row for every fee: Debit Order Fee -3.50 after each debit order, Payment Fee -1.00 or -2.00 after each app payment, Immediate Payment Fee (RTC) -7.50 after each real-time payment, and SMS Payment Notification Fee -0.30 at the end of the day. The balance moves by the fee amount on each of those rows, so they are real transactions and must stay in the converted file. A short statement can have almost as many fee rows as payment rows. This is the opposite of a Nedbank month-end statement, which lists fees in a side column and collects them once a month, so a rule written for one bank cannot be reused for the other.

If you want fees out of the way in the accounting app, do it with a rule or a category after import rather than by deleting the rows, or the bank balance will never match.

Descriptions wrap and carry a type word

Long descriptions wrap onto a second line. Eft Debit Order (1302918877): Oak Legacy (240011983 continues as NETC) on the line below, and the second line has no date and no amount. The first line also contains the full amount and balance, so a converter that reads only one line per date creates a correct amount with a cut-off memo, while a converter that treats every line as a row creates an empty transaction from NETC).

Incoming payments add two more pieces. The row Payment Received: Fernwood Ent. has the word Payment or Transfer further to the right, between the description and Money In (R), and a ten-digit reference such as 1365208469 on the next line. The type word is not part of the payee name, and the reference belongs to the row above it. The expected result for that row is one transaction, dated 01/11/2023, for 6 050.00, with Payment Received: Fernwood Ent. 1365208469 as the memo.

Space as a thousands separator

6 050.00, -2 265.40 and -10 000.00 are single amounts, but a text extractor can hand them over as two pieces, -10 and 000.00. If the converter keeps the last piece, the payment becomes 0.00 and the sign is lost with the first piece. Join the pieces into one number before checking the sign and the balance. A balance check catches this at once: -10 000.00 moves 24 255.42 to 14 255.42, and nothing else does.

The stamp overlaps the header

The statement carries a branch stamp over the header area with the print date, a branch number and a device number. The stamp text is extracted in pieces: Ca pitec Bank, 06/ 11/2023, 0010, Branch : 47 and Device: 9003 on page 1, and Capitec B ank, 06/ 11/ 2023, Branch: 4 70010 and Device: 9 003 on the last page. The pieces sit at different heights and can land inside the header row or next to the From Date and To Date lines.

A converter must not read 06/ 11/2023 as a transaction date or 0010 and 9003 as amounts or check numbers. The stamp is on every statement produced by the app, so this is the normal case rather than an exception.

Headers, dates and totals that are not transactions

The header lists From Date, To Date and Print Date, and the Transaction Date column heading itself wraps as Transaction over Date. The table ends with a line that says only End. The second page holds Transactions not yet processed on your account up to 05/11/2023, Cheques not yet processed, two VAT notes with the dates 1 April 2018, and Available Balance: 10672.17.

None of these are transactions. The Available Balance is not the closing balance either: on the reviewed statement the last running balance was 13 240.12 and the available balance 10672.17, the difference being holds not yet posted. Reconcile the converted file to the last running balance, not to the Available Balance.

Short statements with many small rows

The app lets the customer pick any date range, so a statement can be five days long with thirty rows, most of them fees under R10. When importing a series of short statements into QuickBooks, Xero or Quicken, overlapping date ranges create duplicates that are hard to see because the fee rows look alike: three Debit Order Fee -3.50 rows on the same day are normal. Export date ranges that do not overlap, or use the converter's date filter to trim the file to the new days only.

Frequently asked questions

How do I check that every transaction was converted?

Compare the converted transaction count and totals with the statement, then confirm that the calculated final balance equals the printed closing balance.

Can I convert an older Capitec statement?

Yes. If the PDF statement is readable, its age does not prevent conversion. Confirm the year when transaction rows omit it.

Should pending transactions be included?

No. Convert posted transactions that contribute to the statement balance. Pending or future-dated items should not be mixed into that reconciliation.

Can the result be imported directly into Xero?

Use the destination-specific settings below, then review the file before import. The destination may require particular columns, dates, account identifiers, or sign rules.

PDF input challenges

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.

Page breaks

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.

OCR

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.

PDF questions

Can I convert a scanned bank statement?

Yes. Review the OCR result and reconcile every balance movement. Scans with faint printing, rotation, or handwritten marks need more checking than searchable PDFs.

Why does copying and pasting a PDF into Excel fail?

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.

How do I know whether the PDF contains searchable text?

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 import settings

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.

Settings that matter:

Xero questions

Should I import OFX or CSV into Xero?

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.

Xero says my OFX, QFX or QBO file is invalid. What is wrong?

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.

Why did Xero import only some of the transactions?

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.

Why are the dates wrong after a CSV import?

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.

How do I undo an import?

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.

Can I import older periods into Xero?

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.

Does Xero read the opening balance from the file?

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.

Read more