firefly-iii-privatbank-importer

module
v0.0.0-...-989e75f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2024 License: MIT

README

firefly-iii-importer

build workflow codecov go-report PkgGoDev

Overview

The Firefly III Importer is a tool designed to automate the process of importing banking transactions from banks into Firefly III, a self-hosted personal finance manager.

Supported Banks

PrivatBank (next.privat24.ua)
  • Protocol: Telegram Notifications
  • Supported Transaction Types:
    • Income
    • Withdrawal
    • Transfer
  • Duplicate cleaner
Paribas (goonline.bnpparibas.pl)
  • Protocol: XLSX (statements export)
  • Supported Transaction Types:
    • Income
    • Withdrawal
    • Transfer
  • Duplicate cleaner
MonoBank (monobank.ua)
  • Protocol: CSV
  • Supported Transaction Types:
    • Income
    • Withdrawal
    • Transfer
  • Duplicate cleaner
Revolut (revolut.com)
  • Protocol: CSV
  • Supported Transaction Types:
    • Income
    • Withdrawal
    • Transfer
  • Duplicate cleaner
Server deployment
  1. cd cmd/server && go build -o server
  2. deploy to your environment
  3. Setup environment variables
export CHAT_MAP = {"<telegram_chat_id>" : "privatbank", "<telegram_chat_id_2>" : "paribas"}
export COSMO_DB_CONNECTION_STRING = "AccountEndpoint=..."
export COSMO_DB_NAME = "firefly-importer"
export FIREFLY_URL = "https://firefly.example.com"
export FIREFLY_TOKEN= "your_firefly_token"
export TELEGRAM_BOT_TOKEN = "your_telegram_bot_token"
export FIREFLY_ADDITIONAL_HEADERS = {"header1" : "val1", "header2" : "val2"}
  1. Set telegram webhook url to your host (endpoint /api/github/webhook)

Bot Usage

To use the Firefly III Importer, you need to set up a Telegram bot and connect it to your group.

For PrivateBank

Forward Privat notifications to Importer group.

Default Bot Commands

/commit - Commit all pending transactions to Firefly III. This command processes and imports all pending transactions.
/stat - Display the current status of the importer. This command shows the number of pending transactions.
/dry - Perform a dry run. This command processes all pending messages without committing the transactions to Firefly III.
/errors - Display the current errors. This command shows the number of errors that occurred during the import process.
/duplicates - Display the current duplicates. This command shows the number of duplicate transactions that were detected.
/clear - Clear all pending transactions. Use this command to remove any messages that you do not want to import.

Directories

Path Synopsis
cmd
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL