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
[
  { "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.

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