Skip to main content
An idempotency key lets you retry a PanoFlow request without doing the work twice. If a payment request times out or a partner bank is unavailable, send the same request again with the same Idempotency-Key and PanoFlow either finishes the original or replays its response.

When to send one

The Idempotency-Key header is required on every POST that moves money or creates a money-moving object: On every other POST the header is optional, and PanoFlow honours it when you send it.

How it works

  • The key is a string you generate, 1 to 255 characters. A UUIDv4 is recommended.
  • PanoFlow stores each key for 7 days.
  • Same key and same body: you get the original response back, with the header Idempotent-Replayed: true.
  • Same key and a different body: 409 idempotency_key_reused.

Retrying

Generate the key once per payment you intend to make, store it with the payment in your system, and reuse it on every retry of that payment.
Once a payout has gone to the bank, a timeout on PanoFlow’s side is resolved by a status check with the bank, never by sending the payment again.