Skip to main content
HTTP status: 409 · Title: “Confirmation expired”

When it fires

POST /v1/trades/{id}/confirm was called after the trade’s confirmation token expired. High-value trades must be confirmed within a short window: 60 seconds by default, with the exact deadline returned as confirmation.expiresAt in the create response.

Why it happens

  • A human-in-the-loop approval took longer than the window allows.
  • Latency in your own pipeline between receiving the token from POST /v1/trades and calling confirm.

How to fix

  • Call confirm as soon as you receive the token.
  • If your approval flow genuinely needs longer, contact ZeroID support about your key’s confirmation window.
  • An expired trade is not executed. Create a new trade to retry.