Gett Developer Portal
  • Welcome
  • Distribution Partners
  • Brand Partners
  • Commerce Partners
  • Ecosystem Partners
  • Errors
  • API Reference
Documentation
  • Get Started
  • Marketfront SDK
  • API Reference
Resources
  • Payments
Company
  • Gett
  • Terms of Service
  • Privacy Policy

Copyright 2026 Gett. All rights reserved.

409 Conflict403 Forbidden500 Internal Server Error400 Bad Request404 Not Found429 Too Many Requests503 Service Unavailable401 Unauthorized502 Bad Gateway422 Unprocessable EntityCATALOGSET_NOT_FOUNDCATALOGSET_REQUIREDCLIENT_CONTEXT_REQUIREDCLIENT_IP_INVALIDCLIENT_USER_AGENT_INVALIDITEM_UNAVAILABLEMODIFIER_REQUIREDORDER_TOTAL_DIFFERENTPRECISION_EXCEEDEDCARD_EXPIREDCARD_LOST_OR_STOLENINCORRECT_CVCINSUFFICIENT_FUNDSPAYMENT_DECLINEDPAYMENT_FAILEDPAYMENT_TOKEN_INVALIDPROCESSING_ERRORSESSION_USER_REQUIREDSTORE_CLOSEDSTORE_NOT_FOUND
powered by Zuplo
Errors

CARD_LOST_OR_STOLEN

CARD_LOST_OR_STOLEN

The card has been reported lost or stolen and the issuer has blocked it. This is a permanent decision about the credential.

Summary

FieldValue
Appears aserrors[].code
ResponseHTTP 200 — Order with isValid: false and a populated errors[]
Retry the same cardNever

This is a reason code, not a top-level error code

CARD_LOST_OR_STOLEN is an errors[].code value on the order. It is not a top-level ProblemDetail.errorCode, so it carries no HTTP status, errorCategory, or retryable field of its own. See Unified OrderError shape.

When This Fires

  • POST /v1/marketfront/orders/place — a payment refusal identified the card itself as blocked.

Expect this code to be rare. Issuers seldom disclose that a card is flagged — a blocked card is normally refused with an unattributed decline, which reaches you as PAYMENT_FAILED. Handle CARD_LOST_OR_STOLEN as the case where the reason was disclosed, not as the code you will see whenever a card is blocked.

Recommended Action

Fail the payment, ask for a different payment method, and never resubmit this credential. Unlike the other decline reasons, retrying is not merely futile — reattempting an authorization against a card the issuer will never approve can carry card-scheme penalties.

Do not tell the customer why

Show a generic payment failure. Do not render this code's name, and do not explain that the card is reported lost or stolen — whoever is holding the card may not be its owner.

This is why the message we return for CARD_LOST_OR_STOLEN is deliberately identical in shape to a plain PAYMENT_FAILED message. The split is intentional: the machine-readable code tells you the truth so you can suppress the retry, while the human-readable message is the text meant for the customer. Render message, not code.

Card networks require that you not complete the transaction. The stricter practice of withholding the reason from the cardholder is standard payment-processor guidance rather than a published network rule, but it is the behaviour our curated messages assume.

Example

Code
{ "isValid": false, "errors": [ { "code": "CARD_LOST_OR_STOLEN", "message": "We couldn't process your payment. Please try a different payment method.", "pointer": null } ] }

Note that message says nothing about the card being flagged. That is deliberate — see the warning above.

CARD_EXPIREDINCORRECT_CVC
On this page
  • Summary
  • When This Fires
  • Recommended Action
  • Example
JSON