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.
Citibank provides checking and savings statements and Citi issues personal, business and co-branded credit cards, all in US dollars. The reviewed statements include a Citi Priority checking statement, Citi and CitiBusiness card statements with several cardholders, a Costco Anywhere Visa statement and an older card statement with unreadable fonts.
Full name: Citibank
Countries: 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 Citi statements from 2021 to 2026: a Citi Priority checking statement, Citi and CitiBusiness credit card statements with several cardholders, a Costco Anywhere Visa statement, and an older personal card statement whose PDF fonts cannot be read by text extraction. Citibank checking and Citi credit cards use two unrelated layouts, so the first step is to tell them apart: a checking statement has Amount Subtracted, Amount Added and Balance columns; a card statement has Sale Date, Post Date, Description and Amount.
MM/DD/YY. Card rows carry two dates, MM/DD sale date and MM/DD post date, with no year; the year comes from the billing period in the header, 08/12/25-09/09/25, and a December statement holds both years. Card purchases on checking statements embed a second date and a time in the description, Debit Card Purchase 01/01 01:06p #0613, and that date can belong to the previous year on a January statement.On card statements the negative sign in front of payments and credits is a glyph that text extraction returns as the word minus: minus$5,315.05. A converter that tests for - sees a positive payment; one that reads the amount with a regular expression for digits sees 5,315.05 and drops the sign. Treat the literal text minus before a dollar sign as a negative sign.
An older personal card statement extracts its labels and dates but not a single amount: the embedded fonts for the amount column are in a format the PDF library rejects, and the amounts come back empty even though the page is text, not a scan. The only way to convert such a file is to treat it as a scan and OCR the rendered page. A statement whose extracted text has dates and merchants but no amounts is this case, not an empty statement.
A checking row starts with a transaction type in the main font, ACH Electronic Debit, Debit Card Purchase 01/01 01:06p #0613, Mobile Purchase Sign Based, Bill Payment, Debit PIN Purchase. The merchant detail follows in a smaller font, either on the same line to the right or on a second line below, and card purchases add a third line with the merchant category, Specialty Retail stores, Misc Business Services, Contractors. The type line is the same for hundreds of rows; the payee is on the detail line; the category line is a free hint for categorizing that no other bank prints. A converter must keep the three lines together and take the payee from the second one.
The detail line ends with a state and five digits, CA 22002. The digits are not a ZIP code; they are the year and day of year of the transaction, 22002 being January 2, 2022.
The first page of a Citi Priority or Citigold statement carries Value of Accounts, Earnings Summary and Bank Loans Utilized tables with Last Period and This Period columns, balances and interest, followed by a page of fee explanations and messages. The transactions start on the second or third page under "Checking Activity", with an "Opening Balance" row that has a balance and no amount. None of the first-page figures are transactions.
The Cardholder Summary lists each cardholder with a "Card ending in" number, a spend limit and New Charges. The transaction list then repeats the cardholder name as a heading, Standard Purchases under it, and No Activity for cardholders with nothing to show. Payments, Credits and Adjustments come first, with a post date only. Purchases follow per cardholder, with a sale date and a post date. Assigning rows to a card means tracking the last cardholder heading.
A foreign purchase prints the merchant on one line, the original amount and currency on the next, 17,000.00 COSTA RICAN COLON, and Subject to Foreign Fee with the billed dollar amount on the third. The dollar amount is not on the merchant line, and the foreign amount is large and unsigned. A converter that takes the first number after the merchant as the amount reads 17,000.00 instead of $33.85.
On the Costco Visa layout a long merchant name wraps with part of it printed above the row that holds the dates and part below, so grouping by vertical position alone attaches the first part to the previous transaction.
$0.00 (D) style amounts, and year-to-date totals of fees and interest.+$37.45 style amounts.Continued markers on checking pages.Checking statements have a balance on every row; each subtraction or addition must move the previous balance to the printed one. Card statements have no running balance; use Previous balance minus Payments and Credits plus Purchases plus Fees plus Interest equals New balance, and the New Charges per cardholder against the rows under that cardholder.
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.