Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/skynet2/firefly-iii-privatbank-importer
https://github.com/skynet2/firefly-iii-privatbank-importer
Last synced: about 12 hours ago
JSON representation
- Host: GitHub
- URL: https://github.com/skynet2/firefly-iii-privatbank-importer
- Owner: skynet2
- License: mit
- Created: 2024-01-28T14:23:44.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-10-25T13:45:20.000Z (22 days ago)
- Last Synced: 2024-10-25T15:52:12.356Z (22 days ago)
- Language: Go
- Size: 382 KB
- Stars: 0
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# firefly-iii-importer
![build workflow](https://github.com/skynet2/firefly-iii-privatbank-importer/actions/workflows/general.yaml/badge.svg?branch=master)
[![codecov](https://codecov.io/gh/skynet2/firefly-iii-privatbank-importer/branch/master/graph/badge.svg?token=5QV4Z8NR6V)](https://codecov.io/gh/skynet2/firefly-iii-privatbank-importer)
[![go-report](https://img.shields.io/badge/go%20report-A+-brightgreen.svg?style=flat)](https://img.shields.io/badge/go%20report-A+-brightgreen.svg?style=flat)
[![PkgGoDev](https://pkg.go.dev/badge/github.com/skynet2/firefly-iii-privatbank-importer)](https://pkg.go.dev/github.com/skynet2/firefly-iii-privatbank-importer?tab=doc)## 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:
- [x] Income
- [x] Withdrawal
- [x] Transfer
- [ ] Duplicate cleaner### Paribas (goonline.bnpparibas.pl)
- Protocol: XLSX (statements export)
- Supported Transaction Types:
- [x] Income
- [x] Withdrawal
- [x] Transfer
- [x] Duplicate cleaner### MonoBank (monobank.ua)
- Protocol: CSV
- Supported Transaction Types:
- [ ] Income
- [x] Withdrawal
- [ ] Transfer
- [x] Duplicate cleaner### Revolut (revolut.com)
- Protocol: CSV
- Supported Transaction Types:
- [ ] Income
- [x] Withdrawal
- [ ] Transfer
- [x] Duplicate cleaner### Server deployment
1. cd cmd/server && go build -o server
2. deploy to your environment
3. Setup environment variables
```bash
export CHAT_MAP = {"" : "privatbank", "" : "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"}
```
4. 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.