Open-source drag & drop receipt importer for Invoice Ninja v5 (local OCR, review before saving)

Hi all,

I built a small self-hosted companion app for Invoice Ninja v5 and released it under the MIT license:

What it does:

  • Drag & drop receipts (PDF, JPG, PNG, HEIC) into a browser window
  • Reads vendor, date, gross amount, VAT rate and invoice number locally (pdftotext / Tesseract) – nothing leaves your server
  • You review the pre-filled fields (colour-coded by confidence) and click “create expense”
  • Creates the expense via the official API, attaches the receipt as a document, and keeps the untouched original in a local archive with SHA-256
  • Warns about duplicates (same file, same invoice number, or same amount on the same day) – checked against the archive and your Invoice Ninja expenses
  • Matches vendors against your existing ones and suggests the category from that vendor’s last expense

Why not the built-in email import? It works well, but needs Mailgun/Brevo plus Mindee (cloud OCR), and creates expenses without a review step. I wanted everything local, with a check before anything is booked. It also works with the hosted version, since it only uses the API.

The parser is tuned for German receipts (19 %/7 %, § 19 UStG, reverse charge, till receipts), but PDFs with a text layer work in general.

Runs as a single hardened Docker container behind your reverse proxy. Feedback and issues are very welcome.

Disclosure: I’m the author. The software is free; I also offer paid setup for people who don’t want to do it themselves.

Hi,

Looks very cool, thank you for sharing it!

1 Like