Histórico de mensagens sobre url em pix

EXIBINDO CONVERSAS RECENTES:

Texto: url
Canal: pix
Avatar discord do usuario leandroazevedo4295

leandroazevedo4295

Ver Respostas

Boa tarde, pessoal.
Estou com o seguinte erro ao registrar o webhook :
"A requisição na URL informada falhou com o erro: ERR_TLS_CERT_ALTNAME_INVALID"
Alguém poderia me ajudar ?

Avatar discord do usuario danylo2273

danylo2273

Ver Respostas

{
"code": 141,
"error": {
"nome": "webhook_invalido",
"mensagem": "A requisição na URL informada falhou com o erro: ERR_TLS_CERT_ALTNAME_INVALID"
}
}

Avatar discord do usuario danylo2273

danylo2273

Ver Respostas

Então é que eu segui todos os passos e obtive os mesmos resultados, conforme os vídeos na página https://www.youtube.com/user/danielciolfi/videos, porém, quando tento configurar a minha URL de WebHook na GerenciaNet estou recebendo o seguinte erro:
{
nome: 'webhook_invalido',
mensagem: 'A requisição na URL informada falhou com o erro: ERR_TLS_CERT_ALTNAME_INVALID'
}

Quando fiz da primeira vez, deu esse mesmo erro. Excluí TODO o ambiente no AWS e reconfigurei tudo do zero, seguindo novamente o passo a passo que ele mostra nos vídeos e novamente tenho o mesmo resultado.

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Olá, @tilsonmateus. Tudo bem?
Para obter o status de uma transação, recomendamos o uso do webhook, que será uma URL para recepção de notificações quando um Pix alterar seu status, fazendo com que seu sistema seja atualizado o mais rápido possível! Segue o link da documentação: https://dev.gerencianet.com.br/docs/api-pix-endpoints#webhooks

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @danylo2273. Não compreendemos muito bem o que está fazendo, você está simulando o envio de uma notificação para seu webhook URL?
Esse falha ocorre pois não foi possível validar o mTLS.

Avatar discord do usuario .antoniogregorio

.antoniogregorio

sendo curl ou qualquer ferramenta

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Você pode receber notificações automaticamente via webhook referente às modificações de status de uma cobrança Pix. Para isso, será necessário a inserção de uma chave pública da Gerencianet em seu servidor para que a comunicação obedeça o padrão mTLS.
Veja mais detalhes em nossa documentação: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-webhooks

Ou seja, primeiramente em um servidor dedicado, você deve inserir uma chave pública da Gerencianet nas configurações de seu servidor para que a comunicação obedeça o padrão mTLS (forma de autenticação mutua).
Veja um exemplo desta configuração em um servidor Apache, Nginx, Node, etc: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-exemplos-de-configura-es-de-servidor

Então com seu servidor configurado com mTLS em seu domínio (ex: https://seudominio.com.br/webhook/" class="link-msg">https://seudominio.com.br/webhook/), você irá consumir a rota PUT /v2​/webhook/:chave uma única vez para registrar seu webhookUrl vinculado à sua chave Pix. Acrescentando uma observação que é a adição do /pix no final da sua URL. Ou seja, na request PUT https://api-pix.gerencianet.com.br/v2/webhook/:chave você irá passar o body com sua URL, exemplo:

json
{
"webhookUrl": "https://seudominio.com.br/webhook"
}
No entanto, as notificações serão enviadas para sua URL com o /pix no final, assim: https://seudominio.com.br/webhook/pix.

Desta forma, esta adição do /pix também dever ser tratada nas configurações de seu servidor para que na rota /webhook/pix de seu servidor também exija o certificado CA da Gerencianet.

Veja mais detalhes sobre o endpoint: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-configurar-o-webhook-pix

Com isto, todo Pix gerado com sua chave Pix e que possua um txid, serão enviados as notificações para sua URL.

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Primeiro você deve autenticar na API e obter o access_token.

php
$curl = curl_init();

$authorization = base64_encode("$client_id:$client_secret");

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix-h.gerencianet.com.br/oauth/token", // Rota base, desenvolvimento ou produção
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{"grant_type": "client_credentials"}',
CURLOPT_SSLCERT => $arq_certificado, // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $authorization",
"Content-Type: application/json"
),
));

$auth = json_decode(curl_exec($curl), true);

curl_close($curl);

$tokenType = $auth['token_type'];
$accessToken = $auth['access_token'];

Depois emitir o pix
php
$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix-h.gerencianet.com.br/v2/cob/$txID",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_SSLCERT => $arq_certificado, // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_POSTFIELDS => '{
"calendario": {
"expiracao": 3600
},
"devedor": {
"cpf": "02279112312",
"nome": "Maria apareciada monteiro"
},
"valor": {
"original": "10.21"
},
"chave": "",
"solicitacaoPagador": "Mensaldiade Monteiro Sistemas"
}',
CURLOPT_HTTPHEADER => array(
"authorization: $tokenType $accessToken",
"Content-Type: application/json"
),
));

$dadosPix = json_decode(curl_exec($curl), true);
curl_close($curl);

return $dadosPix;

Avatar discord do usuario deivson7351

deivson7351

Ver Respostas

seria isso:
$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix-h.gerencianet.com.br/v2/cob/$id",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_POSTFIELDS =>'{
"calendario": {
"expiracao": 3600
},
"devedor": {
"cpf": "02279112312",
"nome": "Maria apareciada monteiro"
},
"valor": {
"original": "10.21"
},
"chave": "",
"solicitacaoPagador": "Mensaldiade Monteiro Sistemas"
}',
CURLOPT_HTTPHEADER => array(
"authorization: {{$autorizacao}}",
"x-client-cert-pem: {{$config["certificado"]}}"
),
));

echo $curl;

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Está com redirect, você tem que configurar já para a URL final da cadeia de redirecionamento.

Avatar discord do usuario leonardomg2082

leonardomg2082

Ver Respostas

400webhook_invalidoA URL informada respondeu com o código HTTP 302

Avatar discord do usuario du2dev

du2dev

o que achei estranho que cadastra URL normal

Avatar discord do usuario .guind

.guind

Ver Respostas

chama a sua url direto no postman passando esse body e ve se sua aplicação ta recebendo

Avatar discord do usuario du2dev

du2dev

Entendi @.guind porém não retornas nada no body POST que era pra vir - com body de teste do hand-shake que por exemplo foi a URL "meudominio/pay/webhook " que cadastrei retonar 200 OK

Avatar discord do usuario du2dev

du2dev

Ver Respostas

pessoal eu cadastro uma url no webhook cadastra com sucesso ok retorna 200, mais ai no logo que eu dou que era pra vir no body o objeto evento: teste_webhook e a data da criação porém não retorna nada

Avatar discord do usuario hellfiveosborn

hellfiveosborn

Ver Respostas

estou recebendo este erro

400webhook_invalidoA URL informada respondeu com o código HTTP 500

Avatar discord do usuario nightcrawler5701

nightcrawler5701

Boa tarde, estou tentando configurar o webhook, mas ocorre o seguinte erro: A URL informada respondeu com o código HTTP 403, alguém pode me ajudar?

Avatar discord do usuario du2dev

du2dev

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

Avatar discord do usuario .hildebrando

.hildebrando

Ver Respostas

Colocar a URL do webhook num diretório não óbvio, tipo api.exemplo.com.br/sduasiduasiduai . Aí quem sabe é pq foi informado pela GN. -> Isso eu fiz pra "AJUDAR" na segurança;