{"id":27334937,"url":"https://github.com/dmuth/export-amex-to-ynab","last_synced_at":"2025-04-12T14:46:41.729Z","repository":{"id":46276874,"uuid":"194187339","full_name":"dmuth/export-amex-to-ynab","owner":"dmuth","description":"Convert American Express CSV files to the format for You Need A Budget (YNAB)","archived":false,"fork":false,"pushed_at":"2021-11-02T21:14:27.000Z","size":147,"stargazers_count":0,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-05-02T06:07:30.793Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dmuth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-06-28T01:42:44.000Z","updated_at":"2021-10-28T21:55:31.000Z","dependencies_parsed_at":"2022-09-05T22:40:08.242Z","dependency_job_id":null,"html_url":"https://github.com/dmuth/export-amex-to-ynab","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmuth%2Fexport-amex-to-ynab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmuth%2Fexport-amex-to-ynab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmuth%2Fexport-amex-to-ynab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmuth%2Fexport-amex-to-ynab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dmuth","download_url":"https://codeload.github.com/dmuth/export-amex-to-ynab/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248585248,"owners_count":21128974,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-12T14:46:41.118Z","updated_at":"2025-04-12T14:46:41.722Z","avatar_url":"https://github.com/dmuth.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Convert American Express CSVs to YNAB\n\nFor my personal finance, I use an app called \u003ca href=\"https://ynab.com/referral/?ref=PreCBGSWL1digXGL\u0026utm_source=customer_referral\"\u003eYou Need A Budget\u003c/a\u003e, or YNAB.\nIt works pretty well for my needs, but seems to regularly have problems importing \ntransactions from my American Express card.  In a fit of frustration, I built a \nlittle app to conver the AmEx CSV format to the format that YNAB needs, and thought \nI would share it here.\n\n\n## Downloading CSV data from Amex\n\n- Log into Amex\n- Click on \"Statements and Activity\"\n- Click on \"Recent Transactiosn\"\n- Click the download button second from the right\n- Choose CSV and do NOT check the checkbox\n- Transactions will now be downloaded\n\n\n## Usage\n\n`./convert-amex-to-ynab.py ./sample.csv`\n\nOr, to run the script without cloning this repo:\n\n`curl -s https://raw.githubusercontent.com/dmuth/export-amex-to-ynab/master/convert-amex-to-ynab.py | python3 - ./sample.csv \u003e ynab.csv`\n\nEither invocation will read a CSV file that you downloaded form AmEx and write to stdout\na CSV file that YNAB can understand.\n\n\n## Uploading converted CSV data to YNAB\n\n- Run the script as detailed above and put the output into a file called `ynab.csv` or similar.\n- Log into YNAB in your web browser and go into \"All Accounts\"\n- Click \"Import\" and click \"Choose File\"\n- Choose the account to import to and click the \"Import\" button.\n- The transactions will be uploaded and you should now see them in YNAB.\n\n\u003cimg src=\"./img/ynab-1.png\" width=\"400\" alt=\"\" /\u003e\n\u003cimg src=\"./img/ynab-2.png\" width=\"400\" alt=\"\" /\u003e\n\u003cimg src=\"./img/ynab-3.png\" width=\"400\" alt=\"\" /\u003e\n\u003cimg src=\"./img/ynab-4.png\" width=\"400\" alt=\"\" /\u003e\n\u003cimg src=\"./img/ynab-5.png\" width=\"400\" alt=\"\" /\u003e\n\n\n## Bugs\n\n- Sometimes YNAB has difficulty parsing transaction dates, but it will ask you to confirm\n- Sometimes YNAB doesn't correctly de-dup transactions.  In that case, just sort by date, look for duplicate numbers, and delete one.\n\n\n\n## Resources\n\n- \u003ca href=\"https://docs.youneedabudget.com/article/921-formatting-csv-file\"\u003eYNAB documentation on importing CSV files\u003c/a\u003e\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmuth%2Fexport-amex-to-ynab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdmuth%2Fexport-amex-to-ynab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmuth%2Fexport-amex-to-ynab/lists"}