| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Created |
| 400 | Bad Request |
| 401 | Unauthorized |
| 402 | Payment Required |
| 403 | Forbidden |
| 404 | Not Found |
| 409 | Conflict (duplicate) |
| 422 | Validation error |
| 500 | Internal Server Error |
| 502 | Bad Gateway |
{ "code": "error_code", "message": "Human-readable message", "details": { "field": "context" } }not_found— Resource not foundvalidation_error— Bad/missing parameter (checkdetails)bad_request— Malformed requestalready_exists— Duplicate (e.g. idempotency key)internal_error— Server-side issue
unauthorized,forbidden,invalid_token,token_expired
insufficient_funds— Low wallet balance (details includerequired/availablein cents)payment_failed,payment_method_required,invalid_payment_method
invalid_shipping_address— Address validation failedurl_unreachable— Product URL inaccessibleinvalid_variant— Variant not foundout_of_stock,shipping_unavailable,non_us_retailer,order_not_cancellable
external_service_error
These appear in error_type field on failed orders:
product_not_found, product_out_of_stock, product_unavailable, invalid_product_url, product_variant_required, product_variant_unavailable, product_quantity_unavailable
max_price_exceeded
add_to_cart_failed, cart_empty, checkout_blocked, checkout_failed
shipping_address_invalid, shipping_unavailable, shipping_method_unavailable
payment_declined, payment_method_invalid, payment_failed
login_failed, session_expired, account_locked, account_verification_required
retailer_unavailable, retailer_not_supported, retailer_rate_limited
quantity_limit_exceeded, order_limit_exceeded