This tool securely converts PayPal, Chase Bank, or BNCR CSV history downloads to QIF files, with special optimizations for use with gnucash, as described below.
Gnucash "remembers" types of transactions, to streamline subsequent QIF imports. This allows for example "US Postal Service" transactions to all be automatically assigned to the same expense account at QIF import time. Although this works well for most expense transactions, in the case of income transactions it would cause gnucash's QIF import wizard to offer to create a new income account for each of your customers!
To avoid this, for all PayPal transactions types listed below, the QIF file is adjusted so that the transactions of each of these types is grouped together and will be assigned to the same gnucash account (of your choice). Furthermore, your choice of account will be remembered as the default account for subsequent QIF imports. Most importantly, only one transaction of each type need be assigned (or the default account simply accepted) at QIF import time; all other transactions of the same type will be automatically assigned to the same account.
There may be other PayPal transaction types or common transaction types that need this adjustment. If you notice when using the gnucash QIF import wizard that it is necessary to assign the account for many transactions of the same type, please contact me so I can try to fix it.
This tool will also correctly process a JP Morgan Chase Bank CSV file for import to Gnucash. The filename to upload should contain "jpmc" (not case sensitive).
You can also convert BNCR (Banco Nacional de Costa Rica) CSV files. For this to work, the CSV filename must contain "bncr" (not case sensitive).
Any filename not containing "jpmc" or "bncr" will be taken to be a PayPal CSV file.
Multilingual support for CSV file column headers, and automatic multi-currency support (PayPal only) A separate QIF file is generated for each transaction currency found in the PayPal CSV file. The currency name is now appended to the QIF file name.
Click 'Browse' to choose one or more PayPal CSV file(s). Click 'Submit' to upload the files and download the corresponding QIF files for import into gnucash and other business accounting software.
In this version of the converter, you should be able to edit the csv files prior to converting them to QIF, using MS Excel or OpenOffice Calc
Sales Tax split
For (nearly) any transaction with a non-zero 'Sales Tax' field (see exceptions below), sales is reduced by the tax amount, and a "Sales Tax Payable" split is added for the amount of the tax. This is because sales tax should correctly be treated as a liability, not as an expense (http://blog.accountingcoach.com/sales-tax-liability/.) Therefore, if your transactions may contain sales tax, you should create a "Sales Tax Payable" liability account. When importing your QIF into gnucash, assign any "Sales Tax Payable" amounts to this account. When you make your (monthly?) sales tax payment to the State, the payment should affect the "Sales Tax Payable" account.
Optional Shipping and Handling Split (beta, PayPal only)
If this option is checked, the converter will create a "Shipping and Handling" split, to be applied to a gnucash income account of your choosing.
Notes on refund transactions involving sales tax and shipping and handling
When a sale having shipping and handling or sales tax is refunded, some portion of shipping and handling and/or sales tax may need to be reversed. Since PayPal only provides the full shipping and handling and sales tax amounts, manual adjustment will need to be made if less than 100% of sales tax or shipping and handling should be reversed by a refund transaction.
To make manual adjustment of these reversal splits as easy as possible, the converter gives special names to the splits in the case of refund transactions. They are "Shipping and Handling Income CORRECT ME" and "Sales Tax Payable CORRECT ME".
Upon import of the generated QIF, if all your refund transactions reverse 100% of shipping and handling and 100% of sales tax, you can apply these reversal splits directly to your "real" shipping and handling and sales tax gnucash accounts.
Otherwise, you should at QIF import time allow gnucash to create the temporary CORRECT ME accounts. After completing the import, you will then open each CORRECT ME account and correct the amounts. Of course, you must also change the account to your "real" shipping and handling and sales tax payable accounts.
To further aid in correcting reversal splits contained in refund transactions, a report file is generated listing each refund transaction containing shipping and handling or sales tax.
Criteria for creating the sales tax split and shipping and handling split:
(Thanks to user Brian for pointing out the need for both the sales tax liability split and the shipping and handling income split, and for help in implementation and debugging.)
The maximum file size for csv files is 2.5MB. Maximum files per batch: 4.
This tool has been used 933 times.
Donations help me pay my server expenses in order to provide this service. No PayPal account necessary (you can use your bank card).
If you are unable to donate via PayPal (above), you can send me a donation via bank transfer. Contact me for instructions.
If you have a suggestion or would like to thank me, you can email me
A stand-alone version written in perl is available here. It is a perl command-line program. It can process any number of CSV files, more quickly than this online converter. It can also convert files of any size. (The online converter is limited to files under 2.5MB.) Perl is required and is available for both Windows and Linux. It is generally installed by default in Linux. I cannot help you install perl in Windows, but I suggest http://strawberryperl.com/. More Information