Skip to main content

Returns and return-to-vendor

Reverse logistics is two connected flows: goods coming back from customers, and goods going back to suppliers. The hinge between them is disposition — deciding whether a returned item is restockable, scrap, or the supplier’s problem.

Customer return

Approval authorizes the return — the RMA — before goods move. What arrives then goes through receiving like any inbound goods, with condition recorded honestly, because condition drives everything below.
Approval is a policy decision, and policy is where agents get argued into things. If an agent handles returns, put the approve call behind the decision gate: the gate rules on return_allowed(order_941) from your actual policy, with cited proof — and “the customer was upset” is not a rule it knows.

Refund

Refund against the original payment, and decide your trigger deliberately: refund-on-approval is customer-friendly and eats fraud; refund-on-receipt holds cash until goods arrive. Either is fine — mixing them per-agent-mood is not. The refund posts to the ledger and shows in order to cash views automatically.

Disposition

The returned unit is now inventory of uncertain quality. Route it: For a suspected pattern — the third cracked sole this week — open an NCR (POST /api/v1/quality/ncrs) and disposition the lot as a whole, not unit by unit: quality holds and NCRs connect a defect to every unit that shares its lot.

Return to vendor

submit sends it to the supplier for authorization; process executes the physical return and relieves inventory. The money comes back as a vendor credit (POST /api/v1/vendor-credits, applied against future bills) — suppliers rarely wire cash, so model what actually happens.
Close the loop or the RTV quietly becomes a write-off: goods shipped back, credit never issued, and nobody notices because inventory already looks right. Track open vendor returns against received credits (GET /api/v1/vendor-returns?status=processed vs GET /api/v1/vendor-credits) — the gap between them is money owed to you.