Template: check e-invoices in CI with GitHub Actions

A GitHub Actions workflow checks all e-invoices in a folder of your repository on every push and pull request. If one of them is invalid, the run fails.

Last updated

Operations validate_invoice
Platforms GitHub Actions
Formats XRechnung, ZUGFeRD / Factur-X, Peppol BIS

As of October 2026.

For software vendors whose program generates e-invoices. A change that breaks the output shows up in the build. Otherwise it only shows up when a customer's system rejects the invoice.

What the template does

A first job finds all XML and PDF files in the folder. A second job checks each file with the GitHub Action invowerk-dev/invowerk-action.

The step fails when the result valid is false. The log shows the messages with an explanation where invowerk has one. The check covers format and validation rules, not amounts or tax rates.

Steps

  1. Copy validate-e-invoices.yml to .github/workflows/.
  2. Enter your invoice folder (default: invoices/).
  3. Add your API key as the repository secret INVOWERK_API_KEY.

Without a key, the workflow runs with the limits for anonymous calls.

Template on GitHub

Workflow and instructions: invowerk-dev/invowerk-integrations, templates/e-rechnung-ci-pruefen

Get an API key

Create an API key