Histórico de mensagens sobre webhook em pix

EXIBINDO CONVERSAS RECENTES:

Texto: webhook
Canal: pix
Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Ver Respostas

string(102) "{"nome":"webhook_invalido","mensagem":"A requisição na URL informada falhou com o erro: ECONNRESET"}"

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

esse requisição do webhook precisa do certificado?

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Meu Webhook: public function webhook() {
$body = '{
"webhookUrl": "https://julioerp.agenciaweblab.com.br/webhook.php"
}';
try {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this->config['rotas'] . '/v2/webhook/' . $this->config['chave_pix']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_SSLCERT, $this->config["certificado"]);
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, '');
$headers = array();
$headers[] = 'Authorization: Basic ' . $this->access_token;
$headers[] = 'X-Skip-Mtls-Checking: true';
$headers[] = 'Content-Type: application/json';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);

echo '

';
var_dump($this->config['chave_pix'], $this->config['client_id'], $this->config['client_secret'], $result);
echo '
';

if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
curl_close($ch);
return $result;
} catch (Exception $e) {
echo '
';
var_dump($e->getCode(), $e->getFile(), $e->getMessage());
echo '
';
}
}

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

nao estou tendo exito nessa questao do webhook

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

E estou recebendo este erro:
Chave PIX: string(36) "5cd9a718-ce6d-4564-bc10-c5b03e7a998f"
Response do método webhook: string(172) "{"nome":"json_invalido","mensagem":"Valores ou tipos de campo inválidos","erros":[{"chave":"required","caminho":"","mensagem":"deve ter a propriedade obrigatória body"}]}"

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Ver Respostas

Estou executando este método:
public function webhook() {
$body = '{
"webhookUrl": "https://julioerp.agenciaweblab.com.br/webhook.php"
}';
try {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this->config['rotas'] . '/v2/webhook/' . $this->config['chave_pix']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_SSLCERT, $this->config["certificado"]);
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, '');
$headers = array();
$headers[] = 'Authorization: Bearer ' . $this->access_token;
$headers[] = 'X-Skip-Mtls-Checking: true';
$headers[] = 'Content-Type: application/x-www-form-urlencoded';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);

echo '

';
var_dump($this->config['chave_pix'], $result);
echo '
';

if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
curl_close($ch);
return $result;
} catch (Exception $e) {
echo '
';
var_dump($e->getCode(), $e->getFile(), $e->getMessage());
echo '
';
}
}

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

A ideia é esta mesmo, @alissonmaciel_32335. Você irá utilizar este endpoint PUT/v2/webhook/:chave para associar sua URL de notificação a sua chave Pix. E 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.

Pontuando que para registrar sua URL de notificação, é importante que seu servidor tenha algumas configurações para atender a comunicação com mTLS para segurança da sua aplicação. Você encontra mais detalhes em nossa documentação e nos vídeos a seguir: https://dev.gerencianet.com.br/docs/api-pix-endpoints#webhooks
https://youtu.be/hdyUHzNwVLY?list=PLRqvcUTH2VsWufBmzOdTVeLEOTGrPNoiu
https://youtu.be/XB9bcZFTV3M?list=PLRqvcUTH2VsWufBmzOdTVeLEOTGrPNoiu

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Ver Respostas

na requisição do webhook to fazendo assim, está correto? e eu chamo esse metodo no meu construct
imagem enviada na mensagem pelo usuario alissonmaciel_32335

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Depende da sua estratégia de descobrir que foi pago... webhook é a melhor alternativa, mas não a única.

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Ver Respostas

nesse caso terei que criar um arquivo webhook.php

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

poxa eu nao entendi muito sobre o webhook

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

webhook não precisa recuperar, o acionamento do webhook já vai te mandar os dados.
Mas webhook, GET de /cob (pós-pagamento) e GET de /pix todos tem os mesmos dados.

Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Ver Respostas

nesse caso ai eu tenho que recuperar o webhook atraves do txid? e irá me retornar esses dados?

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Vem no webhook, tem no GET de /cob também um objeto pix com ele, após o pagamento acontecer.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Eles fazem reenvio automático caso você não confirme com HTTP 2xx que recebeu. Acho que tem na doc os intervalos entre reenvios.

Se você estiver desconfiado de que o webhook era para ter vindo e não veio, GET de /pix com filtro por inicio/fim/txid já te o mesmo conteúdo que o webhook daria.

Avatar discord do usuario allgood.eth

allgood.eth

Ver Respostas

Sim eu consegui receber uma resposta deles aqui do webhook. Mas caso eles tenha problemas do lado deles, eu não consigo ver. No assas, eu consigo ver todos os logs dos requests Que eles fazem pra mim, com os payloads. Posso até reenviar

Avatar discord do usuario rubenskuhl

rubenskuhl

Então se você passar https://exemplo.com.br , o teste durante a ativação vai ser feito para https://exemplo.com.br, e os Pix efetivamente virão para https://exemplo.com.br/pix .

E isso você pode ver em homologação também, criando cobranças de até R$ 10 que depois de alguns segundos geram requisições no webhook como se tivessem sido pagas.

Avatar discord do usuario rubenskuhl

rubenskuhl

Mas se quiser spoiler do que você vai ver, é uma requisição POST feita para a URL do webhook sem apresentar o certificado, seguida de uma com o certificado, na hora em que você ativa.
E depois, quando vem o Pix, eles fazem POST em URL+"/pix" com um array de objetos Pix.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Hoje eles não tem no site logs visíveis com as chamadas do webhook feitas para você. Só com as chamadas que você faz.

Avatar discord do usuario allgood.eth

allgood.eth

Ver Respostas

ainda aguardo a resposta do pessoal da EFI sobre logs dos webhook