Project

General

Profile

Plugins Directory » Invoicing

Author: Frank Reinmuth
Website: https://redmine-plugins.atori.de/en/rechnungstellung.html
Code repository: -
Registered on: 2026-05-07 (2 months ago)
Current version: 1.5.10
Compatible with: Redmine 6.1.x, 6.0.x, 5.1.x
User ratings:   (0)

Customer invoicing for Redmine with German/European e-invoicing built in.
Turn approved timesheets (from at_zeiterfassung) and manual line items into
compliant invoices, and issue them as EN 16931 e-invoices — ZUGFeRD hybrid PDF
or XRechnung — without leaving Redmine.

E-invoicing (EN 16931 / ZUGFeRD / XRechnung)
- Every invoice is produced as a hybrid Factur-X / ZUGFeRD 2.x PDF: a
human-readable PDF with the structured invoice XML embedded, so one single
file serves both people and accounting systems. This is what the German B2B
e-invoicing rules (mandatory receipt of structured invoices since 2025) ask
for on the sending side.
- Semantic standard EN 16931 over UN/CEFACT Cross Industry Invoice (CII, D16B).
- Selectable profile per installation:
• ZUGFeRD EN 16931 (Comfort) — default
• ZUGFeRD BASIC
• XRechnung 3.0 (CIUS over CII) — for public-sector (B2G) recipients
- XRechnung mode emits an XRechnung-3.0-compliant document with seller and
buyer contact data and the Leitweg-ID (BT-10 Buyer reference) required for
B2G. Correct profile URN and the mandated BT business terms are set.
- Per customer you choose the format: ZUGFeRD, XRechnung, or none (plain PDF).
- Download the hybrid PDF (with embedded factur-x.xml) or, for portals such as
ZRE/OZG-RE, the pure XRechnung XML.
- Reverse-charge and VAT handling reflected in both the PDF and the XML.

Invoicing
- Customer master data — company, address, VAT ID / tax number, IBAN/BIC,
default rate, payment terms, currency, contact (salutation/first/last name)
- n:m customer ↔ project mapping; build invoices from a customer + period,
with TimeEntry rows grouped by user/project/issue (select a whole project at
once), priced via Redmine rates or a customer override, plus manual items
- Per-project approval gating: by default only approved hours are billable
- Configurable invoice numbers — free-form format with {{…}} placeholders
(e.g. {{customer_prefix}}-{{year}}-{{seq}}), giving a separate gap-free
running number per customer/year (DB-locked); per-customer prefix and start
number
- Per-invoice editable texts (cover / closing / legal), pre-filled from the
settings, frozen on issue; draft PDF preview with watermark before issuing
- Configurable multi-column business-letter footer (bank, commercial register,
managing directors); logo; layout and color options
- States draft → issued → (partially_paid) → paid, plus overdue and cancelled
via a reverse invoice per § 14 UStG / GoBD (issued invoices are never deleted;
cancelling releases the billed time for re-invoicing)
- Optional time-entry appendix (Leistungsnachweis) as a PDF attachment
- Email dispatch with configurable sender address and signature, HTML body,
and additional attachments
- Payment tracking with automatic state transitions and overdue detection

Permissions: view invoices, manage invoices, manage customers.
English and German. Requirements: Redmine 5.1+ (tested on 6.x). GPL v2.
Best paired with at_zeiterfassung for approved-time invoicing.

Changelog

1.5.10 (2026-07-09)

Compatible with Redmine 6.1.x, 6.0.x, 5.1.x.

1.5.10 – Editable per-invoice texts (frozen on issue); draft PDF preview with
watermark; per-customer "print customer number" flag; service period
shown as month(s) instead of boundary days.
1.5.9 – Configurable email sender address (From) and signature; simple HTML
allowed in email body/signature (sanitized).
1.5.8 – Fix: invoice email with an additional attachment now sends.
1.5.7 – Email: per-send toggle for the time-entry appendix; attach additional
files; per-customer start invoice number.
1.5.6 – Customer "invoice number prefix" ({{customer_prefix}}).
1.5.5 – Cancelling an invoice releases the billed time entries again.
1.5.4 – Free-form invoice number format with placeholders + per-customer/year
running number.
1.5.3 – Improved demo preview; new placeholders (first/last name, contact).
1.5.2 – Multi-column business-letter footer (bank, register, directors).
1.5.1 – Customer text placeholders; salutation as its own field.

1.5.0 (major)

- Customer contact split into salutation, first name and last name.
- Per-project approval requirement for invoicing ("Bill without approval" to opt out).
- Per-project select-all in the build-from-time list.
- Per-customer minimum granularity (minutes) for timer bookings.
- Fix: customer can be created with projects assigned in the same step.
- Fix: compatibility with at_zeiterfassung 1.5.0 per-project/per-period submissions.

1.4.3 (2026-05-04)

Compatible with Redmine 6.1.x, 6.0.x, 5.1.x.