Import a Cash App CSV into Xero

In short: Cash App exports one CSV of all activity, newest first, with separate Amount, Fee and Net Amount columns, a Status on every row, and dates that carry a time zone. Xero's statement import uses its own CSV template: a Date and a signed Amount on every line, plus Payee, Description, Reference and a cheque number column. Money out is negative. Drop the file below. It is converted on your device and never uploaded.

Convert your file

Cash App to Xero (CSV)

cash_app_report_<number>.csv

Your file stays on this device

It is read and converted by this page, inside your browser. Nothing from the file is uploaded, and the converter keeps working offline once the page has loaded.

One email when it ships. The address is used for nothing else. Details.

1. Export the file from Cash App

  1. Sign in at cash.app/account on a computer.
  2. Open Activity (or Statements).
  3. Click Export CSV.
  4. Upload the downloaded cash_app_report file here.

Why a raw Cash App export fails in Xero

Xero would import failed and $0 notification rows as real statement lines, and dates such as "2024-09-26 16:18:23 EDT" are not a plain date.

Xero imports the CSV line by line, so title rows above the table, balance rows, currency symbols in the amount, or separate gross, fee and net columns end up rejected or imported as the wrong amount.

What is unusual about the Cash App file

  • Two column orders exist: older files start with Transaction ID, newer files (late 2024 on) start with Date.
  • Dates include a time zone abbreviation, for example "2024-09-26 16:18:23 EDT".
  • Amounts look like "$10.00" and "-$5.00"; older files drop zero cents ("$2").
  • Fees are negative and Net Amount is Amount plus Fee.
  • Rows are newest first. Failed rows and $0 notification rows are left out.
  • Transaction ID is often blank for newer files.

What Xero requires

  • Header matches Xero's template: *Date, *Amount, Payee, Description, Reference, Check Number.
  • One signed amount column: money out negative, decimal point, no symbols.
  • Up to 100,000 rows per file.

2. Before and after

Before: the Cash App CSV as downloaded

"Date","Transaction ID","Transaction Type","Currency","Amount","Fee","Net Amount","Asset Type","Asset Price","Asset Amount","Status","Notes","Name ...
"2026-01-24 20:39:52 EST","","Account Notifications","USD","$0.00","","$0.00","","","","COMPLETE","New device login","","Cash Balance"
"2026-01-23 11:02:10 EST","#D-824TESTAB","P2P","USD","-$5.00","$0.00","-$5.00","","","","COMPLETE","$5 Payment To Jamie Fakename","Jamie Fakename",...
"2026-01-22 09:30:00 EST","306150405514408","Withdrawal","USD","-$150.00","$0.00","-$150.00","","","","COMPLETE","Cash Out","","SAMPLE BANK"
"2026-01-20 14:15:45 EST","","Bitcoin Buy","USD","-$4.90","-$0.10","-$5.00","BTC","$63,371.65","0.00007732","COMPLETE","","","Cash Balance"
"2026-01-18 08:00:00 EST","","Deposits","USD","$200.00","$0.00","$200.00","","","","COMPLETE","Add Cash","","Visa debit 3333"
"2026-01-15 17:45:12 EST","#D-123TESTCD","P2P","USD","$1,250.00","$0.00","$1,250.00","","","","COMPLETE","$1,250 Payment From Taylor Example","Tayl...
"2026-01-15 17:45:12 EST","","P2P","USD","$20.00","$0.00","$20.00","","","","FAILED","$20 Payment From Taylor Example","Taylor Example","Cash Balance"
"2026-01-10 12:00:00 EST","","Bitcoin Sell","USD","$10.00","-$0.20","$9.80","BTC","$61,000.00","0.00016393","COMPLETE","","","Cash Balance"

After: what Xero receives

After: cashapp-2026-01-10-to-2026-01-23-xero.csv
*Date*AmountPayeeDescriptionReferenceCheck Number
01/10/202610.00Bitcoin Sell
01/10/2026-0.20FeeFee: Bitcoin Sell
01/15/20261250.00Taylor ExampleTaylor Example - $1,250 Payment From Taylor Example#D-123TESTCD
01/18/2026200.00Add Cash
01/20/2026-4.90Bitcoin Buy
01/20/2026-0.10FeeFee: Bitcoin Buy

Synthetic sample data that follows the real export layout, not a real account. The "after" output was produced from it by the same converter this page runs.

3. Import the converted file into Xero

  1. In Xero open Accounting > Bank accounts and choose the account.
  2. Click Manage account > Import a statement.
  3. Choose this CSV and click Import.
  4. Check the column mapping (Date, Amount, Payee, Description, Reference) and confirm the date format if asked.

Questions

Are Bitcoin and stock purchases income or expenses?
Neither. Buying Bitcoin or stock moves money from your Cash App balance into an investment, and selling moves it back. In your books these are transfers to an investment account, and gains or losses are a tax question for whoever prepares your return.
Which date format does Xero need?
Xero lists both month-first and day-first dates as accepted and asks you to confirm the format when it is unclear. Choose United States for MM/DD/YYYY or Elsewhere for DD/MM/YYYY, and confirm the same format in Xero if it asks.
What happens to failed payments?
Failed rows and $0 notification rows are listed in the export but never moved money, so the converter leaves them out and counts them as skipped rows.
Can I import more than one month at once?
Yes. Xero imports the whole statement file you give it. Keep each file to one bank account in Xero, and avoid overlapping a period you already imported so you do not have to delete duplicate statement lines.

Other ways to convert Cash App

Other exports to Xero (CSV)

Common import problems