{"id":19942354,"url":"https://github.com/bahlo/ing-ynab","last_synced_at":"2025-08-04T10:40:30.117Z","repository":{"id":45124283,"uuid":"286030985","full_name":"bahlo/ing-ynab","owner":"bahlo","description":"💰 Import your ING Germany bank statements via FinTS into YNAB.","archived":false,"fork":false,"pushed_at":"2025-01-20T15:40:54.000Z","size":833,"stargazers_count":25,"open_issues_count":1,"forks_count":5,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-07T17:47:03.058Z","etag":null,"topics":["fints","ing","python","ynab"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bahlo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"bahlo"}},"created_at":"2020-08-08T11:33:53.000Z","updated_at":"2025-01-20T15:40:55.000Z","dependencies_parsed_at":"2024-11-13T00:13:00.206Z","dependency_job_id":"d12d86f1-802f-4ca4-b28c-d286e84c0f9a","html_url":"https://github.com/bahlo/ing-ynab","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahlo%2Fing-ynab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahlo%2Fing-ynab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahlo%2Fing-ynab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahlo%2Fing-ynab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bahlo","download_url":"https://codeload.github.com/bahlo/ing-ynab/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250402895,"owners_count":21424770,"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":["fints","ing","python","ynab"],"created_at":"2024-11-13T00:12:41.551Z","updated_at":"2025-05-03T15:32:14.761Z","avatar_url":"https://github.com/bahlo.png","language":"Python","funding_links":["https://github.com/sponsors/bahlo"],"categories":[],"sub_categories":[],"readme":"![ing-ynab logo](logo.jpg)\n\n[![ci](https://github.com/bahlo/fints_ynab/workflows/ci/badge.svg)](https://github.com/bahlo/ing-ynab/actions?query=workflow%3Aci)\n[![PyPI](https://img.shields.io/pypi/v/ing-ynab)](https://pypi.org/project/ing-ynab)\n![PyPI - License](https://img.shields.io/pypi/l/ing-ynab)\n\nImport your ING Germany bank statements via FinTS into YNAB.\n\n## Setup\n\nBefore setting this up, you need to\n[register your FinTS product](#how-do-i-register-the-fints-product)\n– it's free and takes only a few days.\n\nSince this application will need your ING pin and YNAB access token it's\nrecommended to run this in your local network (could be a Raspberry Pi, it's\npretty light).\n\nTo start the application you need Python 3.12 or higher as well as\n[pdm](https://pdm-project.org/en/latest/).\n\n```sh\n$ pdm install\n$ pdm run start\n```\n\nAlternatively you can use the Docker image from `ghcr.io/bahlo/ing-ynab:latest`\nor `ghcr.io/bahlo/ing-ynab:3.0.1`.\n\n## Configuration\n\nThe configuration is done via environment variables:\n\n- `FINTS_PRODUCT_ID`: Your FinTS product ID (defaults to python-fints one).\n- `ING_LOGIN`: The login id of your ING account.\n- `ING_IBAN`: The IBAN of the account you want to add.\n- `ING_PIN`: The pin of your ING account (leave empty to be prompted).\n- `YNAB_ACCESS_TOKEN`: Go to your budget settings to create one (leave empty\n  to be prompted).\n- `YNAB_BUDGET_ID`: On the webpage of your budget the first UUID in the path (`https://app.youneedabudget.com/\u003cBUDGET_UUID\u003e/budget/202109`).\n- `YNAB_ACCOUNT_ID`: On the webpage of the bank account the last UUID in the path (`https://app.youneedabudget.com/\u003cBUDGET_UUID\u003e/accounts/\u003cBANK_ACCOUNT_UUID\u003e`).\n- `YNAB_FLAG_COLOR`: If set, use that color for the imported transactions.\n- `DEBUG`: Set to `1` to enable debug output and print transactions instead of\n  importing them.\n\n## Security\n\nYou can pass in your bank pin and YNAB access token via environment variables,\nif you like. This has the drawback that anyone with system access can read\nand potentially use them so it's discouraged (but supported).\n\nThe alternative is not specifying `YNAB_ACCESS_TOKEN` and/or `ING_PIN`, which\nwill cause the application to prompt you on startup. This has the drawback that\nyou need to input them everytime the application restarts.\n\nFor docker you'll need to pass the `-it` flags to be able to input these\nvariables. For docker-compose, add these fields:\n\n```yml\ntty: true\nstdin_open: true\n```\n\nAfter starting with `docker-compose up -d`, run `docker attach $container_id`\nto attach to the container. Note that the prompt for the pin might be hidden,\nso you have to enter the pin directly.\n\n## FAQ\n\n### Why is this ING-only? Isn't FinTS a general protocol?\n\nIt is, but the implementations differ a lot. This actually started out as a\ngeneral-purpose library but I can only really test ING and I rather have a\nspecialised library than a multipurpose one where I can't guarantee\nfunctionality.\n\n### Can you support my bank?\n\nThe [python-fints](https://github.com/raphaelm/python-fints) library supports\na lot of banks, so probably. But we need to work together as I can't test it.\nFeel free to get in touch: \u003chey@arne.me\u003e\n\n### How do I register the FinTS product?\n\n1. Go to the [FinTS product registration](https://www.hbci-zka.de/register/prod_register.htm)\n2. Click `Registrierungsprozess` to get to a PDF form\n3. Fill in your data. If you don't know what else to put, here are some suggestions:\n   - `Firmenbezeichnung`: Your name\n   - `Produktname`: `ing-ynab`\n   - `Produktkategorie`: `Web-Server`\n4. Send the form to the email adress on the last page\n\nAfter a week or two you will get your product id via email.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbahlo%2Fing-ynab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbahlo%2Fing-ynab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbahlo%2Fing-ynab/lists"}