Lesson 5 of 5
Testing returns and memos
9 min
Returns and memos are where money leaves the company, so they deserve more test attention than their volume suggests. A defect here either refunds too much, refunds the wrong customer, or quietly fails to refund at all, which turns into a customer escalation weeks later. This lesson builds a compact test set for Contoso and defines the evidence that proves each case.
Build the scenario set
| # | Scenario | Key expected result |
|---|---|---|
| 1 | Full return for refund, standard returns flow | Four units in returns stock; credit for returns equals 4 × invoice price plus tax |
| 2 | Return with free-of-charge replacement | Replacement delivery with goods issue; no credit; billing block remains |
| 3 | Partial return of a larger invoice line | Credit only for the returned quantity; cannot exceed billed quantity |
| 4 | Credit memo request approved | Block removed by an authorized user; credit memo posted; customer open item |
| 5 | Credit memo request rejected | Reason for rejection set; nothing in the billing due list; no posting |
| 6 | Unauthorized user tries to release a block | Release is refused by authorization |
| 7 | Debit memo request for missed freight | Debit memo posted; additional revenue and tax; open item for collection |
| 8 | Invoice correction request with mixed changes | Net credit or debit equal to the sum of corrected lines |
A starter set of returns and memo test scenarios for Contoso.
Notice that scenarios 5 and 6 are negative tests: they prove that something does not happen. Controls such as approval and authorization are only proven by trying to get around them. A test pack with only happy paths tells the process owner nothing about whether the controls work.
Write expected results before you run
For each scenario, write the numbers down first. Scenario 1 for Contoso: return 4 × CMC-ALT-100 from invoice 90001877 at $210; expected returns stock +4 at plant 1710; expected credit $840 plus tax; expected journal entry credits Great Lakes Fleet Services and debits the sales deduction or revenue account with profit center for alternators; inventory value +$600 only after transfer to unrestricted stock. If the tester cannot write these numbers, the scenario is not ready to execute.
- Prepare dataOriginal invoice in the test client, customer with open items visible, approver and non-approver users
- ExecuteCreate the return or memo request and every follow-on document; record each number
- Check stockMaterial document: movement type, quantity, stock type; stock overview before and after
- Check financeJournal entry: accounts, amounts, tax, profit center; customer line items
- Check controlsBlock was present until approval; unauthorized release failed
- Record evidenceDocument flow with statuses, journal entries, approver name and date
Evidence that convinces a process owner
The evidence for a returns test is the document flow from the return order (return order, returns delivery, goods receipt, credit for returns, journal entry) plus the stock and finance checks. For a memo test it is the request, the credit or debit memo, the journal entry and the customer's line item display (for example, the Manage Customer Line Items app). Add who removed the billing block and when; the change history of the request shows it.
Common defects to look for
- Return order not referenced to the invoice, so the credit uses today's price instead of the price charged.
- Billing block missing from a returns or credit memo request type after a configuration change.
- Returned quantity allowed to exceed the billed quantity.
- Credits posting to revenue when the chart of accounts expects a sales deduction account.
- Tax not reversed, or reversed with a different tax code from the original invoice.
- Returns goods receipt posting to unrestricted stock, making damaged goods available to sell.
What would you do?
It is the last week of user acceptance testing. Priya's team has passed scenarios 1–4 and 7–8. Scenarios 5 and 6 (rejection and unauthorized release) have not been run because "nobody does that in real life". Grace asks if O2C returns can be signed off. What should Priya say?
- Cover refunds, replacements, partial returns, approved and rejected requests, debit memos and invoice corrections.
- Include negative tests: rejection and unauthorized release prove the controls.
- Write expected stock and finance numbers before execution.
- Evidence: document flow, material document, journal entry, customer line items and approver history.
- Watch for missing references, missing blocks, wrong accounts and returns landing in available stock.
Check your understanding · not graded
Lesson check
1. Why include a test where an unauthorized user tries to release a billing block?
2. What is the best evidence for a returns-for-refund test?
3. Which defect would let damaged goods be sold again?
4. What should a tester write before executing scenario 1?