{"id":22485930,"url":"https://github.com/russss/barclayscrape","last_synced_at":"2025-08-02T18:34:14.923Z","repository":{"id":44741658,"uuid":"839174","full_name":"russss/barclayscrape","owner":"russss","description":"A small app to programmatically mainpulate Barclays online banking","archived":true,"fork":false,"pushed_at":"2023-02-05T21:41:39.000Z","size":282,"stargazers_count":57,"open_issues_count":0,"forks_count":22,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-11-21T06:05:09.603Z","etag":null,"topics":["bank-account","barclays","ofx","puppeteer","scraper"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/russss.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}},"created_at":"2010-08-15T13:18:28.000Z","updated_at":"2024-07-16T22:22:02.000Z","dependencies_parsed_at":"2023-01-20T07:47:42.026Z","dependency_job_id":null,"html_url":"https://github.com/russss/barclayscrape","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/russss%2Fbarclayscrape","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/russss%2Fbarclayscrape/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/russss%2Fbarclayscrape/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/russss%2Fbarclayscrape/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/russss","download_url":"https://codeload.github.com/russss/barclayscrape/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228500069,"owners_count":17929995,"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":["bank-account","barclays","ofx","puppeteer","scraper"],"created_at":"2024-12-06T17:13:30.266Z","updated_at":"2024-12-06T17:15:13.748Z","avatar_url":"https://github.com/russss.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"\u003e :warning: **This repository is archived.**\n\u003e\n\u003e I no longer use this software and the website it scrapes frequently changes, so this code is likely useless by now.\n\u003e\n\u003e [@carpii has a fork](https://github.com/carpii/barclayscrape) which might still be maintained.\n\nBarclayscrape v3.0\n==================\n\nCode to programmatically manipulate Barclays online banking using\n[Puppeteer](https://github.com/GoogleChrome/puppeteer).\n\nInstallation\n------------\n\nBarclayscrape requires node.js version 10 or above which can be\ninstalled through your OS's package manager or Homebrew. Once Node\nis installed, barclayscrape can be installed on your system using:\n\n    $ sudo npm install -g barclayscrape\n\nThe `barclayscrape` executable will be installed in your path.\n\nAlternatively, if you don't want to run npm as root, you can install\nit into `node_modules` in your home directory with:\n\n    $ npm install barclayscrape\n\nAnd you can then execute barclayscrape with:\n\n    $ npx barclayscrape\n\nUsage\n-----\n```\nOptions:\n  -V, --version       output the version number\n  --otp [pin]         PINSentry code\n  --motp [pin]        Mobile PINSentry code\n  --plogin            Memorable passcode and password\n  --no-headless       Show browser window when interacting\n  -h, --help          output usage information\n\nCommands:\n  list [options]      List all available accounts\n    -j, --json               Output account list in JSON format\n  get_ofx \u003cout_path\u003e  Fetch .ofx files for all accounts into out_path\n  get_ofx_combined \u003cout_path\u003e Download a single .ofx file containing all account activity, into out_path\n  csv [options]       Fetch .csv files for accounts\n    -p, --path \u003cpath\u003e        Export path. defaults to ./export\n    -f, --from \u003cdd/mm/yyyy\u003e  From date\n    -t, --to \u003cdd/mm/yyyy\u003e    To date\n  config              Set up login details\n```\n\nTo start, `barclayscrape config` will ask you for your basic login\ndetails. You can test that the login works by running:\n\n    $ barclayscrape --otp \u003cpin\u003e list\n\nWhere `\u003cpin\u003e` is the eight-digit code generated by your PINSentry device.\nIf you're using the mobile PINSentry facility then use `--motp \u003cpin\u003e`\ninstead of `--otp \u003cpin\u003e`.\n\nTo download bank statements in OFX format, you can run:\n\n    $ barclayscrape --otp \u003cpin\u003e get_ofx ./output_dir/\n\nThis will download one file per account and place them in `./output_dir/`.\n\nAutomating PINSentry Generation\n-------------------------------\n\nTyping in your OTP every time is a pain, but there are ways of\nautomating the process entirely using a USB smartcard reader.\n\n**SECURITY NOTE:** This somewhat defeats the purpose of two-factor\nauthentication, so please do not implement this unless you are confident\nin your ability to adequately secure the machine running it. It is your\nmoney at risk.\n\nThe [python-emv](https://github.com/russss/python-emv) package contains\na tool to generate a one-time password on the command line. It can be\nhooked up to barclayscrape like so:\n\n    $ barclayscrape --otp `emvtool -p \u003cPIN\u003e cap` get_ofx ./output/\n\nPlease be aware that if you're putting this command into cron, any error\nemails will include your PIN in the subject line. It's worth using a small\nshell script to prevent this.\n\nLogging in using memorable passcode\n-----------------------------------\nIf your Barclays account has been configured to support logging in via \npasscode and password, this feature is supported using `--plogin`,\nallowing a completely automated login\n\nPINSentry is still required to transfer funds to non-approved destinations.\n\n**SECURITY NOTE:** It is not recommended you use this feature, unless you are aware \nof the security implications (credentials are NOT encrypted!).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frussss%2Fbarclayscrape","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frussss%2Fbarclayscrape","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frussss%2Fbarclayscrape/lists"}