Return

A return is the movement of goods back from a buyer to a seller, reversing all or part of a completed delivery.

Also called Sales return · Purchase return · RMA · Goods return · Reverse logistics

Why it exists

Because a sale can be undone, and the system that recorded the sale has to be able to record its reversal without pretending the original never happened.

What it means to the business

Returns are where a business finds out what it actually sold. They sit at the intersection of inventory, accounting and customer trust, and they are the process most often designed last and used first. The reason codes are the valuable part: a return rate by product, by customer, by batch is quality data arriving free, and most businesses throw it away by recording returns as a bare quantity.

01Lifecycle — walk the states

Requested. Customer has asked to return. Nothing has moved.

State 1 of 5

02Relationships — walk the chain

Return reverses Delivery Note.

Open Delivery Note
03What goes wrong — and why
  • The money goes back and the goods do not exist in the system. Inventory overstates by exactly the returned quantity and the gap compounds silently with every return.

Rules that must hold

  • A return moves stock and adjusts money, and the two are separate decisions — goods can come back without a full refund, and a credit can be issued without goods returning.
  • Returned stock must land in a known condition state. Putting damaged goods back into sellable inventory is how a return becomes a second complaint.
  • A return references the original delivery or invoice. One that references nothing is an unexplained stock increase.

What commonly goes wrong

The return path is designed for the tidy case — undamaged goods, full credit, straight back to stock — and then meets reality, where most returns are partial, damaged, out of window, or all three. Staff work around the tidy path with manual adjustments, and within months the stock ledger and the physical count disagree by roughly the volume of returns.

Edge cases

  • Return of an item whose price has since changed — credit at the original price, not the current one.
  • Partial return where the credit is not proportional, because the reason is damage rather than rejection.
  • Returns after the GST credit-note window has closed, where the tax cannot be recovered even though the goods came back.
  • Customer returns something never sold to them, which is a receiving problem rather than a returns one.
  • Returned goods that go to scrap — stock increases and immediately decreases, and both movements need recording.

How ERPNext models it

DocTypeNote
Delivery NoteWith `is_return` = 1. A return is a negative delivery note, which is what keeps the stock reversal linked to the original movement.
Sales InvoiceWith `is_return` = 1 for the credit side. Stock and money are separate documents on purpose.
WarehouseA dedicated returns/quarantine warehouse is the mechanism that stops uninspected stock being sold again.

Last reviewed 2026-08-14

Machine-readable version

We implement this for a living — that’s where the mistakes above come from. See the service or request a discovery briefing