pix-api
pix-api copied to clipboard
Duvidas sobre configurar WebHook
Estou lendo a documentação agora surgiu algumas duvidas. Fiz toda implementação, criei os certificado e validei. Agora sobre o webhook já passei minha URL de retorno mas não entendi esta parte. Para ativar o fluxo de autenticação via mTLS primeiramente é necessário baixar a CA (chave pública) do Itaú no seguinte link https://developer.itau.com.br/docs/ca-cert.zip. Após isso, essa CA deverá ser importada no API Gateway, servidor Proxy ou Aplicação que irá receber a requisição de Webhook. Pelo que vi eles passaram este certificado que o nosso servidor deve se comunicar com eles. Para funcionar então este webhook teria então só que instalar este certificado via servidor que vai se comunicar normalmente? Ou tenho algum outro código para implementar? Pelo que olhei o manual só aguardo o recebimento do pagamento ou devolução no webhook.
Você precisa também:
- Da informação de qual Common Name tem o certificado cliente que o Itaú vai usar, para comparar e rejeitar sistemas que não o autorizado
- Checar a chave Pix para a qual está indo o Pix, para evitar acionamento indevido por outro EC também cliente do Itaú
- Configurar o certificado que o Itaú exigir para mostrar do lado de vocês, conforme instruções deles para que eles validem que você é você mesmo. Pode ser um certificado da CA do Itaú ou um certificado de CA reconhecida, conforme o que eles especificarem.
3. Configurar o certificado que o Itaú exigir para mostrar do lado de vocês, conforme instruções deles para que eles validem que você é você mesmo. Pode ser um certificado da CA do Itaú ou um certificado de CA reconhecida, conforme o que eles especificarem.
Poderia ser um certificado autoassinado do cliente, já que ele vai enviar esse certificado para o Banco num ambiente autenticado?
3. Configurar o certificado que o Itaú exigir para mostrar do lado de vocês, conforme instruções deles para que eles validem que você é você mesmo. Pode ser um certificado da CA do Itaú ou um certificado de CA reconhecida, conforme o que eles especificarem.
Poderia ser um certificado autoassinado do cliente, já que ele vai enviar esse certificado para o Banco num ambiente autenticado?
Não, o manual de segurança do Pix veda especificamente essa possibilidade.
3. Configurar o certificado que o Itaú exigir para mostrar do lado de vocês, conforme instruções deles para que eles validem que você é você mesmo. Pode ser um certificado da CA do Itaú ou um certificado de CA reconhecida, conforme o que eles especificarem.
Poderia ser um certificado autoassinado do cliente, já que ele vai enviar esse certificado para o Banco num ambiente autenticado?
Não, o manual de segurança do Pix veda especificamente essa possibilidade.
Certo, obrigado pela resposta. Eu estava consultando o manual v3.1 e não achei essa informação lá. Essa é a última versão mesmo ou já tem alguma mais atualizada? Googlei aqui e não encontrei.
3. Configurar o certificado que o Itaú exigir para mostrar do lado de vocês, conforme instruções deles para que eles validem que você é você mesmo. Pode ser um certificado da CA do Itaú ou um certificado de CA reconhecida, conforme o que eles especificarem.
Poderia ser um certificado autoassinado do cliente, já que ele vai enviar esse certificado para o Banco num ambiente autenticado?
Não, o manual de segurança do Pix veda especificamente essa possibilidade.
Certo, obrigado pela resposta. Eu estava consultando o manual v3.1 e não achei essa informação lá. Essa é a última versão mesmo ou já tem alguma mais atualizada? Googlei aqui e não encontrei.
A última versão é a 3.2: https://www.bcb.gov.br/content/estabilidadefinanceira/cedsfn/Manual%20de%20Seguranca%20do%20PIX%20v3.2.pdf
Mas de fato isso está em outro documento: https://www.bcb.gov.br/content/estabilidadefinanceira/pix/Regulamento_Pix/II-ManualdePadroesparaIniciacaodoPix.pdf
Os certificados digitais dos clientes da API poderão ser emitidos pelo próprio PSP ou por ACs externas, conforme definido por cada PSP. Não deverão ser aceitos certificados auto-assinados pelo cliente.
Em tempo: esse é um dos motivos inclusive de Itaú e Bradesco estarem listados em #76 como não obedecendo à API padrão, em contravenção ao regulamento.
Perfeito, @rubenskuhl ! Muito obrigado pela resposta e pelas referências.
Continuando preciso alterar minha url de recebimento do webhook mas não esta funcionando a adição de uma outra URL. Estranho que faço as consultas dos webhooks cadstrados e me retorna nulo. Estou usando o Itau [webHookConsulta] => Array ( [parametros] => Array ( [inicio] => 2020-01-01T16:01:35Z [fim] => 2021-10-23T16:01:35Z [paginacao] => Array ( [paginaAtual] => 0 [itensPorPagina] => 100 [quantidadeDePaginas] => 1 [quantidadeTotalDeItens] => 0 )
)
[webhooks] => Array
(
)
[webHookConsultaStatus] => 200
)
Continuando preciso alterar minha url de recebimento do webhook mas não esta funcionando a adição de uma outra URL. Estranho que faço as consultas dos webhooks cadstrados e me retorna nulo. Estou usando o Itau [webHookConsulta] => Array ( [parametros] => Array ( [inicio] => 2020-01-01T16:01:35Z [fim] => 2021-10-23T16:01:35Z [paginacao] => Array ( [paginaAtual] => 0 [itensPorPagina] => 100 [quantidadeDePaginas] => 1 [quantidadeTotalDeItens] => 0 )
) [webhooks] => Array ( ) [webHookConsultaStatus] => 200 )
Ao que eu lembre é apenas uma URL por chave mesmo. E a consulta do Itaú está bugada, eles precisam consertar. (Junto com as demais falhas e discrepâncias do padrão...)
Estava tentando cadastrar mas vi que não funciona mesmo.
Em tempo: esse é um dos motivos inclusive de Itaú e Bradesco estarem listados em #76 como não obedecendo à API padrão, em contravenção ao regulamento.
Obrigado pelo reporte @rubenskuhl. Vou acionar o DECEM para averiguar a situação.
Pessoal vi que essa parte de implementação do webhook itau pela documentação ficou muito em aberto . Eles fornecem o certificado https://developer.itau.com.br/docs/ca-cert.zip, mas não foram muito especificos em como implementar. Alguém conseguiu implementar 100%, recebendo as notificações de cobrança e quando elas foram concluidas?
@NatalicioNasciment eu não conheço a solução do Itaú (sou da TI do Banco do Brasil), mas imagino que você vá configurar a URL do seu webhook fazendo uma chamada PUT na API do PIX passando a URL do webhook para a chave PIX correspondente, seguindo essa spec: https://openpix.com.br/api/API-PIX-2-0-0.html#tag/Webhook/paths/~1webhook/put
E o endpoint correspondente a essa URL que você vai enviar deve estar configurado para receber requisições via mTLS (nesse caso como server). Algumas referências/recursos que podem ajudar:
- https://mtls.run/
- https://github.com/bancodobrasil/api-mtls-sidecar-proxy
Olá pessoal, realmente a documentação da api do PIx ITAÚ não é muito clara. Fiz a mesma implementação do webhook ApiGateway + lambda com a api do gerencia Net. E funcionou. No caso da API do gerencia Net eles disponibilizam uma chave .crt
Na doc do ITAÚ eles disponibilizam duas nesse zip https://developer.itau.com.br/docs/ca-cert.zip
Vcs sabem qual adiciona no S3.? Ou como configura no API Gateway essas duas chaves. Fiz as configurações mas não recebo o callbak do WebHook
Nós implementamos mTLS webhook itau com sucesso, nunca tivemos problemas. Transacionamos e recebemos callback.
basta instalar a CA na cabeça do seu gateway e validar o certificado usado na requisição. dai pra frente se falhar é falha na sua aplicação. não tem segredo.
edit: não adianta achar que com LB L7 vai funcionar. não funciona. tem que ser L4.
@NatalicioNasciment, você conseguiu configurar (itau)?
@EvertonSA, essa é minha atual configuração no httpd:
<VirtualHost xxx.xx.xx.xxx:443>
Header set Access-Control-Allow-Origin *
Header set Access-Control-Allow-Methods POST,GET,DELETE,PUT,OPTIONS
Header set Access-Control-Allow-Headers X-Authorization,X-Requested-With
SSLEngine on
SSLCertificateFile /home/user/itau-cert/cert.crt
SSLCertificateKeyFile /home/user/itau-cert/private.key
SSLCertificateChainFile /home/user/itau-cert/ca.cer
</VirtualHost>
Se eu usar o "ca-cert.cer" e "CARoot.crt", fornecidos pelo itau, num desses caminhos, dá erro de configuração. Os arquivos configurados nos caminhos acima, foram gerados no servidor. Definitivamente, onde devo colocar estes arquivos acima? Poderia descrever com maiores detalhes como você fez?
@vandersondiniz1 tudo bem ? Esse é o problema e que a documentação não deixava tão claro (nao sei como ta hj).
Essas chaves devem ser unificadas em um arquivo único "ca-cert.cer" + "CARoot.crt" = novoarquivo.crt
Ai com esse novo arquivo deveria funcionar. Para o meu cenário funcionou
@cleytongamazup , opa, tudo ótimo! Vamos lá, vou ver o que consigo por aqui. Essa sua mensagem já será um avanço.
Opa @vandersondiniz1 no meu cenário fiz isso e funcionou. Já uso a api do PIX do Itaú em produção
@NatalicioNasciment eu não conheço a solução do Itaú (sou da TI do Banco do Brasil), mas imagino que você vá configurar a URL do seu webhook fazendo uma chamada PUT na API do PIX passando a URL do webhook para a chave PIX correspondente, seguindo essa spec: https://openpix.com.br/api/API-PIX-2-0-0.html#tag/Webhook/paths/~1webhook/put
E o endpoint correspondente a essa URL que você vai enviar deve estar configurado para receber requisições via mTLS (nesse caso como server). Algumas referências/recursos que podem ajudar:
- https://mtls.run/
- https://github.com/bancodobrasil/api-mtls-sidecar-proxy
O BB vai passar a operar com mTLS e seguir o padrão BACEN ?
Boa noite @vandersondiniz1 , conseguiu implementar? gostaria de saber o que fez com os dois arquivos baixados no itau( ca-cert.cer e ca-cert.cer)
Olá @tiagojosebogoni , boa noite! Ainda não. Prosseguimos com uma outra API semelhante aqui e deu certo. Acho que retomaremos essa questão amanhã. Quando conseguirmos solucionar, eu passo aqui para dizer a solução.
Olá alguem coseguiu implementar? @vandersondiniz1, @cleytongamazup
Olá alguem coseguiu implementar? @vandersondiniz1, @cleytongamazup
Olá Tiago, consegui sim . Como comentei mais acima , o problema no meu caso era unificar as duas chaves que eles enviaram. E criar um único PEM.
@vandersondiniz1 tudo bem ? Esse é o problema e que a documentação não deixava tão claro (nao sei como ta hj).
Essas chaves devem ser unificadas em um arquivo único "ca-cert.cer" + "CARoot.crt" = novoarquivo.crt
Ai com esse novo arquivo deveria funcionar. Para o meu cenário funcionou
@tiagojosebogoni
Olá pessoal,
Estou com problemas para conseguir fazer funcionar a chamada de webhook do Itaú para minha aplicação. Meu cenário possui o IIS 10, foi difícil encontrar um exemplo de como configurar o IIS para uso do mTLS e o único caso foi um vídeo onde é feita integração com a gerencianet, tentei aplicar o conceito no meu caso com Itaú mas sem sucesso, a chamada a minha url não acontece.
Alguém aí conseguiu com Itaú, usando o IIS?
@erichelfenstens fiz porém foi com Linux amigo. Boa sorte.
Olá pessoal,
Estou com problemas para conseguir fazer funcionar a chamada de webhook do Itaú para minha aplicação. Meu cenário possui o IIS 10, foi difícil encontrar um exemplo de como configurar o IIS para uso do mTLS e o único caso foi um vídeo onde é feita integração com a gerencianet, tentei aplicar o conceito no meu caso com Itaú mas sem sucesso, a chamada a minha url não acontece.
Alguém aí conseguiu com Itaú, usando o IIS?
Não sei se o @renatofrota testou o mtls.pix.ae com o Itaú, mas se quiser tentar:
Pra usar é muito simples: é só prefixar o seu domínio com mtls.pix.ae/. Por exemplo:
Para: https://exemplo.com.br/webhookpix
Use: https://mtls.pix.ae/exemplo.com.br/webhookpix
Obs: no ambiente de homologação, prefixe com mtls-h.pix.ae/```
Funcional apenas com a Gerencianet no momento, mas se o amigo quiser eu posso adicionar suporte ao Itaú, o que será possível gratuitamente se o certificado cliente for de uso geral, como na GN. Se o certificado for individual por cliente, o serviço de intermediação da notificação pode ser conversado, como um serviço pago.
Em ambos os casos, meu e-mail é meu usuario aqui, no gmail, ou pode usar o email divulgado no pix.ae.
Em seg, 4 de abr de 2022 19:13, Rubens Kuhl @.***> escreveu:
Olá pessoal,
Estou com problemas para conseguir fazer funcionar a chamada de webhook do Itaú para minha aplicação. Meu cenário possui o IIS 10, foi difícil encontrar um exemplo de como configurar o IIS para uso do mTLS e o único caso foi um vídeo onde é feita integração com a gerencianet, tentei aplicar o conceito no meu caso com Itaú mas sem sucesso, a chamada a minha url não acontece.
Alguém aí conseguiu com Itaú, usando o IIS?
Não sei se o @renatofrota https://github.com/renatofrota testou o mtls.pix.ae com o Itaú, mas se quiser tentar:
Pra usar é muito simples: é só prefixar o seu domínio com mtls.pix.ae/. Por exemplo:
Para: https://exemplo.com.br/webhookpix
Use: https://mtls.pix.ae/exemplo.com.br/webhookpix
Obs: no ambiente de homologação, prefixe com mtls-h.pix.ae/``` http://mtls-h.pix.ae/
— Reply to this email directly, view it on GitHub https://github.com/bacen/pix-api/issues/313#issuecomment-1088064083, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAZ2XSWRXTFHHDDJPYJA6XLVDNSQVANCNFSM4XIZUDMQ . You are receiving this because you were mentioned.Message ID: @.***>