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

ParameterInTypeRequiredDescription
orderIdpathstringrequiredThe 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.

FieldTypeDescription
idstringReason code to pass as reasonId in each item of the update request
descriptionstringHuman-readable label for the return reason
[
  { "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 IDDescriptionNotes
001Received wrong item
002Item damaged during delivery
003Item not as describedUsed in examples
004Expired product received
005Missing 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.

EndpointPurpose
Update / ReturnInitiate a return using a reasonId from this endpoint in each items[] entry
Cancellation ReasonsFetch valid reason codes for cancelling an order instead of returning
Order DetailsConfirm an order is in Completed state before fetching return reasons