Overview
The Payment Links and Payment Intents endpoints use different error envelopes. Always branch on thecode, not on the wording of the message, which can change between releases.
For cross-cutting handling (HTTP status ranges, retry and reconciliation rules), see Errors.
Payment Links errors
The Payment Links API returns a nested envelope:correlation_id (also returned as the x-correlation-id response header). Platform-generated authentication, authorization, and rate-limit errors use the same shape but might omit correlation_id.
Design note - why cross-tenant reads return
404, not 403. Requesting a link that belongs to another entity returns 404 NOT_FOUND, the same as an id that does not exist. A 403 would confirm the link exists, leaking information across tenants. Returning 404 gives no such existence oracle.Payment Intents errors
The Payment Intents API returns a flat envelope:Next Steps
Payment Links
Create and manage hosted checkout links
JavaScript SDK
Take card payments in the browser
Global errors
HTTP status ranges and retry rules
Testing
Test cards and error scenarios