Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

💲 An Open Banking CLI

License

NotificationsYou must be signed in to change notification settings

elisiariocouto/leggen

Repository files navigation

An Open Banking CLI.

This tool aims to provide a simple way to connect to banks using the GoCardless Open Banking API.

Having a simple CLI tool to connect to banks and list transactions can be very useful for developers and companies that need to access bank data.

Having your bank data in a database, gives you the power to backup, analyze and create reports with your data.

🛠️ Technologies

📦 Storage

  • SQLite: for storing transactions, simple and easy to use
  • MongoDB: alternative store for transactions, good balance between performance and query capabilities

⏰ Scheduling

  • Ofelia: for scheduling regular syncs with the database when using Docker

📊 Visualization

  • NocoDB: for visualizing and querying transactions, a simple and easy to use interface for SQLite

✨ Features

  • Connect to banks using GoCardless Open Banking API
  • List all connected banks and their statuses
  • List balances of all connected accounts
  • List transactions for all connected accounts
  • Sync all transactions with a SQLite and/or MongoDB database
  • Visualize and query transactions using NocoDB
  • Schedule regular syncs with the database using Ofelia
  • Send notifications to Discord and/or Telegram when transactions match certain filters

🚀 Installation and Configuration

In order to useleggen, you need to create a GoCardless account. GoCardless is a service that provides access to Open Banking APIs. You can create an account athttps://gocardless.com/bank-account-data/.

After creating an account and getting your API keys, the best way is to use thecompose file. Open the file and adapt it to your needs.

Example Configuration

Create a configuration file at with the following content:

[gocardless]key ="your-api-key"secret ="your-secret-key"url ="https://bankaccountdata.gocardless.com/api/v2"[database]sqlite =truemongodb =true[database.mongodb]uri ="mongodb://localhost:27017"[notifications.discord]webhook ="https://discord.com/api/webhooks/..."[notifications.telegram]# See gist for telegram instructions# https://gist.github.com/nafiesl/4ad622f344cd1dc3bb1ecbe468ff9f8atoken ="12345:abcdefghijklmnopqrstuvxwyz"chat-id =12345[filters.case-insensitive]filter1 ="company-name"

Running Leggen with Docker

After adapting the compose file, run the following command:

$ docker compose up -d

The leggen container will exit, this is expected since you didn't connect any bank accounts yet.

Run the following command and follow the instructions:

$ docker compose run leggen bank add

To sync all transactions with the database, run the following command:

$ docker compose run leggen sync

👩‍🏫 Usage

$ leggen --helpUsage: leggen [OPTIONS] COMMAND [ARGS]...  Leggen: An Open Banking CLIOptions:  --version          Show the version and exit.  -c, --config FILE  Path to TOML configuration file                      [env var: LEGGEN_CONFIG_FILE;                       default: ~/.config/leggen/config.toml]  -h, --help         Show this message and exit.Command Groups:  bank  Manage banks connectionsCommands:  balances      List balances of all connected accounts  status        List all connected banks and their status  sync          Sync all transactions with database  transactions  List transactions

⚠️ Caveats

  • This project is still in early development, breaking changes may occur.

[8]ページ先頭

©2009-2025 Movatter.jp