Author Image

.andregomes

Apr 15, 2024

Aproveitando um Único Webhook para Verificar Pagamentos de Vários Clientes

integraçãowebhookAPI PixservidorSSLnotificação de pagamentochave pixtxidgerenciamentoclientes

pessoal, eu vi aqui o video sobre webhook, foi criado um servidor linux em uma vps na DigitalOcean, e lá foi configurado um servidor apache, com ssl, e tambem foi adicionado o certificado da Efi, configuração de dominio etc...

na criação do qr code, apontando para o webhook configurado, quando o cliente paga o qrcode, o servidor da Efi envia uma notificação para o webook, maravilha!

mas como que ficaria, um cenario onde eu tenho varios clientes diferentes? como eu posso aproveitar se é possivel, um só webhook e verificar qual pix foi pago, e de qual cliente?

Respostas (3):
Avatar discord do usuario .ilselangnar

.ilselangnar

15/04/2024

Acredito andré, que quando você recebe o webhook, ele carrega informações sobre o pagamento, na qual você consegue diferenciar os clientes.

Avatar discord do usuario guilherme_efi

guilherme_efi

15/04/2024

@.andregomes, quando você registra o webhook no endpoint PUT /v2/webhook/:chave, você está basicamente associando uma chave Pix a uma URL específica. No seu caso, a URL permanecerá a mesma, mas a chave será única para cada conta de cliente.

Assim que nossa API enviar a notificação, o JSON incluirá essa chave. Isso permitirá que você identifique de qual conta é aquele recebimento. Além disso, através do txid, você poderá saber a qual cobrança se refere.

Avatar discord do usuario guilherme_efi

guilherme_efi

15/04/2024

Além disso, quando você estiver registrando a webhook URL no endpoint PUT /v2/webhook/:chave, na sua URL você pode acrescentar algum parâmetro para diferenciar a URL de cada cliente, e assim fazer alguma tratativa na sua aplicação. Exemplo:

Obs: Se for aplicar esta regra com um parâmetro na URL, aconselho deixar sempre o final um parâmetro sem valor, como no exemplo acima &tipo=. Que assim, o /pix cairá como parâmetro no final da URL, e você irá tratar a notificação em /webhook.