Dunning
Slonge Billing handles dunning fully automatically — every day, overdue invoices are detected, the appropriate dunning level is determined, and depending on the mode the reminder is either sent directly or queued for approval.
Overview
- Three dunning levels with their own templates and optional fees
- Two modes —
auto(fully automatic) orsemi_auto(with approval) - Daily cron job runs at 07:00 UTC and processes all overdue invoices
- Templates customizable per dunning level
- PDF attachment in the dunning email — rendered from the same template as the print preview, with dunning fees and default interest reflected in the totals and the QR-bill amount
Dunning email contents
Dunning emails use the same layout as the invoice email:
- Greeting that mentions the dunning level, days overdue, and payment deadline
- Line items from the original invoice
- Totals: Invoice Amount → Dunning Fees → Default Interest → Total Amount
- Swiss QR bill with the current amount due (including fees and interest)
- PDF attachment with the same numbers
The email contains no link to the in-app invoice page — that page is auth-walled behind the sender's login, so external recipients can't open it. The PDF attachment is the canonical artifact the customer keeps.
Permissions
| Role | View Dunning | Approve Dunning | Templates / Configuration |
|---|---|---|---|
| Employee | ❌ | ❌ | ❌ |
| Accountant | ✅ | ✅ | ❌ |
| Administrator | ✅ | ✅ | ✅ |
How the dunning flow works
Invoice overdue → Cron detects it → Level determined → Mode decides
├─ auto: send directly
└─ semi_auto: queue for approval
- Trigger: An invoice in status
sentbecomes overdue once the payment term (default: 30 days) has passed. - Cron job: Every day at 07:00 UTC, the
dunning-cronjobjob sweeps all tenants. - Dunning level: Based on the number of previous reminders and the days elapsed, the system determines which level is next due.
- Mode decision:
auto: The dunning letter is sent directly to the client with a PDF attached, and a document is filed in the tenant.semi_auto: A draft is created and an approval request is sent to accountants/admins.
- After sending: The next dunning level is queued (
waitDaysdays later).
Dunning levels
Slonge Billing has three levels:
| Level | Label | Tone | Default wait |
|---|---|---|---|
| DUNNING_1 | 1st payment reminder | Friendly | 7 days after due date |
| DUNNING_2 | 2nd reminder | Firm | 14 days after level 1 |
| DUNNING_3 | 3rd reminder (final) | Strict, mentions further steps | 14 days after level 2 |
Each level has its own email template and PDF template type, both editable under Settings > Templates.
Dunning modes
auto — Fully automatic
- Best for: standard B2B with steady reminder volume, well-defined terms, low need for case-by-case judgment.
- The dunning letter is sent directly.
- A document is still created in the system so you can review, download, or keep it as evidence.
- Recommended together with a sufficiently long payment term and clear T&Cs.
semi_auto — With approval
- Best for: relationship-oriented business, sensitive clients, or when you want to review at least the second/third level individually.
- The dunning letter is created as a draft and an approval request is filed in the system.
- Accountants or administrators see the request under Approvals and can:
- Approve → the letter is sent directly
- Reject → no send, the draft remains available for a later manual action
- You receive a push / email notification when an approval is waiting.
Configuration
Under Settings > Dunning you configure:
| Setting | Description |
|---|---|
| Mode | auto or semi_auto (see above) |
| Active levels | Which of the three levels are sent automatically |
| Wait days | Days between due date / levels — configurable per level |
| Dunning fees | Optional per level (e.g., CHF 10, 25, 50) |
| Templates | Email and PDF template per level |
| Default language | DE or EN — taken from the client setting |
Dunning fees
When enabled, dunning fees are added as an extra line item to the original invoice (visible on the dunning PDF). The fee is cumulative — level 3 includes the fees of all previous levels.
Viewing dunning history
On the Invoice page you see:
- "Overdue" tab — all invoices past their due date
- Dunning section per invoice — a chronological list of sent reminders with date, level, and fees
- Download dunning PDF — every issued reminder as a PDF
Frequently Asked Questions
What happens if the client pays during a dunning cycle?
Once the invoice is set to paid, all queued dunning levels for that invoice are stopped. Already sent reminders remain on file as documents.
Can I disable dunning for individual clients?
Yes — per contact you can enable Pause dunning in the contact settings. The cron skips those clients.
How do I customize the dunning text?
Under Settings > Templates there is one email template per dunning level. You can adjust the subject, salutation, body, and closing — variables like {{invoiceNumber}}, {{amount}}, {{dueDate}} are replaced when sending.
Are reminders sent on weekends?
The cron runs daily. If you want to avoid weekend sends, configure the wait days so a weekday landing is likely — or use semi_auto and approve the reminders manually during business hours.
What's the difference vs. the "Send reminder" action on the invoice?
You can always trigger a manual reminder — it goes through the same send pipeline but ignores the cron wait days. Useful when you want to dun outside the standard cadence.