Return Reasons
Get valid return reason codes for a completed order. Call this endpoint before initiating a return to retrieve the reason IDs accepted by the update endpoint. Only available for orders in the Completed state.
Get Return Reasons
GET/ret11/return-reasons/{orderId}
Auth Required
Include a Bearer token. See Authentication.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| orderId | path | string | required | The completed order ID to fetch return reasons for |
Response
Returns a list of return reason objects. Each object contains a reason id and a human-readable description. Pass the id as items[].reasonId in the update endpoint.
| Field | Type | Description |
|---|---|---|
| id | string | Reason code to pass as reasonId in each item of the update request |
| description | string | Human-readable label for the return reason |
Response Example
[
{ "id": "001", "description": "Received wrong item" },
{ "id": "002", "description": "Item damaged during delivery" },
{ "id": "003", "description": "Item not as described" },
{ "id": "004", "description": "Expired product received" },
{ "id": "005", "description": "Missing parts/accessories" }
]
Standard ONDC Return Reason Codes
| Reason ID | Description | Notes |
|---|---|---|
| 001 | Received wrong item | |
| 002 | Item damaged during delivery | |
| 003 | Item not as described | Used in examples |
| 004 | Expired product received | |
| 005 | Missing parts/accessories |
Completed Orders Only
This endpoint is only available for orders in the Completed state. Always verify the order state before fetching return reasons. Use the IDs returned by this endpoint rather than hardcoding values.
Related Endpoints
| Endpoint | Purpose |
|---|---|
| Update / Return | Initiate a return using a reasonId from this endpoint in each items[] entry |
| Cancellation Reasons | Fetch valid reason codes for cancelling an order instead of returning |
| Order Details | Confirm an order is in Completed state before fetching return reasons |