1. Export the file from Etsy
- Best for your books: Shop Manager > Finances > Monthly statements > View all monthly statements.
- Pick the year and month and click Generate CSV; Etsy emails you when it is ready.
- Click Download Now in the email, then Download CSV.
- Sold Orders and Deposits CSVs: Shop Manager > Settings > Options > Download Data, choose the CSV type, month and year.
Why a raw Etsy export fails in Xero
Xero would import every fee and tax row as a statement line in your bank account, which only ever received the deposits. Etsy also shows the sales tax it collects for the state, which is not your income.
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 Etsy file
- The monthly statement has a byte-order mark, currency symbols in amounts ("-€0.19") and "--" for empty values.
- Dates are written out ("January 30, 2025" or "16 January, 2024" depending on your locale).
- Deposit rows have no amount in the amount columns; the amount is only in the title ("$120.00 sent to your bank account").
- Buyer-paid sales tax is included in the sale and removed again by a separate Tax row, because Etsy pays it to the state.
- Sold Orders has two-digit years (10/04/25) and no listing, transaction or ad fees.
- Etsy does not link deposits to the sales they pay out, so journal entries are grouped by month.
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 Etsy monthly statement CSV as downloaded
Date,Type,Title,Info,Currency,Amount,"Fees & Taxes",Net,"Tax Details" "March 31, 2025",Deposit,"$1,208.35 sent to your bank account",,USD,--,--,--,-- "March 28, 2025",Marketing,"Etsy Ads","Bill for click-throughs to your shop on Mar 27, 2025",USD,--,-$0.86,-$0.86,-- "March 20, 2025",Refund,"Refund to buyer for Order #3600000002",,USD,-$17.37,--,-$17.37,-- "March 20, 2025",Fee,"Credit for processing fee","Order #3600000002",USD,--,$0.89,$0.89,-- "March 20, 2025",Tax,"Refund to buyer for sales tax","Order #3600000002",USD,--,$1.30,$1.30,-- "March 9, 2025",Fee,"Listing fee ($0.20 USD)","Listing #1500000001",USD,--,-$0.20,-$0.20,-- "March 8, 2025",Fee,"Transaction fee: Shipping","Order #3600000001",USD,--,-$0.31,-$0.31,-- "March 8, 2025",Fee,"Transaction fee: Hand-thrown mug, ""speckled"" glaze...","Order #3600000001",USD,--,-$2.73,-$2.73,--
After: what Xero receives
| *Date | *Amount | Payee | Description | Reference | Check Number |
|---|---|---|---|---|---|
| 03/08/2025 | 1250.00 | Payment for Order #3600000001 | |||
| 03/08/2025 | -1.62 | Processing fee (Order #3600000001) | |||
| 03/08/2025 | -3.36 | Sales tax paid by buyer (Order #3600000001) | |||
| 03/08/2025 | -2.73 | Transaction fee: Hand-thrown mug, "speckled" glaze... (Order #3600000001) | |||
| 03/08/2025 | -0.31 | Transaction fee: Shipping (Order #3600000001) | |||
| 03/09/2025 | -0.20 | Listing fee ($0.20 USD) (Listing #1500000001) |
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
- In Xero open Accounting > Bank accounts and choose the account.
- Click Manage account > Import a statement.
- Choose this CSV and click Import.
- Check the column mapping (Date, Amount, Payee, Description, Reference) and confirm the date format if asked.
Questions
- Is the sales tax in my Etsy statement my income?
- Where Etsy collects and pays sales tax to the state itself, the statement adds that tax to the sale and removes it again with a separate Tax row, so it nets to zero in the converted file. Check with your tax preparer how to treat any tax you collect yourself.
- 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.
- Why does my Etsy deposit not match my sales?
- Etsy deducts listing fees, transaction fees, payment processing fees, shipping labels and ads from your balance before it deposits. The journal entry lists each kind of fee, so the difference between sales and deposits is accounted for.
- 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 Etsy
Other exports to Xero (CSV)
- Import a Venmo statement CSV into Xero
- Import a Cash App CSV into Xero
- Import a PayPal activity CSV into Xero
- Import a Stripe balance report CSV into Xero
- Import a Airbnb earnings CSV into Xero
- Import a Gumroad payout CSV into Xero
- Import a Square transactions CSV into Xero
- Import a Shopify Payments transactions CSV into Xero
- Amazon settlement report to Xero
- eBay transaction report to Xero
- Import a Wise statement CSV into Xero
- Import an MT940 statement into Xero
- Import a camt.053 statement into Xero