Skip to main content
A network error does not tell you whether the API received your request. Idempotency lets you send it again without charging twice.

Send a key

Every POST and PATCH that changes state requires an Idempotency-Key header. A request without it is refused with 400.
  • Use a value you generate once per operation, such as a V4 UUID. Up to 255 characters.
  • Do not put personal data in the key.
  • Keys are scoped to your account and mode (test or live). The same key in test and live is two different keys.
  • GET requests are safe by nature and take no key. POST /v1/eligible-methods is a read and takes no key either.

What happens on a retry

Keys are kept for at least 24 hours. Use a new key for every new operation; never recycle one.
Retrying POST /v1/payments with the same key is also how a server gets the client_secret back if it lost the first response.

In the SDKs

The browser client, @tagadapay/core-js/payments-v3, sends a fresh UUID with every command and reuses it on its own retries. A new method call gets a new key.