DE

$ ./eigenbeleg live

Lost a receipt? Make an Eigenbeleg the tax office accepts.

For freelancers and small businesses in Germany with a business expense but no receipt: parking meters, tips, lost or never issued receipts. Fill in the form, download the PDF, sign it. Nothing leaves your browser.

Eigenbeleg Generator screenshot

$ cat features.md

  • Asks for every field an Eigenbeleg needs: date, amount, payee, what you paid for, business purpose, why there is no original receipt, place, date and signature line.
  • Adds the VAT note that no input VAT is deducted from an Eigenbeleg (§ 15 Abs. 1 Satz 1 Nr. 1 UStG) and the total in words.
  • Several lines per receipt, payment method, attachments (e.g. bank statement line) and an optional line for the payee to confirm, useful for tips.
  • Warns when the total is above €250 (the limit for simplified invoices, § 33 UStDV), when a lost receipt could be replaced by a duplicate, or when a card payment has no bank statement reference.
  • Short guidance on when an Eigenbeleg is accepted and its limits, with the official sources and the date they were checked (19 October 2026).
  • Runs in your browser: the PDF is built locally, nothing is uploaded. Your name and address are kept in your browser for the next receipt, receipts are numbered per year.

$ cat why.md

I lose a parking receipt or pay a tip without a bill a few times a year, and every time I end up writing the same note by hand and wondering what has to be on it. The templates online are Word files or come with a signup. So I built the form I wanted: every field in one place, the VAT note already there, a clean PDF, and nothing sent anywhere.

$ self-host-it

Requirements
Static files, no build step and no dependencies. Any web server works; tests run with Node.js 18+ (node --test tests/).
Built with
HTML, JavaScript
License
MIT

The repository goes public on GitHub soon. Until then, ask me for the code and I'll send you access.

Get the source