Histórico de mensagens sobre webhook

EXIBINDO CONVERSAS RECENTES:

Texto: webhook
Data: 17/01/2025
# pix
Avatar discord do usuario samucca9675

samucca9675

Ver Respostas

A minha rota e um post de /webhook(pix)?

Nesse caso eu preciso cadastrar 2 chaves, eu teria que chamar minha url.

https://url.com.br/webhook

Poderia me dar um exemplo, nao entendi da documentação como cadastrar a chave

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Você pode usar a mesma rota para tratar webhook de contas diferentes se assim preferir. No webhook vem a chave Pix destino do Pix, e por ela você sabe de quem é aquele Pix.

# pix
Avatar discord do usuario gabriel_efi

gabriel_efi

Ver Respostas

Olá, @samucca9675!
É importante lembrar que a configuração para recebimento do webhook é feita em algumas etapas, listando-as acredito que vão responder a sua questão:

<:arrowright:1058011740589277294> Seu servidor deve estar acessível publicamente e por segurança define-se o protocolo mTLS de comunicação com o Efí. Aqui, você precise preparar seu servidor somente uma vez, caso tenha múltiplas contas e quiser ajustar rotas fica a seu critério, mas vai ser bem similar;

<:arrowright:1058011740589277294> Todo cadastro de webhook é feito mediante vínculo com uma chave pix da conta integrada Efí, sendo assim, se você mudar de conta ou de chave vai precisar recadastrar seu webhook, conforme descrito na documentação técnica.
imagem enviada na mensagem pelo usuario gabriel_efi

# pix
Avatar discord do usuario samucca9675

samucca9675

Ver Respostas

Boa tarde pessoal, blz ai.

@igor_efi @guilherme_efi @joaolucas_efi @marcelo_efi alguém de vocês poderia me ajudar com isso.

Galera seguinte, tinha uma conta PF configurada tudo ok, pagamento por pix e webhook configurado tudo funcionando, acontece que agora mudei para PJ e já ajustei o certificados.p12 dei todas as permissões pix em produção e recebo normalmente o pagamento na conta, PROBLEMA -> ao consta o pagamento na conta a chamada webhook nao e chamada, ate o arquivo mtls .cert alterei no servidor e nada, agora nao me lembro se eu preciso registrar em algum lugar o webhook dessa nova conta.

Aproveitando, é possível usar o mesmo arquivo mtls do servidor com 2 CNPJ? Nas consultas que fiz acredito que sim, ate pq para baixar o arquivo não precisa esta logado.

Vlw galera espero que me ajude, pq pelo suporte do app só por Deus kk

# pix
Avatar discord do usuario zerinhorx

zerinhorx

Ver Respostas

Top cara, tem algum canto que mostre a requisição que a EFI faz? No webhook

# pix
Avatar discord do usuario zerinhorx

zerinhorx

Minha ideia é conectar o back com um front via socket, e a após a chamada do webHook, fazer o QRcode do pix sumir da tela

# pix
Avatar discord do usuario zerinhorx

zerinhorx

Ver Respostas

Bom dia! Poderiam me auxiliar com a seguinte questão? Tenho uma conta PF e gostaria de gerar PIX e receber uma chamada webHook após o pagamento, isso é possivel?

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @rogerio_itu2044! Tudo bem?
Gostaria de registrar que, ao deixar o x-skip-mtls-checking como true, o Efí continuará enviando o certificado TLS na requisição, mas seu servidor irá ignorá-lo.

Nesse caso, você não precisa criar uma nova rota, pois a notificação será sempre enviada para /webhook, e o hmac será um query param. O parâmetro ignorar pode realmente ser desconsiderado. Nesse cenrário é importante verificar se o HMAC recebido na notificação em sua aplicação, é o mesmo que foi cadastrado no webhook no Efí. Além disso, recomendamos realizar uma validação por IP, já que nossa API utiliza exclusivamente o IP 34.193.116.226. Essas práticas garantem que é realmente o Efí quem está enviando a notificação. Sem o mTLS configurado, não ocorre o "handshake" de segurança.

Segue um exemplo em Node.js:

js
app.post('/webhook', (req, res) => {
const expectedHmac = "xyz"; // Valor esperado do HMAC que você usar no cadastro do webhook (cadastre um diferente deste)
const authorizedIp = "34.193.116.226"; // IP utilizado pelo API do Efí Bank

const requestIp = req.ip;
const requestHmac = req.query.hmac;

// Validação do IP
if (requestIp !== authorizedIp) {
res.status(401).json({ error: "Solicitação de webhook não autorizado" });
return;
}

// Validação do HMAC
if (!requestHmac || requestHmac !== expectedHmac) {
res.status(401).json({ error: "Solicitação de webhook não autorizado" });
return;
}

// Processar o webhook conforme sua regra de negócio
});

# open-finance
Avatar discord do usuario kevin_34751

kevin_34751

Ver Respostas

Vom dia, tudo bem?
Estou precisando de um help

o endpoint do open finance em homologação
PUT v1/config
me retornar um erro


{
"nome": "webhook_url_invalido",
"mensagem": "webhookURL não acessível"
}


porém a url que coloquei ela está 100% funcionando
alguém sabe me dizer se existe algum requisito a mais na url?

# pix
Avatar discord do usuario rogerio_itu2044

rogerio_itu2044

Ver Respostas

Tenho mais 2 duvidas sobre o webhook Skip-mTLS, ao cadastrar https://seu_dominio.com.br/webhook?hmac=xyz&ignorar= ele se tornará dinâmico.

- Eu devo incluir o /api no final da url acima, ficando https://seu_dominio.com.br/webhook?hmac=xyz&ignorar=/api?

- Eu devo criar outro endpoint do tipo POST para https://seu_dominio.com.br/webhook?hmac=xyz&ignorar=/api (caso tenha o /api no final conforme questionado acima ou somente com o endpoint acima eu já conseguirei escutar as notificações?

Por favor me encaminhe exemplos.
Muito obrigado!

# pix
Avatar discord do usuario rogerio_itu2044

rogerio_itu2044

Ver Respostas

Boa noite!
Já se foram 3 longos dias tentando configurar meu webhook com Skip-mTLS em NodeJs Typescript, usando o sdk-node-apis-efi, por favor poderiam me ajudar, estou recebendo o seguinte erro:

{
nome: 'webhook_invalido',
mensagem: 'A URL informada respondeu com o código HTTP 403'
}

Sei que existem vários pedidos de ajuda relacionados a esse caso, mas nenhum é relacionado ao webhook do tipo Skip-mTLS, que é meu caso, porque estou usando servidor compartilhado.
A principio quero ressaltar um erro nos exemplos do github:
credentials.js
module.exports = {
// PRODUÇÃO = false
// HOMOLOGAÇÃO = true
sandbox: false,
client_id: 'seu_client_id',
client_secret: 'seu_client_secret',
certificate: 'caminho/ate/seu/certificado.p12',
}
sendo que no SDK mostra diferente:
{
sandbox: boolean;
client_id: string;
client_secret: string;
partner_token?: string | undefined;
certificate?: string | undefined;
cert_base64?: boolean | undefined;
pix_cert?: string | undefined;
pemKey?: string | undefined;
}
E também tem um erro no exemplo no git para configuração do webhook, de onde venho esse tal de options['validateMtls'], sendo que ele não existe nas credenciais do SDK:
const EfiPay = require('sdk-node-apis-efi')
let options = require('../../credentials')

options['validateMtls'] = false

let body = {
webhookUrl: 'https://exemplo-pix/webhook',
}

let params = {
chave: 'SUACHAVEPIX',
}

const efipay = new EfiPay(options)

efipay.pixConfigWebhook(params, body)
.then((resposta) => {
console.log(resposta)
})
.catch((error) => {
console.log(error)
})
O arquivo anexo contém meu exemplo de configuração de webhook, mas gostaria muito que vocês fornecessem um exemplo atualizado em typescript.
Muito obrigado!