Histórico de mensagens sobre webhook pix em devs

EXIBINDO CONVERSAS RECENTES:

Texto: webhook pix
Canal: devs
Avatar discord do usuario leonammoura

leonammoura

Ver Respostas

Bom dia, pessoal. Estou desenvolvendo uma aplicação onde os usuários poderão cadastrar suas chaves pix para receber pagamentos das vendas de seus produtos cadastrados na aplicação.

Eu gostaria de saber se é possível gerar cobranças e criar webhooks mesmo que as chaves pix dos usuários sejam de outros bancos.
Por exemplo, com uma aplicação configurada com minhas credenciais e certificado, posso cadastrar um webhook para uma chave pix de um terceiro (usuário) de outro banco e gerar cobranças para esta chave pix, além de acompanhar os status da cobrança?

Avatar discord do usuario c45lu

c45lu

@joao_efi Será que você poderia me ajudar? Conforme print, pelo postman, consigo obter a informação de uma chave de pix no webhook, porém, eu preciso obter informações de uma transação pix, como exemplo, se um pix foi pago através do txid ou o que seja... Como posso conseguir isso? Será meu primeiro webhook na vida.
imagem enviada na mensagem pelo usuario c45lu

Avatar discord do usuario c45lu

c45lu

Ver Respostas

No caso eu vou manter da forma que está funcionando para não me prolongar em um novo trabalho, o que eu estou muito querendo mesmo é conseguir utilizar o webhook para receber informações de um determinado pagamento PIX, mas não consegui de jeito algum, utilizei o postman para realizar os testes e funcionou entre aspas, não soube fazer a captação de um determinado pagamento pix.

Avatar discord do usuario c45lu

c45lu

Ver Respostas

Entendi, funfou, só não não estou conseguindo saber como faço para obter as informações das transações via webhook, por exemplo: Acabei de realizar uma transação via pix api, queria pegar as informações desse pix, não estou sabendo onde faço isso.

Avatar discord do usuario lucasnzxt

lucasnzxt

Bom dia, alguém conhece algum tutorial da Efí + Node.js com Webhook para pagamento via PIX atualizado??

Avatar discord do usuario angelart

angelart

Pessoal, boa noite!!

me ajudem com um pequeno problema, estou consumindo a api de pix por aspnet core e tudo corre muito bem ate um certo ponto, o fluxo è o seguinte:

1 - Endpoint para gerar autenticacao é chamado >>
2 - eu chamo o endpoint para criar o pedido passando o token de acesso >>
3 - com a ordem criada, eu uso o Loc.id e o token para gerar o QrCode >>

Perfeito, ate ai funciona, agora o meu cliente faz o pagamento e entra em ação o webhook:

1 - Meu webhook é disparado com a confirmação de pagamento, algo como esse exemplo abaixo>>

json
{
"pix": [
{
"endToEndId": "123123123123123123abcabcabc",
"txid": "7777766666655555444443333",
"chave": "[email protected]",
"tipo": null,
"status": null,
"valor": "9.00",
"horario": "2023-07-25T21:27:57+00:00",
"infoPagador": null,
"devolucoes": null,
"gnExtras": null
}
]
}

2 - Agora que tenho o txid eu vou chamar meu endpoint la na api para consultar esse pagamento, usando o "/v2/cob/:txid" >>
3 - Dentro do meu endpoint para consultar o pagamento eu vou gerar um token (o mesmo metodo que usei la no inicio) para poder consultar o txid >>
4 - Mas dessa vez o token simplesmente nao retorna NADA...

o que me intriga é que é o mesmo metodo que uso para gerar a order no inicio e funciona perfeitamente...

esse é o metodo:
imagem enviada na mensagem pelo usuario angelart

Avatar discord do usuario guilherme_efi

guilherme_efi

Bom dia, @sheikzadarevo! Tudo bem?
A URL de notificação não é definida na emissão da cobrança Pix.

Você deve associar uma URL de notificação a sua chave Pix, então as cobranças Pix que tiverem um txid e sua chave Pix, nós iremos enviar a notificação para a URL registrada. Essa configuração pode ser feita uma única vez através do endpoint PUT/v2/webhook/:chave (https://dev.gerencianet.com.br/docs/api-pix-endpoints#configurar-o-webhook-pix).

Pontuando que para registrar sua URL de notificação, seu servidor deve possuir algumas configurações para atender a comunicalção com mTLS. Você encotra mais detalhes em nossa documentação: https://dev.gerencianet.com.br/docs/api-pix-endpoints#webhooks

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @israelcosta.
Acredito então, como não vai configurar no Apache ou Nginx o mTLS, você deverá registrar sua webhook URL com o atributo x-skip-mtls-checking=true
Veja mais detalhes e pontos de atenção em nossa documentação: https://dev.gerencianet.com.br/docs/api-pix-endpoints#skip-mtls

Segundo ponto, os callbacks são enviados pela Efí via POST ​/pix quando há uma alteração no status do Pix. Então nestas rotas você deve esperar Route:post.

Por último, adicione também a rota POST '/webhook', pois é feito uma requisição de teste nela também.

Avatar discord do usuario israelcosta

israelcosta

Ver Respostas

Quem já trabalhou com Laravel sabe dizer se funciona dessa maneira ao invés de suar Alias?


use Illuminate\Http\RedirectResponse;

// Redireciona /webhook/pix/ para /webhook
Route::get('/webhook/pix/', function () {
return new RedirectResponse('/webhook');
});

// Redireciona /webhook/pix para /webhook
Route::get('/webhook/pix', function () {
return new RedirectResponse('/webhook');
});

Avatar discord do usuario israelcosta

israelcosta

No meu caso estou utilizando Laravel


SSLVerifyClient require
SSLVerifyDepth 3


# Tratando o /pix, redirecionando as requisições sempre para /webhook
Alias "/webhook/pix/" "/var/www/webhook/index.php"
Alias "/webhook/pix" "/var/www/webhook/index.php"

Avatar discord do usuario israelcosta

israelcosta

Poderia me explicar essa linha?

# Tratando o /pix, redirecionando as requisições sempre para /webhook
Alias "/pix/" "/var/www/webhook/index.php"
Alias "/pix" "/var/www/webhook/index.php"

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Agora você precisa colocar a tratativa para receber as notificações na rota /webhook/pix

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Exato. Essa é uma definição do banco central, que ao enviar a notificação deve ser adicionado o /pix no final da sua URL registrada.

Ou seja, na request PUT https://api-pix.gerencianet.com.br/v2/webhook/:chave você irá passar o body com sua URL, exemplo:

No entanto, enviaremos as notificações com o /pix no final, assim: https://seudominio.com.br/webhook/pix.

Então esta adição do /pix dever ser tratada nas configurações de seu servidor para que na rota /webhook/pix de seu servidor exija o certificado CA do mTLS.
imagem enviada na mensagem pelo usuario guilherme_efi

Avatar discord do usuario israelcosta

israelcosta

Boa tarde, na notificação que a APi retorna para o WebHook vem somente esses atributos:

{
"pix": [
{
"endToEndId": "E18236120202306111751s061d2234ff",
"txid": "11fd8cebbe7648f29119b8bdb79792e3",
"chave": "2b14b01e-e585-48ff-86ac-3b63b540850c",
"valor": "0.01",
"horario": "2023-06-11T17:51:18.000Z"
}
]
}


Ou tem mais atributos opcionais?

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @higris!
Você pode criar um certificado com Certbot (https://certbot.eff.org/instructions) para preencher os campos referentes ao certificado do domínio.

Já o certificado público da Efí, você pode baixar diretamente através dos links abaixo:
Produção: https://pix.gerencianet.com.br/webhooks/chain-pix-prod.crt
Homologação: https://pix.gerencianet.com.br/webhooks/chain-pix-sandbox.crt
Você os encontra também em nossa documentação: https://dev.gerencianet.com.br/docs/api-pix-endpoints#exemplos-de-configura%C3%A7%C3%B5es-de-servidor

Avatar discord do usuario higris

higris

Ver Respostas

Boa tarde time. Eu estou implementando o webhook para PIX e estou com certas dificuldades de entender / implementar elas. Estou seguindo o github do gn-node.js.
Nessa função que criei, basicamente copia e cola do github. Ao tentar rodar a mesma, eu recebo o seguinte erro :
{
chave: 'format',
caminho: '.body.webhookUrl',
mensagem: 'a validação do formato falhou "url"'
}
Não sei se o fato de eu estar usando localhost para a webhookurl está ocasionando isso, mas por enquanto minha aplicação só funciona em localhost, então gostaria de idéia ou feedback de voces, mais experts kk, estou começando a jornada por agora.
Se veem que precisa de mais algum dado pra checar, só pedir que eu envio !
imagem enviada na mensagem pelo usuario higris

Avatar discord do usuario guilherme_efi

guilherme_efi

Olá, @israelcosta. Bom dia, como vai?
Primeiramente, para que recebe as notificações a cerca do Pix vocÊ deve configurar uma webhook URL associada a uma chave Pix da sua conta Efí. Desta forma, cobranças Pix com essa chave que forem pagas ou tiveram devoluções, acionaremos seu webhok para notificação.
No link a seguir você encontra os detalhes para configurar o webhook: https://dev.gerencianet.com.br/docs/api-pix-endpoints#configurar-o-webhook-pix

Depois de ter os webhook configurado, você pode testar no ambiente de homologação, basta criar a cobrança atendendo as seguintes regras:
Se o valor da cobrança está entre R$ 0.01 à R$ 10.00:
-A cobrança é confirmada, informação virá via Webhook.
Se o valor da cobrança é maior que R$ 10.00:
-A cobrança permanece ativa, sem confirmação. Como não há webhook nesses casos, nada é feito

Avatar discord do usuario yasmin_efi

yasmin_efi

Ver Respostas

Boa tarde @jailsonjarvis ! Isso mesmo, para receber as notificações de um pagamento pix deve cadastrar um webhook. Dentro da SDK de flutter tem o endpoint para fazer esse cadastro: https://github.com/gerencianet/gn-api-sdk-dart/blob/main/example/pix/webhook/pixConfigWebhook.dart

Avatar discord do usuario jessica_efi

jessica_efi

Boa tarde @mauriciosarmento ! Seria conforme o Rubens mencionou mesmo. Em nossa documentação, você encontra toda a descrição de como configurar seu servidor e realizar o cadastro do webhook. https://dev.gerencianet.com.br/docs/api-pix-endpoints#webhooks