Returns on the Order
Read an order’s return requests from the order itself
Return requests on an order are available on the order itself. GET /orders/{orderId} and the
GET /orders list both carry a returns array on each order, so you can read an order and its
return requests in one call — no separate request to the returns endpoints.
The returns field
Every order in GET /orders/{orderId} and the GET /orders list includes:
returns— the return requests on the order, newest first.[]when none have been opened;nullwhen the return data could not be read (the order itself is still returned).
Each entry mirrors a return request: an id, createdAt/updatedAt timestamps, and the requested
items. Each item names the product by sku — the same sku on the order’s lineItems — and
carries its per-line status (PENDING, APPROVED, or DENIED) and, when denied, a denialReason.
{
"id": "SIBI-12345678",
"status": "Processed",
"lineItems": [{ "sku": "GDF510PSRSS", "name": "GE Dishwasher", "quantity": 1 }],
"returns": [
{
"id": "RET-12345XYZ",
"createdAt": "2026-09-04T15:30:45.123Z",
"updatedAt": "2026-09-05T09:12:03.900Z",
"items": [
{
"sku": "GDF510PSRSS",
"quantity": 1,
"condition": "UNOPENED",
"requestReason": "Ordered the wrong size",
"status": "DENIED",
"denialReason": "Item is outside the return window"
}
]
}
]
}
A returns of null means the return data could not be read for this order on this request — the
order is still returned, so retry to read its returns. An empty returns means the order genuinely
has none.
Opening a request and learning the outcome
POST /orders/{orderId}/returns on the Returns API.
Decisions are made by Sibi staff; subscribe to the
Order Return Requests events to learn when a line is approved or
denied, or re-read the order to see the current per-line status.