Fork me on GitHub
Choose a PayPal CSV file to fix.

What is this?

When you download your transaction history from PayPal, the CSV you get is broken and completely inappropriate for use in accounting software. This site will process your CSV and give you a repaired chronological account history in each currency.

Specifically, the following issues are repaired:

  • Timezone abbreviations are not unique, and therefore cannot be properly parsed. For example, Europe/London should be specified rather than BST.
  • Dates are in local format, rather than ISO 8601. 01/02/2016 could either be the 1st of February (UK) or the 2nd of January (US).
  • Fees are added in the same record as the payment itself, which is inconvenient for accountancy purposes.
  • If a PayPal fee is paid on a foreign currency payment, the fee is not also reflected in the currency conversion.
  • Transactions are not in natural chronological order when a currency conversion takes place.
  • All currencies are munged into one report.
  • When a currency transaction takes place, the 'description' field is often non-useful, such as "To US Dollar".
  • Commas in numeric values causes issues with internationalisation, and therefore parsing.
  • Spaces at the front of field names breaks RFC 4180.
  • Commas at the end of each line results in blank fields.
FAQ

Q: Is this safe/secure?
A: Yes. All processing is done in your browser. No data is transmitted.

Q: How do I download my history CSV file from PayPal?
A: Log in to your PayPal account. At the top of the page, choose "Activity". On the right hand side of the page, choose "Download". Choose "Custom Date Range". Choose the dates you wish to download the history for. Under "File types for download", choose "Comma Delimited - Balance Affecting Payments". Then, hit "Download History"

Q: Who created this?

A: This site was created by Thomas Mettam for CasperTech Ltd. If you like it, you can

Q: What is this site written in?
A: JavaScript with Angular 1.

Q: Can I see the code?
A: Sure.

Q: Can I use this code on my own site, or in my own project?
A: This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.
A: We use data from timezonedb.com. You can view the data here. It's licensed under the Creative Commons Attribution 3.0 License.

Reading file..

Found {{data.length}} records.

Because certain aspects of PayPal's CSV export are ambiguous, please fill in the blanks:

What region does timezone {{tz.timezone}} represent?

What format are the dates in? (We've tried to auto-detect)

All done!

Records processed {{data.length}}
Balances corrected {{fixedBalance}}
Descriptions corrected {{fixedDescription}}
Fee entries added {{fixedFee}}
Download