Lesson 3 of 5
Dunning and collections
10 min
Dunning is AR's mirror of the payment run: a program that selects overdue items and sends something to the outside world, in this case a reminder letter or email to the customer. It is easy to under-test because nothing moves money. But a wrong dunning letter to a good customer, or no letter to a bad one, is a business problem, and dunning output can reach real customers from a test system just as payment files can reach banks.
How dunning is set up
A dunning procedure is assigned to each customer in the company code data of the business partner (Contoso uses one procedure for fleet customers and a gentler one for aftermarket distributors). The procedure defines the dunning levels, the dunning interval (minimum days between two notices), grace days on line items, minimum amounts and percentages below which nothing is dunned, optional charges and interest, and the text or form used at each level.
- Day 0Invoice dueNet due date of the 12,500 USD invoice; no action yet
- Day 1–5Grace daysLine item grace days stop a reminder for a payment that is merely in the post
- Day 6+Level 1Friendly reminder at the next dunning run
- Day 20+Level 2Firmer notice, issued only if the dunning interval since level 1 has passed
- Day 35+Level 3Final notice; collections specialist is alerted and may place the account on credit hold
The level settings above are Contoso's policy, not SAP defaults. Your test values come from your own procedure, which you can display in configuration or ask the AR lead to confirm.
Running dunning
In SAP GUI the dunning program is F150. In the launchpad, Create Dunning Notices and My Dunning Proposals cover the run and the proposal, and Display Dunning History shows what was sent. A run has three phases, like the payment program: enter parameters (run date, identification, dunning date, documents posted up to, company code, customer range), create and edit the dunning proposal, then print or send the notices. Only the last phase updates the dunning level on the line items and the last-dunned date on the customer.
The proposal is again your safe testing ground. You can change dunning levels or block items in it, delete it and recreate it. A sample printout lets you read the notice text for a customer without sending anything.
What to test
| Test | Setup | Expected result |
|---|---|---|
| Each level | One test customer per level, with invoices whose due dates put them at the right age on the dunning date | Proposal shows the expected level per item; notice uses the right text |
| Interval respected | Run twice, a few days apart | No new level on the second run until the interval has passed |
| Grace days | Invoice overdue by fewer days than the grace period | Not dunned |
| Minimum amount | Overdue balance below the minimum | No notice |
| Dunning block on item | Block one invoice with a block reason in Manage Customer Line Items | Item excluded; other items for the customer still dunned |
| Dunning block on customer | Block the customer in the business partner | Whole customer excluded and listed as blocked |
| Disputed item | Item under dispute per Contoso policy | Excluded from dunning, if the policy and configuration say so |
| Credits on account | Unapplied payment or credit memo on the account | Net balance and notice wording match the policy |
A dunning test matrix for Contoso.
You do not need to wait 35 days to test level 3. Set the dunning date in the run parameters to a future date, or post test invoices with older document and baseline dates. Do not change the system date; it affects every other test in the client.
- Is the customer assigned a dunning procedure and not blocked for dunning?Yes → next question · No → not dunned
- Is the item overdue by more than its grace days on the dunning date?Yes → next question · No → not dunned
- Is the item free of a dunning block, including any block set for a dispute?Yes → next question · No → not dunned; listed as blocked
- Is the customer's overdue amount above the procedure's minimum?Yes → dunned at the level its age and interval allow · No → not dunned
Disputes and collections
Contoso policy says an amount the customer has formally disputed must not be dunned while the dispute is open. If the project uses SAP Dispute Management, open dispute cases can be linked to the disputed items; whether those items are then excluded from dunning automatically, or need a dunning block, depends on how the project has configured it. Test the behavior your configuration actually produces, and get the AR lead to confirm it matches the policy. SAP Collections Management, where used, adds worklists that prioritize customers for the collections team; a test there checks that the overdue customer appears on the right specialist's worklist.
What would you do?
Maria runs a dunning test in QAS with Create Dunning Notices and sets output to email. Halfway through, she realizes customer email addresses were not masked after the last refresh. What is the best response?
- Dunning is controlled by the procedure on the customer: levels, interval, grace days, minimums, charges and texts.
- F150 or Create Dunning Notices: parameters, editable proposal, then notices; only the last step updates dunning data.
- Test each level, the interval, grace days, minimum amounts, item and customer blocks, and disputed items.
- Move the dunning date forward instead of changing the system date.
- Dunning output can reach real customers; mask emails and control printers in test systems.
Check your understanding · not graded
Lesson check
1. Which setting stops a customer from receiving a second-level notice two days after the first?
2. How should a tester produce a level 3 situation without waiting weeks?
3. When are dunning levels written to the line items?
4. A disputed invoice still appears in the dunning proposal. What should the tester do?