Dunning
The dunning section provides access to the dunning notices of your company.
Required scope: dunnings
Required license
This area is only available if the Dunning add-on is included in your license.
Setting up API access is described in the Help Center.
Endpoints
| Method | Endpoint | Description |
|---|---|---|
GET | /api/oauth/v2/resource/invoices/dunnings | Paginated list of all dunning notices |
GET | /api/oauth/v2/resource/invoices/dunnings/{uuid} | Details of a single dunning notice |
POST | /api/oauth/v2/resource/invoices/dunnings | Create a new dunning notice for an invoice |
GET | /api/oauth/v2/resource/invoices/dunnings/types | Paginated list of all dunning levels |
GET | /api/oauth/v2/resource/invoices/dunnings/types/{uuid} | Details of a single dunning level |
Note: Sending a dunning notice does not run through the API. A dunning notice created via API is neither emailed nor printed — you do that in Offisy.
Dunning levels and escalation
A dunning notice carries no dunning level number. The dunningType field contains the UUID of the dunning level, not its ordinal. You get the level's name and escalation position (sort) through List dunning levels or Get dunning level.
The escalation is expressed through the chain of notices: as soon as a new dunning notice is created for the same invoice, the previous one switches to status = replaced. The current notice of an invoice is therefore the one with status = active.
Status and cancellation
Every dunning notice carries two status values:
statusis the technical status from the Conventions:active,replaced, orcanceled. Without astatusfilter (defaultall), both endpoints return all three states.dunningStatusis the business filter with the valuesactive,replaced,canceled, anddone.
In Offisy, canceling and deleting are the same operation: canceling a dunning notice sets dunningStatus = canceled and marks it as soft-deleted at the same time (deleted = true). That is exactly what status = canceled reflects — the value covers both explicitly canceled and otherwise deleted notices.
Payment status
paidStatus only knows open and paid — there is no value for "partially paid". A partially paid dunning notice stays open and has a reduced outstandingTotal.
paid is set only once outstandingTotal drops to 0 or below. This always happens together with dunningStatus = done — both values always occur together.