Histórico de mensagens sobre n em dúvidas

EXIBINDO CONVERSAS RECENTES:

Texto: n
Data: 29/11/2023
Canal: dúvidas
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Correto. Mas não custa nada checar a chave Pix, o txid e o valor.

Avatar discord do usuario meliodas7010

meliodas7010

Ver Respostas

entao se o corpo da requisição nao tem devolucoes é sem duvida um pagamento, correto?

Avatar discord do usuario meliodas7010

meliodas7010

Ver Respostas

mas uma cobrança pix paga normalmente seria com esse corpo de requisição, correto? Não há alguma forma de identificar qual a natureza da requisição?

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Você precisa lidar com eventuais repetições para garantir idempotência. Mas fora repetições fortuitas, um possível motivo para receber um webhook de um Pix depois do pagamento é você comandar devoluções. Mas ainda você pode anotar na tabela algo como "solicitei devolução", para então tratar o campo de devolução.

Avatar discord do usuario meliodas7010

meliodas7010

Ver Respostas

ah! certo. Essa parte de webhook esta um pouco confusa pra mim pois não consigo testar localmente.
Na documentação mostra o corpo da requisição pix, mas ainda estou um pouco confuso. Gostaria de saber se estou tendo o approach correto:
Eu gero a cobrança pix pro meu cliente e salvo no meu banco aquela cobrança como pendente usando o txid como identificador. No meu webhook eu recebo a requisição:

// Pix recebido
{
"pix": [
{
"endToEndId": "E1803615022211340s08793XPJ",
"txid": "fc9a43k6ff384ryP5f41719",
"chave": "2c3c7441-b91e-4982-3c25-6105581e18ae",
"valor": "0.01",
"horario": "2020-12-21T13:40:34.000Z",
"infoPagador": "pagando o pix"
}
]
}
O que quer dizer que o pix com txid fc9a43k6ff384ryP5f41719 foi pago no valor de 0.01, então verifico aquela transação salva no meu banco e continuo minha logica a partir desse ponto. Esta correto?
Minha duvida é se eu vou receber outras requisições no meu webhook com o mesmo txid podendo assim fazer minha logica ser executada mais de uma vez

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Em produção é para qualquer valor. Em homologação que você decide o caso de teste usando o valor.