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.
HSBC provides statements for personal and business current, savings and credit card accounts in the United Kingdom in pounds and, through HSBC Bank USA, checking and savings accounts in US dollars. The reviewed statements include two HSBC Premier credit card statements and an HSBC Advance current account statement from the UK, and an HSBC Premier checking statement from New York.
Countries: United Kingdom, United States
Supported statement formats: PDF
Supported destinations: QuickBooks Desktop, QuickBooks Online, Quicken, Xero, 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.
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 four HSBC statements from 2020 to 2021: two HSBC Premier credit card statements from the UK, one HSBC Advance current account statement from the UK, and one HSBC Premier checking statement from HSBC Bank USA in New York. HSBC UK and HSBC USA are different banks with different statement systems, so the page says which one each section describes.
DD Mon YY, 29 Mar 21, only on the first transaction of each day, and the period is "29 March to 28 April 2021" at the top of every page. UK credit cards carry two dates per row, "Received By Us" and "Transaction Date", each split into two text elements, 17 Aug and 21, with the statement date 15 September 2021 on every sheet. HSBC USA carries MM/DD/YY, 01/02/20, only on the first row of each day, with the period "01/01/20 TO 01/31/20" in the header.CR suffix glued to the number, 10,043.30CR and 12.99CR. HSBC USA prints additions and subtractions in two columns and puts a dollar sign only on the first balance of each day, $7,201.43 then 7,204.43.The first sheet of a UK credit card statement prints an Account Summary with Credit Limit, Previous Balance, Debits, Credits, New Balance and Minimum payment, but in both reviewed files only the labels and the pound signs are in the text layer; the figures are drawn some other way and do not extract. A converter that reconciles to "New Balance" finds nothing to reconcile to. The per-row amounts extract normally, so the check has to be the sum of the rows against the next statement's opening figures, or against the balance a customer can see on screen.
On the UK current account statement, headings and fixed labels extract letter-spaced: Acco u nt N a m e, S o rt c o de, Pa ym e n ts In, BALAN CE BROU GHT FORWARD, Da t e Pa y m e nt t y p e a nd d e t a ils. The transaction rows are clean. A converter that finds the table by the heading text "Balance brought forward" or "Paid out" does not find it; it has to match with spaces removed, or locate the columns by the position of the first dated row.
On the UK current account, 29 Mar 21 appears once and the ten transactions of that day follow without a date, and the balance, 5,454.20, appears only on the last of them. Between the date and the description there is a payment type column, DD, VIS, ATM, BP, or ))) for a contactless card payment. Each transaction takes two lines, ))) TESCO STORES-6044 then PECKHAM with the amount on the second line. A converter that reads the amount from the line with the description gets nothing; one that treats ))) as part of the payee has a payee that starts with three brackets; and one that requires a date on every row keeps one transaction per day.
A UK credit card row starts 17 Aug 21 16 Aug 21: the day and month of the date received by HSBC, its two-digit year as a separate element, then the same for the transaction date. A converter that reads the first three elements as one date gets 17 Aug 21 16. The ))) contactless marker appears in the details column too, ))) MAUROS IN THE PARK, and the merchant's town and a three-letter area code, LONDON LND, follow as separate elements.
The HSBC Bank USA statement prints the date on the first row of a day only, and on debit rows the amount element comes before the description in reading order, 407.87 then PAYMENT TO JPMORGAN CHASE-EXT TRNSFR, because the subtraction column is to the right but was written first. Descriptions wrap, CASH WITHDRAWAL ON 01032020 AT *BROADWAY & 83RD STREE then *BROADWAY & 83RD, and carry the transaction date inside them as 01032020 while the row date is the posting date. Checks appear as Check #840 with the amount only, and the $ sign on the balance marks the first row of each day, which is the one place the date is printed.
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.