Returns System
Internal system that accepts, approves and tracks customer returns through to their arrival back at the warehouse.
Overview
The Returns System owns the returns journey. The Returns APIReturns APIServicev1.0.0Public API customers use to start a return. Validates the request against the original order and records it.
Publishesreturn-requestedSubscribesrequest-returnOwnerfulfilment-platformMapRepoView docs accepts Request ReturnRequest ReturnCommandv1.0.0Command sent by a customer to return one or more items from a delivered order.
Ownerfulfilment-platformSchemaMapView docs from customers, and the Returns ProcessorReturns ProcessorServicev1.0.0
Applies the returns policy to new requests and tracks returned parcels until they arrive back at the warehouse.
Publishesreturn-approved, return-receivedSubscribesreturn-requestedOwnerfulfilment-platformMapRepoView docs approves returns and confirms receipt. Both share the Returns DatabaseReturns DatabaseContainerv1.0.0
PostgreSQL database that is the system of record for return requests and their status.Ownerfulfilment-platformMapView docs.
Resource Diagram
The services and messages that make up this system.
What’s inside
| Component | Type | Responsibility |
|---|---|---|
| Returns APIReturns APIServicev1.0.0 | Service | Accepts return requests from customers. |
| Returns ProcessorReturns ProcessorServicev1.0.0 | Service | Applies the returns policy and tracks returned parcels. |
| Returns DatabaseReturns DatabaseContainerv1.0.0 | Data store | Return requests and their status. |
Messages this system sends
- Return RequestedReturn RequestedEventv1.0.0Published when a customer has requested to return items from an order. Ownerfulfilment-platformSchemaMapView docs — a customer asked to return items.
- Return ApprovedReturn ApprovedEventv1.0.0Published when a return request passes the returns policy and the customer can send the items back. Ownerfulfilment-platformSchemaMapView docs — the return passed policy checks.
- Return ReceivedReturn ReceivedEventv1.0.0Published when returned items have arrived at the warehouse and been inspected. Ownerfulfilment-platformSchemaMapView docs — returned items arrived at the warehouse.