Docs

Errors and retries

Handle payment errors with a clear next step.

Use the error code to choose the next step. Retry only when the response allows it, and use idempotency keys to avoid duplicate checkouts.

UNAUTHORIZEDCheck that you are using the API key for this integration.
IDEMPOTENCY_KEY_REUSEDUse a new key, or retry with the exact same request body.
SESSION_NOT_PAYABLERefresh the checkout session before your customer continues.
PAYMENT_AMOUNT_MISMATCHRefresh the checkout session and use the current amount.
RATE_LIMITEDWait for retry_after_seconds before retrying.

See MerchantErrorCode in the OpenAPI schema for the complete list of error codes.

Idempotency

Retry a request without creating a duplicate payment.

Send one Idempotency-Key with each checkout or invoice-line request. Retry with the same key and the same body. Use a new key for different payment details.

When to fulfil

Fulfil only after successful checkout status and matching amount, currency, and invoice reference.

Refunds and reversals

Confirm the available process with Quid Payments before you promise a refund or reversal to a customer.

Match your records

Use invoice_ref, checkout ID, and event ID to connect payment records.