Skip to content

Command-line utility for interaction with Enable Banking API and its control panel

License

Notifications You must be signed in to change notification settings

enablebanking/enablebanking-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Enable Banking CLI

A command-line interface for Enable Banking API and its control panel

About

The Enable Banking CLI provides developers using Enable Banking API the possibility to manage the service from the command line or through scripts and other automation.

This project also aims to implement simple yet powerful command-line interface for accessing banking data and initiating payments through open banking APIs integrated by Enable Banking. This functionality is based on the api.enablebanking.com aggregating Open Banking APIs (also known as PSD2 APIs) of a large number of financial institutions in Europe.

How to install

It's the easiest to install the CLI using the Python Package Installer (PyPI):

pip3 install enablebanking-cli

If you want to do modifications, clone the repository from Github:

git clone https://github.com/enablebanking/enablebanking-cli.git
cd enablebanking-cli
pip3 install -r requirements.txt

How to run

When installed using PyPI, the CLI can be run simply as:

enablebanking

Alternatively, the CLI is run like this:

python3 -m enablebanking_cli

This way you can run it from the source code; run the command from the repository root.

How to use

When the CLI is run without arguments (i.e. enablebanking or python3 -m enablebanking_cli), the usage information is displayed.

% enablebanking
usage: enablebanking [-h] [--cp-domain CP_DOMAIN] [--api-domain API_DOMAIN] [--root-path ROOT_PATH] {app,auth} ...

Enable Banking Command-Line Utility

optional arguments:
  -h, --help            show this help message and exit
  --cp-domain CP_DOMAIN
                        Domain of the Enable Banking Control Panel
  --api-domain API_DOMAIN
                        Domain of the Enable Banking API
  --root-path ROOT_PATH
                        Root path under which files used by this utility are stored

Commands:
  {app,auth}
    app                 Application commands
    auth                Authentication commands

Commands supported by the CLI are divided into several groups. In order to display list of commands in a group, run the CLI passing the group name followed by -h, e.g. enablebanking auth -h.

% enablebanking auth -h
usage: enablebanking auth [-h] {default,list,login,logout} ...

optional arguments:
  -h, --help            show this help message and exit

Authentication Commands:
  {default,list,login,logout}
    default             Set an authenticated user to be used by default
    list                Display authenticated users
    login               Sign in as a user of the Enable Banking Control Panel
    logout              Remove locally stored credentials of an authenticated user

In order to display full usage details for a command, run the command followed by -h, e.g. enablebanking auth login -h.

% enablebanking auth login -h
usage: enablebanking auth login [-h] [--callback-port CALLBACK_PORT] email

positional arguments:
  email                 User's email

optional arguments:
  -h, --help            show this help message and exit
  --callback-port CALLBACK_PORT
                        Port number of the authentication callback server

How to package

pip3 install --upgrade build
python3 -m build

Plans

The following commands and groups of commands are planned to be implemented:

  • accounts, the group of commands providing the possibility to authorise access to accounts in multiple ASPSPs (i.e. banks and similar financial institutions), fetch account balances and transactions, as well as perform periodic data synchronisation;
  • payments, the group of commands providing the possibility to initiate and confirm payments;
  • data-insights, the group of commands providing the possibility to retrieve statistical information about details on account information and payments being provided by different ASPSPs.

Suggest features and report bugs by submitting issues in the Github project here.

About

Command-line utility for interaction with Enable Banking API and its control panel

Topics

Resources

License

Stars

Watchers

Forks

Languages