The letter goes out — but in most NetSuite accounts the dunning fee and the late-payment interest stay a footnote in the text that never reaches the general ledger. The base rate lives in a spreadsheet, the escalation level in someone's head, and the customer who paid yesterday still gets a reminder today. The Dunning Suite moves the whole process into your account: escalation levels by your rules, fees and interest as real invoices, statutory rates as data — and a review step before anything is sent or posted.
The dunning console lives in NetSuite and shows every row as one run: entity (profile), type — dunning letter, statement or due-date notice —, status, as-of date, number of letters, errors, fees and interest. Runs in “Pending approval” wait for you; in “auto” approval mode they execute on schedule. Clicking the run number opens the run with every letter and the invoices behind it.
¹ Measured on a NetSuite test account: one run of 250 letters including fee invoices and log entries.
Every dunning letter lists the overdue invoices with due date, days overdue and level, and shows principal, late-payment interest and dunning fee separately — exactly as they appear on the fee invoice in the ledger. Invoices that have not yet reached a new level are listed for information, with nothing charged for them. Templates ship in German and English and carry your letterhead with logo and bank details per entity.
NetSuite knows every open invoice and every due date. What is missing is everything that comes after the letter: the fee that has to be posted somewhere, the interest rate that changes twice a year, the level that must never run backwards, and the proof of who received what, and when.
Standard dunning writes letters and counts levels. The fee and the interest printed in them are posted by nobody — or by somebody, by hand, weeks later, with different figures.
Base rate plus nine percentage points, to the day, per invoice, across a rate change: that is a spreadsheet one person maintains. When that person is away, the interest on the next letter is wrong.
The flat compensation under § 288(5) BGB applies exactly once per invoice. Charge it again on the second and third reminder and you get the customer's phone call — with no record of when it was first charged.
Which customer is at which level sits in a field anyone can overwrite. A partial payment, a bulk run, a restart after an error — and the third reminder arrives as the first.
A bulk send goes out, and the customer who paid yesterday, the one with an open dispute and the one on a payment plan all get the same letter. Sales writes the apology.
If a run breaks off halfway, nobody knows which letters are already out. Starting again means dunning some customers twice and posting some fees twice.
For overdue customers, in levels you define — consolidated per customer or one per invoice. A fee per level, plus late-payment interest per invoice.
The friendly one, before or around the due date: “your invoice is due soon.” Only to customers who have explicitly asked for it.
All open items as of the run date, credits and payments as negative lines — optionally including recently settled items. Own schedule, minimum interval per customer, dedicated statement address.
When a dunning letter carries charges, one fee invoice per letter appears on the customer's account: a fee line and one interest line per overdue invoice, dated with the run's as-of date. Tax is handled properly — legacy tax via the profile's tax code, SuiteTax via NetSuite's own tax engine.
Base rate, B2B and B2C margins, the €40 compensation, the consumer fee cap: all of it lives in the account as a compliance pack per country with effective dates. The next base rate is a data update, not a release.
An invoice's level rises with every run that includes it and is never reset. An invoice that has not yet reached a new level is listed in the letter for information — with nothing charged for it.
Every run is proposed and waits. You preview each letter, exclude customers, pause them or cancel the run. Only “Approve & Execute” posts and sends.
A repeated run reuses the existing fee invoice, recognises from the communication log what is already out, and never resets a level. The worst case is that it finishes the leftovers.
Payment plan, dispute, promise to pay: pause a customer or a single invoice for 1 to 365 days with a reason — right on the record or from the console. Future runs leave them alone.
One profile per part of the business: a level ladder with grace days, a fee per level, first reminder free or not, a final level, consolidated letter per customer or one per invoice, delivery channel and approval mode.
Interest basis (base rate plus margin, fixed annual or monthly rate, none), B2B and B2C margins, flat compensation, fee cap, interest only with consent (US) and the statutory texts for the letter — Germany, EU and US ship with the product.
The base rate as a series with effective dates. Interest spanning a rate change is split into dated segments and shown that way on the letter. A period already charged is never charged again.
The posting logic treats legacy tax and SuiteTax as equal targets — one code base, no special edition. Which one you run, we check during setup.
Dunning letter, due-date notice and statement as templates in German and English, with letterhead, logo and bank details per entity; the language comes from the customer record. Further languages and text blocks are template maintenance, not a project.
One channel per customer: email to up to ten addresses per customer, from the configured sender, or a PDF in the print batch — merged into files of up to 200 letters. Printing and stuffing happens at your end; the plug-in is not a mailing service.
One entry per letter: what, to whom, when, through which channel, with which status. Bounces become visible instead of silent. When a customer calls to say “I never got anything”, you point at the entry.
Runs, letters, side-effect-free preview, exclude and include, pause, cancel run, approve, waive a fee (creates and applies a credit memo), resend, re-execute failed letters — all in one place, restricted to Dunning Managers and administrators.
Six hooks for house rules — say, who is exempt from dunning or which fee a customer pays. They live outside the product, are switched on by the administrator and survive every update.
On your profile's schedule the plug-in scans open items and drafts the letters: per customer the level, amount, days overdue, fee and interest. Nothing is sent, nothing is posted.
Preview every letter, exclude customers from this run, pause customers or invoices with a reason, cancel the whole run if need be. The person looking decides — not the schedule.
One click, one confirmation. Then letter by letter: post the fee invoice, render the PDF, send the email or add it to the print batch, write the log. A single failure does not stop the others.
Download the print batch and take it to the post, retry failed letters once the cause is fixed, waive a fee as a goodwill gesture — as a credit memo that is applied automatically.
Each subsidiary gets its own profile — the setup assistant creates it. It holds everything that differs between entities, and you run them all from one console.
Late-payment interest at the base rate plus five percentage points for consumers and nine for businesses, €40 flat compensation exactly once per invoice, consumer fees capped at actual cost, no interest on interest (§ 289 BGB), day count act/365. The first reminder stays free — it establishes default.
ECB rate plus eight percentage points as the floor and €40 compensation for recovery costs in commercial transactions. If the proposed regulation with €50 ever lands, that is a new record in the pack.
Interest and fees only where the customer has agreed to them — the pack checks the consent on the customer record and charges nothing otherwise. A fixed rate instead of a base rate.
| Topic | NetSuite Dunning Letters (standard) | 4A Dunning Suite 1.0 |
|---|---|---|
| Letters per batch | up to 100 per print or email queue | 250 letters measured in one run (14.8 min) |
| Dunning fees and interest | not part of the documented scope | calculated per compliance pack and posted as an invoice |
| Maintaining the rules | UI or CSV import; no SuiteScript or web services | no-code in the NetSuite UI — plus CSV and SuiteScript |
Source (standard): Oracle NetSuite Help, “Dunning Limitations and Best Practices”, retrieved 13 Oct 2026.
Every run stops at “Pending approval” and notifies the responsible person. Fully automatic mode can be switched on per profile — for the parts of the business you trust it with.
Fee invoice, delivery and level are guarded against repetition. If a run is restarted after an interruption it only finishes what is missing — proven in the end-to-end test with 250 letters.
Fee invoice on the letter, credit memo on a waiver, log entry per delivery, system notes on pause and resume. The console is restricted to Dunning Managers and administrators; the background engines write only what they create themselves.
Standard dunning writes letters and manages levels. Fees and late-payment interest appear in the text at most; nothing is posted, and you track statutory rates yourself. The Dunning Suite creates a fee invoice in the ledger for every dunning letter, computes interest to the day from effective-dated data, and holds every run for approval before anything goes out.
Yes. Fee per level set to zero, interest basis set to “none”, done: the dunning letter then runs as a plain payment reminder with levels, preview, approval and log, and no fee invoice is created. Likewise you can apply only the flat compensation, only interest, or both only from a certain level — all per profile, no code.
Both. The plug-in detects which tax logic your account uses: with legacy tax the fee line gets the tax code from the profile, with SuiteTax NetSuite's own tax engine computes it. Signing off the fee posting in your tax configuration is part of setup — with a test run before the first real invoice is created.
No. Email customers receive the letter as a PDF attachment from the configured sender. For print customers a print batch is produced as PDF (up to 200 letters per file) that you download, print and post. The last mile stays with you — and is still recorded in the log as “printed”.
As long as the run is not approved, take them out with one click — no letter, no fee. If the letter is already out, waive the fee: the plug-in creates a credit memo and applies it automatically. Nothing is deleted, everything stays traceable.
The templates are NetSuite templates with your letterhead, included in German and English. Wording, column order and statutory notes are adapted during setup; further languages are one more template, not a development project.
One profile per part of the business with its own compliance pack, sender and schedule. Fees and interest are only charged when the pack's currency matches the invoice — a foreign-currency invoice gets the letter, but no wrongly converted interest.
Yes, through six defined hooks: exempt customers, change the fee per customer, add recipients or trigger something after the run. The code lives outside the product, is explicitly switched on by the administrator and keeps running through every update.
NetSuite OneWorld with the Multiple Currencies feature. Legacy tax or SuiteTax — both work, the plug-in detects which. No workflows, no external server; the bundle brings records, scripts and eight fields on the invoice.
As a NetSuite bundle in your account, licensed per production account at €200 per month — available directly via the card above. A setup assistant creates profiles, packs and templates; the setup with your levels, rates and letters we do together. Request a demo — we walk a run through with your data.
We set up a profile with your levels and rates, load your letter template and run it against real open items — up to the preview, without a single letter leaving the house.