Payment terms on invoices in Germany: rules, due date calculation and wording
The payment term (Zahlungsziel) is the deadline by which an invoice should be paid, for example 14 days from the invoice date. German law does not require one: without an agreement, a claim is due immediately (§ 271 BGB), and a business customer is in default no later than 30 days after the due date and receipt of the invoice (§ 286(3) BGB). A consumer is only in default after those 30 days if the invoice points out this consequence. The clearest option is a specific date on the invoice.
What a payment term is
The payment term (Zahlungsziel) tells your customer when to pay. It usually appears on the invoice as a period, such as "payable within 14 days", or as a fixed date. Two related terms come up as well. The due date (Fälligkeit) is the point from which you can demand the money. The payment period (Zahlungsfrist) is often used as a synonym for the payment term.
A payment term is not a mandatory invoice field. § 14(4) UStG (the German VAT Act) lists what an invoice must contain, from name and address to the date of supply (Leistungsdatum), and a payment deadline is not on that list. It still belongs on every invoice that has not been paid yet. It saves questions, and in an e-invoice it is actually required as soon as an amount is outstanding (more on that below).
What the law says
There is no "statutory payment term" in the sense of a fixed deadline. The German Civil Code (BGB) covers three points, and they work together.
First, without an agreement the claim is due immediately. If no time for performance has been set, the creditor can demand it right away (§ 271(1) BGB, German). An invoice without a payment term is due now, not "at some point".
Second, the customer is in default after 30 days at the latest. A debtor who does not pay a claim for payment within 30 days of the due date and receipt of the invoice is in default without a reminder (§ 286(3) BGB). For consumers this only applies if the invoice specifically points out this consequence. Default can start earlier through a reminder after the due date or through a payment date set by the calendar.
Third, very long periods are limited. With business customers you may agree on up to 60 days. Anything longer is only valid if it is expressly agreed and not grossly unfair to the creditor (§ 271a(1) BGB). For public-sector buyers the limit is 30 days. In general terms and conditions (AGB), a period of more than 30 days is considered unreasonably long if in doubt (§ 308 no. 1a BGB).
Short periods are allowed. A payment term of 7 or 3 days is fine, and so is "due immediately". Whether your customer is in default without a reminder once such a period runs out depends on whether you agreed on it. A date that you put on the invoice on your own is not something to rely on for that.
Calculating the due date
The count uses calendar days unless agreed otherwise. The day of the invoice date does not count (§ 187(1) BGB), and the period ends when the last day ends (§ 188(1) BGB). If that day is a Saturday, Sunday or public holiday, the next business day takes its place (§ 193 BGB).
- Thu, Oct 1, 2026Invoice dateThis day does not count
- Thu, Oct 15, 2026End of 14 daysPayable by Oct 15, 2026
- Mon, Nov 2, 2026End of 30 daysBy the count Sat, Oct 31. Under § 193 BGB the next business day applies
That is why a date is clearer than a period. "Payable within 30 days" leaves open when the count starts: from the invoice date, from receipt or from delivery. "Payable by November 2, 2026" leaves nothing open.
Wording for the invoice
A good sentence names the period, the date and the payment method. The German wording below covers the most common cases (English translation underneath each line):
(Payable within 14 days of the invoice date without deduction, i.e. by Oct 15, 2026, by bank transfer.)
(Payable within 30 days of the invoice date without deduction, i.e. by Nov 2, 2026.)
(Payable immediately on receipt without deduction.)
(If you pay by Oct 8, 2026, deduct a 2% discount; otherwise payable without deduction by Nov 2, 2026.)
(You will be in default no later than 30 days after the due date and receipt of this invoice, even without a reminder.)
"Ohne Abzug" (without deduction) means no early payment discount (Skonto). If the phrase is missing, your customer still may not deduct anything; the phrase only makes it explicit. Skonto is a voluntary discount for paying quickly and not part of the payment term. It reduces the consideration after the fact, and with it the VAT (Umsatzsteuer). Your tax advisor (Steuerkanzlei) books that when the payment comes in.
Payment terms in the e-invoice
In a structured e-invoice, the payment term has its own fields: the due date (BT-9) and the payment terms as text (BT-20). The European standard EN 16931 requires at least one of them as soon as an amount is outstanding (business rule BR-CO-25). An e-invoice with an open amount and neither a due date nor payment terms fails validation. That applies to ZUGFeRD as much as to XRechnung.
For your customer's accounting team, the due date is more than a courtesy. Accounts payable software can read BT-9 directly and schedule the payment from it. With a date in that field, payment arrives on time. With only a sentence in the PDF, someone has to type it in.
When the customer does not pay
Once your customer is in default, you can charge interest: five percentage points above the base rate for consumers, nine percentage points between businesses (§ 288(1) and (2) BGB, German). If your customer is not a consumer, for example a business, you are also entitled to a flat fee of 40 euros (§ 288(5) BGB, German). Whether that is worth it depends on the customer relationship. A friendly reminder with the invoice number and amount usually works faster.
If a customer does not pay at all, that is no reason for a cancellation invoice (Stornorechnung). The invoice is still correct; only the money is missing. Only when the claim becomes uncollectible does your tax advisor correct the VAT under § 17(2) no. 1 UStG.
How Rechnungskit sets the payment term
You set your default payment term once in the document rules (Belegregeln). It applies to every invoice created before payment, for example when a customer buys on account. Stripe invoices with payment terms take the date Stripe sets, so both sides show the same one. For a manual order you choose it for that one order: immediately, 7, 14 or 30 days, or your own number up to 365 days. Your default stays as it is.
The invoice then shows the period and the date, for example "Zahlbar innerhalb von 30 Tagen bis zum 02.11.2026 per Überweisung" (payable within 30 days by Nov 2, 2026, by bank transfer), or for immediate payment "Zahlbar sofort nach Erhalt, spätestens am …" (payable immediately on receipt, at the latest on …). The same due date goes into field BT-9 of the e-invoice and into the open item where you later tick off the incoming payment. If the money is transferred in advance, prepayment with a payment request is the right route: the invoice is then only created once the money has arrived and needs no payment term.
FAQ
- [1] § 271 BGB, time of performance (German)
- [2] § 271a BGB, agreements on payment, inspection or acceptance periods (German)
- [3] § 286 BGB, default of the debtor (German)
- [4] § 288 BGB, default interest and other damage caused by default (German)
- [5] §§ 187, 188, 193 BGB, calculating deadlines (German)
- [6] § 308 no. 1a BGB, payment periods in general terms and conditions (German)
- [7] EN 16931, business rule BR-CO-25 (due date or payment terms)
Rechnungskit is not a tax advisory or law firm. This article explains general principles and does not replace advice from a tax advisor (Steuerberater, § 5 StBerG) or a lawyer (§ 3 RDG). Rechnungskit is built for businesses based in Germany and prepares documents, tax rates and bookings automatically. How your specific case is treated remains your decision, ideally together with your tax advisor or a lawyer.
Every invoice automatically as a valid e-invoice.
Connect your payment provider and we take care of format, validation and archive. Start for free in test mode.
Try it now