Idempotency keys are not supported on wallet top-up and void API calls

Last updated: June 29, 2026

Wallet top-up and void API calls do not currently support an Idempotency-Key the way usage ingestion does. As a result, an HTTP retry of a top-up or void request can apply the operation twice, double-crediting or double-voiding a wallet. Adding idempotency-key support to these endpoints is an open feature request rather than existing behavior.

Why duplicates happen

When a client automatically retries a request it believes failed (for example on a timeout), a top-up or void with no idempotency guard is processed again as a fresh operation. Usage event ingestion avoids this because it accepts an idempotency key, so a repeated event is recognized and not double-counted. The wallet top-up and void endpoints do not yet have that mechanism.

How to avoid duplicates today

Until idempotency keys are supported on these endpoints, guard against duplicates on your side:

  • Make retries safe: only retry a top-up or void after confirming the previous attempt did not succeed, rather than retrying blindly on any error.

  • Verify before acting: check the wallet's recent transactions before re-issuing a top-up or void, so a successful-but-timed-out call is not repeated.

If idempotency-key support for wallet top-ups and voids ships, this guidance will be superseded by the native key. It is worth voting on the tracked request if this affects you.


This article reflects guidance drawn from customer case resolutions. It is not officially supported documentation and may not apply to all situations.