{"id":13684315,"url":"https://github.com/guitmz/n26","last_synced_at":"2025-04-09T23:18:01.271Z","repository":{"id":41322201,"uuid":"91968425","full_name":"guitmz/n26","owner":"guitmz","description":"API and CLI to get information of your N26 account","archived":false,"fork":false,"pushed_at":"2024-03-13T22:28:57.000Z","size":17337,"stargazers_count":186,"open_issues_count":7,"forks_count":21,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-09T23:17:56.378Z","etag":null,"topics":["api","bank","banking","cli","command-line-tool","go","golang","n26","number26"],"latest_commit_sha":null,"homepage":"","language":"Go","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/guitmz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2017-05-21T15:43:16.000Z","updated_at":"2025-03-24T22:05:51.000Z","dependencies_parsed_at":"2024-06-18T22:56:42.026Z","dependency_job_id":"1510ec20-e884-4d7f-81b9-bf9e6706311e","html_url":"https://github.com/guitmz/n26","commit_stats":null,"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guitmz%2Fn26","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guitmz%2Fn26/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guitmz%2Fn26/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guitmz%2Fn26/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guitmz","download_url":"https://codeload.github.com/guitmz/n26/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248125593,"owners_count":21051771,"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":["api","bank","banking","cli","command-line-tool","go","golang","n26","number26"],"created_at":"2024-08-02T14:00:32.158Z","updated_at":"2025-04-09T23:18:01.233Z","avatar_url":"https://github.com/guitmz.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"[![Go Report Card](https://goreportcard.com/badge/github.com/guitmz/n26)](https://goreportcard.com/report/github.com/guitmz/n26) [![](https://images.microbadger.com/badges/image/guitmz/n26.svg)](https://microbadger.com/images/guitmz/n26 \"Get your own image badge on microbadger.com\")\n\n# n26\nGo API and CLI to get information of your N26 account\n\n# Installation\n- macOS: Available via Homebrew. Just run `brew install guitmz/tools/n26`\n- Linux: You can manually build this project or download a binary release.\n\nYou can also install with `go get -u github.com/guitmz/n26/cmd/n26` (make sure you have your Go env setup correctly). \n\n# Docker\nA Dockerfile is also provided and the prebuilt image is available for pulling: `docker pull guitmz/n26` or `docker pull guitmz/n26:DESIRED_TAG`\n\nYou can run it like:\n\n`$ docker run -e N26_USERNAME=\"username\" -e N26_PASSWORD=\"password\" -e N26_DEVICE_TOKEN=\"device_token_uuid\" guitmz/n26`\n\nor if you want to be asked for your credentials:\n\n`$ docker run -ti -e N26_DEVICE_TOKEN=\"device_token_uuid\" guitmz/n26`\n\n# Authentication\nSince 14th of September 2019, N26 requires a login confirmation (2 factor authentication) from the paired phone N26 application to login on devices that are not paired (more details [here](https://n26.com/en-eu/blog/what-is-psd2)). This means you will receive a notification on your phone when you start using this library to request data. This tool checks for your login confirmation every 5 seconds. If you fail to approve the login request within 60 seconds an exception is raised.\n\n### Device Token\n\nSince 17th of June 2020, N26 requires a device_token to differentiate clients. This requires you to specify the `N26_DEVICE_TOKEN` environment variable with an UUID of your choice. Feel free to use any proper UUID generator like https://www.uuidgenerator.net to generate the token.\n\n# Usage\n```\nNAME:\n   N26 - your N26 Bank financial information on the command line\n\nUSAGE:\n   n26 command [json|csv|statement ID]\n\nVERSION:\n   1.5.0\n\nAUTHOR:\n   Guilherme Thomazi \u003cthomazi@linux.com\u003e\n\nCOMMANDS:\n     addresses     addresses linked to your account\n     balance       your balance information\n     block         blocks a card\n     cards         list your cards information\n     contacts      your saved contacts\n     info          personal information\n     limits        your account limits\n     spaces        your spaces\n     statements    your statements. Passing the statement ID as argument, downloads the PDF to the current directory\n     status        general status of your account\n     transactions  list your past transactions. Supports CSV output\n     unblock       unblocks a card\n     help, h       Shows a list of commands or help for one command\n\nGLOBAL OPTIONS:\n   --help, -h     show help\n   --version, -v  print the version\n```\n\nYou can have the `N26_USERNAME` and `N26_PASSWORD` environment variables set to your N26 user email and password. If you don't, you will be prompt for this information, so it's not mandatory.\nExample of getting your account balance:\n```\n$ n26 balance\n+------------------------+-------------+-------------------+----------------+\n|          IBAN          |     BIC     | AVAILABLE BALANCE | USABLE BALANCE |\n+------------------------+-------------+-------------------+----------------+\n| DE74100XXXXXXXXXXXXXXX | NTSXXXXXXXX |              88.8 |           88.8 |\n+------------------------+-------------+-------------------+----------------+\n```\n\nYou can also use the `json` option to output it as JSON with more information:\n```\n$ n26 balance json\nN26 password: ********\n{\n  \"availableBalance\": 107.5,\n  \"usableBalance\": 107.5,\n  \"iban\": \"DEXXXXXXXXXXXXXX\",\n  \"bic\": \"NTXXXXXXXXXXX\",\n  \"bankName\": \"N26 Bank\",\n  \"seized\": false,\n  \"id\": \"11111-1scasda-1112312-adasdasdasdas\"\n}\n```\n\nAnd `csv` for transactions.\n\nYou can run `n26 help` for usage description.\n\n# Missing features\n- Improve MFA flow, for now it works but is not really informative\n- Make a transfer\n- Set card limit\n- API docs\n- Better error handling\n- A terminal UI could also be implemented\n- ?\n\n# References\n- https://github.com/femueller/python-n26 (MFA reference)\n- https://github.com/PierrickP/n26 (API reference)\n- https://github.com/Rots (thank you for the PRs!)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguitmz%2Fn26","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguitmz%2Fn26","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguitmz%2Fn26/lists"}