birdgpt

module
v0.0.0-...-3d0d644 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2024 License: MIT

README

BirdGPT

BirdGPT automatically processes invoices from your Gmail inbox and adds them to Moneybird. It uses GPT-4o to extract invoice details and can handle Dutch KVK and BTW numbers.

USE AT OWN RISK FOR NOW: I highly recommend testing the application with a separate Moneybird administration before using it with your actual administration. The application is still in development and may contain bugs. You can create a sandbox administration for free here.

  • Automatically monitors Gmail for new invoices
  • Extracts invoice details using GPT-4o
  • Creates contacts and purchase invoices in Moneybird
  • Handles Dutch KVK and BTW numbers
  • Automatically matches correct tax rates
  • OAuth authentication for Gmail
  • Configurable email label and check interval

GitHub release (latest by date) GitHub GitHub issues

Prerequisits

You need to request a few API keys to get started. Follow the steps below to get everything set up.

1. Moneybird
  1. Go to moneybird.com/user/applications/new
  2. Create a personal token
  3. Note your administration ID from the URL when logged into Moneybird (format: /123456789)
2. Gmail
  1. Go to Google Cloud Console
  2. Create a new project
  3. Enable Gmail API
  4. Create OAuth 2.0 credentials
  5. Download credentials and save as credentials.json in the project directory
3. OpenAI
  1. Go to platform.openai.com
  2. Create an API key

Configuration

Create a config.yaml file in the project root. See config.example.yaml for all available options.

Required fields:

  • moneybird.token: Your Moneybird personal token
  • moneybird.admin_id: Your Moneybird administration ID
  • gmail.credentials_file: Path to your Gmail OAuth credentials file
  • openai.api_key: Your OpenAI API key

Running

Build and run:

go build -o birdgpt cmd/main.go
./birdgpt

On first run:

  1. You'll be prompted to visit a URL for Gmail authorization
  2. After authorizing, copy the code and paste it back in the terminal
  3. The application will start monitoring your emails

License

BirdGPT is released under the MIT License. See the LICENSE file for more details.

Security

If you discover any security-related issues, please email me@janyk.dev instead of using the issue tracker. All security vulnerabilities will be promptly addressed.

Disclaimer

This project is not affiliated with Moneybird, OpenAI or Google.

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

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