| Field | Value |
|---|---|
| Type URI | https://developer-next.ingrid.com/ingrid-api/errors/delivery/offer-expired |
| Title | Offer Expired |
| Recommended Status | 422 Unprocessable Entity |
The offer-expired error is returned when creating an order with a token whose delivery offer has expired. Each delivery option returned by POST /v1/delivery/options includes a deliveryTime.expires timestamp. If the order is created after this time, the offer is no longer valid.
- The customer took too long to complete the checkout after delivery options were fetched
- The application cached delivery options and attempted to use a stale token
- The delivery time window has passed since the options were originally retrieved
- Re-fetch delivery options by calling
POST /v1/delivery/optionswith the current cart and destination - Present the updated delivery options to the customer
- Retry order creation with the fresh token from the new options response
To avoid this error, monitor the deliveryTime.expires field in the options response and proactively refresh options before they expire.
{
"type": "https://developer-next.ingrid.com/ingrid-api/errors/delivery/offer-expired",
"title": "Offer Expired",
"status": 422,
"detail": "The delivery offer has expired. Please re-fetch delivery options and retry.",
"trace_id": "abc-123-def-456"
}