Como recuperar callbacks de stablecoins sem duplicar créditos
O cliente transferiu, mas o saldo não mudou. Verifique separadamente a transação na blockchain, o pedido no gateway e o crédito no seu sistema. URL inacessível, assinatura inválida e tempo de processamento excedido podem interromper a atualização.
Localize a falha
Consulte o pedido e confira a URL pública, o certificado HTTPS, o proxy e os registros do receptor. Diferencie solicitações não recebidas, assinaturas rejeitadas, erros de processamento e respostas perdidas. Registre identificadores, horários e resultados sem expor segredos.
Valide o corpo original
O UUGate usa callbackSecret para callbacks, com finalidade diferente da API Key do comerciante. Preserve o corpo original e siga as verificações de timestamp, nonce e assinatura da documentação. Não reformate o JSON antes da validação nem desative a assinatura para liberar uma fila pendente.
Garanta apenas um crédito
Crie uma restrição de unicidade com a identidade do comerciante e o número do pedido no gateway. Atualize o pedido e o saldo na mesma transação de banco de dados. Apenas consultar antes de creditar não protege contra callbacks simultâneos.
Um endereço pode receber várias recargas e não é uma chave adequada de deduplicação. O callback e a recuperação por consulta devem usar a mesma lógica de crédito.
Confirme após persistir
Se o processamento for rápido, responda com sucesso após confirmar a transação. Para processamento assíncrono, valide e grave o evento em uma fila persistente antes de responder. Monitore falhas e acúmulo de eventos. Confirmar algo mantido apenas em memória pode causar perda após um reinício.
Recupere pedidos pendentes
Depois de restabelecer o serviço, consulte pedidos incompletos e aplique as mesmas validações de comerciante, pedido, ativo, rede e valor, com processamento idempotente. Uma tela de sucesso ou captura enviada pelo cliente não basta para creditar.
Teste callbacks duplicados e simultâneos, resposta perdida após o crédito, reinícios e recuperação por consulta. Veja os campos e estados na documentação da API, conheça a solução de integração e consulte os limites dos planos.