Discover CSV to Beancount
Convert a Discover card export into balanced double-entry Beancount transactions, with the sign flip this format needs already switched on and the purchase date, not the settlement date, mapped.
Column mapping verified against a real Discover export
How to export your Discover transactions
- 1
Log in at discover.com — the transaction download sits behind the login, not in the public help centre.
- 2
Open Recent Activity, or the Statement covering the period you want. Discover keeps up to 24 months of transactions online.
- 3
Use the download option on that screen and choose the spreadsheet (CSV) format.
- 4
Paste the file below with its header line, and leave the sign flip switched on — it is ticked for you because this export needs it.
Discover writes what you owe, so spending arrives as a positive number
A card issuer states the balance you owe rather than what happened to a pot of money, so an 84.23 grocery charge is written 84.23 and a payment as -1502.74 — the opposite orientation to a checking export, and the same one American Express uses. The preset ticks the sign flip for you, which is what turns the charge into a negative posting and the payment into a positive one. Paste the same Discover file into the general converter with that box clear and every transaction comes out backwards, quietly, with nothing failing to warn you. There are also two date columns, and the mapping takes the one on your receipt.
Beancount output
Discover export questions
Should the date come from Trans. Date or Post Date?
Trans. Date, which is what this preset uses: the day you actually spent, matching your receipt and reading sensibly in a ledger. Post Date is when the charge settled, usually a day or two later, and the two differ on plenty of rows. If you reconcile line by line against the printed statement instead, move the Date select one column to the right.
Does this work for a Discover savings or checking account?
This mapping is for the credit card. We could not verify a real export from a Discover Bank deposit account, and publishing column positions nobody has checked against a real file is exactly what this page exists not to do — so paste that file into the general CSV converter and confirm the columns it detects before you trust the output.
What is the Category column for, and can I use it?
It carries Discover's own vocabulary — Merchandise, Supermarkets, Gasoline, Restaurants, Payments and Credits — on every row. The converter ignores it, because which Beancount account a purchase belongs to is a decision only you can make. It is still worth having: sort the file by that column before you convert, and you can retarget whole blocks of transactions in one pass afterwards.
Keep the ledger you just converted
Beancount.io hosts your plain-text ledger, imports future statements for you, and keeps every number auditable.
Start Free→