Idempotência e retries

Retries seguros sem comissões duplicadas.

Chave de idempotência

Eventos comerciais são únicos em (business_id, source, external_event_id). Business e source vêm da credencial. Reenviar o mesmo triplo devolve o resultado anterior com HTTP 200 e replayed: true.

Idempotência de evento + comissão + ledger· implementado

Orientação de retry

  • Em timeout ou 5xx, retry com o mesmo external_event_id
  • Gere novo X-AACT-Timestamp e X-AACT-Nonce em cada tentativa
  • Reassine o mesmo raw body (ou JSON bytes idênticos)
  • Trate 409/422 como não retry sem corrigir o payload
  • Respeite 429 com backoff

Garantia de rede exactly-once· não suportado