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