ERPNext Foundation ERPNext Cloud User Manual Blog Discuss Frappé* Donate

Dunning / Mahnung / Warning Notice



Taking on this topic again:

How late payments are handled in Germany

Usually, the due date is 14 days after the invoice date. When the invoice is overdue, send a friendly reminder. Then, the fun, a dunning process, starts:

  1. Send the first warning notice (“1. Mahnung”)

    • Charge a warning fee
    • Set a new deadline, say 8 days

    In order for the debtor to be officially in delay of performance, the creditor generally must provide the debtor with a warning notice. […] Irrespective of a warning notice, the debtor is in delay of performance at the latest after 30 days following the payment due date and presentation of the invoice.

    • From now on we charge interest on the invoice total

    If the debtor is in delay of paying a money debt, then the creditor may claim the interest on arrears as so-called loss caused by delayed performance.

  2. Second deadline arrives, send next warning notice.

    • Charge a warning fee
    • Charge interest
    • Set a new deadline, say 5 days
  3. Third deadline arrives, send a final warning notice.

    • Charge a warning fee
    • Charge interest
    • Set a new deadline, say 3 days
  4. (Fourth deadline arrives, hand the case over to a lawyer.)

Each stage should result in a new PDF document that references the original invoice but with a different title (“Warning Notice 1”, “Warning Notice 2”, …), new due date, fees and interest.

So, first, the customer owes € 100.00, then € 103.00, then € 106.00, etc. The amount continues to grow until payment is made. However, there will be no additional GL Entries until payment.

If we get paid – finally! –, we book the following:

Account Debit Credit
1800 - Bank 106.00
1200 - Trade receivables 100.00
7100 - Other interest and similar income 006.00

(Taxes ignored, for simplicity)

The DocType could look like this:

It fetches all relevant details from the Sales Invoice.



@lasalesi, I have seen something similar in your app. If we get this into the core, would Swiss and Austrian users be able to use it?


Hi @rmeyer,

thanks for sharing! This looks very good.

We have some differences that we apply, which I think are important. The dunning is maintained as a separate payment reminder document. In this, we aggregate all unpaid invoices from one debtor. Same as you, we keep a payment reminder level on each sales invoice and raise this (typically up to 3) at each reminder sent. This will impact the text blocks used for the payment reminder. Your print format looks very nice! As for the charges, they should not be applied on the sales invoice; they have to be accounted for separately in accounting, we do this at the payment entry.

So to your question, I guess most of our customers would keep the current implementation (at least for now, I don’t see v12 productive too soon). However, your feature is absolutely relevant and should be considered for the core. If we can help to improve it, let me know.


Is your aggregate payment reminder somehow linked to the dunning?

Thanks, I would be happy to get your help. Currently, I have it in a custom app: