Histórico de mensagens em pix

EXIBINDO CONVERSAS RECENTES:

Data: 06/08/2024
Canal: pix
Avatar discord do usuario felipenunes0714

felipenunes0714


/
Detailed endpoint documentation
https://dev.efipay.com.br/docs/api-pix/webhooks#configurar-o-webhook-pix
/

$autoload = realpath(__DIR__ . "../../../../../../../vendor/autoload.php");
if (!file_exists($autoload)) {
die("Autoload file not found or on path $autoload.");
}
require_once $autoload;

use Efi\Exception\EfiException;
use Efi\EfiPay;

$optionsFile = __DIR__ . "/../../credentials/options.php";
if (!file_exists($optionsFile)) {
die("Options file not found or on path $options.");
}
$options = include $optionsFile;

$options["headers"] = [
"x-skip-mtls-checking" => false
];

$params = [
"chave" => ""
];

$body = [
"webhookUrl" => ""
];


try {
$api = new EfiPay($options);
$response = $api->pixConfigWebhook($params, $body);

if (isset($options["responseHeaders"]) && $options["responseHeaders"]) {
print_r("

" . json_encode($response->body, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
print_r("
" . json_encode($response->headers, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
} else {
print_r("
" . json_encode($response, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
}
} catch (EfiException $e) {
print_r($e->code . "
");
print_r($e->error . "
");
print_r($e->errorDescription) . "
";
if (isset($options["responseHeaders"]) && $options["responseHeaders"]) {
print_r("
" . json_encode($e->headers, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
}
} catch (Exception $e) {
print_r($e->getMessage());
}

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

no caso, eu tenho que colocar o diretorio do certificado nessa variavel $option?

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

"Não foi possível ler o arquivo de certificado"
Provavelmente você colocou o path errado do certificado na variavel $options

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

consegui achar o diretorio, agora me apresentou o seguinte erro:

403
forbidden
Não foi possível ler o arquivo de certificado
{
"headers": []
}

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Boa tarde, @felipenunes0714!
A falha esta ocorrendo devido ao fato de não esta sendo possivel localizar o seu arquivo autoload.php "DIR . "/../../../vendor/autoload.php""

php
$autoload = realpath(DIR . "/../../../vendor/autoload.php");
if (!fileexists($autoload)) {
die("Autoload file not found or on path $autoload.");
}

Você verificou se este arquivo foi gerado?

Avatar discord do usuario felipenunes0714

felipenunes0714

e esse é o erro:

Autoload file not found or on path .

Avatar discord do usuario felipenunes0714

felipenunes0714

esse é o código

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas


/
Detailed endpoint documentation
https://dev.efipay.com.br/docs/api-pix/webhooks#configurar-o-webhook-pix
/

$autoload = realpath(__DIR__ . "/../../../vendor/autoload.php");
if (!file_exists($autoload)) {
die("Autoload file not found or on path $autoload.");
}
require_once $autoload;

use Efi\Exception\EfiException;
use Efi\EfiPay;

$optionsFile = __DIR__ . "/../../credentials/options.php";
if (!file_exists($optionsFile)) {
die("Options file not found or on path $options.");
}
$options = include $optionsFile;

$options["headers"] = [
"x-skip-mtls-checking" => false
];

$params = [
"chave" => "12345"
];

$body = [
"webhookUrl" => "www.meulink.com"
];

try {
$api = new EfiPay($options);
$response = $api->pixConfigWebhook($params, $body);

if (isset($options["responseHeaders"]) && $options["responseHeaders"]) {
print_r("

" . json_encode($response->body, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
print_r("
" . json_encode($response->headers, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
} else {
print_r("
" . json_encode($response, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
}
} catch (EfiException $e) {
print_r($e->code . "
");
print_r($e->error . "
");
print_r($e->errorDescription) . "
";
if (isset($options["responseHeaders"]) && $options["responseHeaders"]) {
print_r("
" . json_encode($e->headers, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . "
");
}
} catch (Exception $e) {
print_r($e->getMessage());
}

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O que aparece quando você tenta cadastrar o webhook ?

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

ainda não estou coseguindo : (

Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

Primeiro, você deve cadastrar uma webhookUrl, através do método acima. Essa url deve ser vinculada a sua chave Pix, cadastrada na Efí.
Feito isso, qualquer cobrança que você gerar vinculada a esta chave, que for paga, será notificada na URL que você cadastrou.
Acredito que este tutorial do nosso curso possa te ajudar: https://youtu.be/XB9bcZFTV3M?list=PLRqvcUTH2VsWufBmzOdTVeLEOTGrPNoiu

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

eu devo colocar minha webhook nesse código e executar?

Avatar discord do usuario felipenunes0714

felipenunes0714

poderia me explicar melhor?

Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

Bom dia @felipenunes0714 ! Para cadastrar o webhook, você deve utilizar este método: https://github.com/efipay/sdk-php-apis-efi/blob/main/examples/pix/webhooks/pixConfigWebhook.php

Avatar discord do usuario felipenunes0714

felipenunes0714

eu ja tentei todos os nomes possiveis como webhookUrl, webhook, callbackUrl, mas sempre dar o mesmo erro

Avatar discord do usuario felipenunes0714

felipenunes0714

se eu tirar o paramentro "webhook", o código gera o pix normalmente, porém desse jeito eu não vou receber as notificações da api pela url

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

boa tarde, alguém poderia me ajudar ? eu já tentei de várias formas e não consigo fazer com que o código que gera o pix envie a notificação para url webhook, toda vez que eu coloco algo além do que já está na variavel $body apresenta o seguinte erro:
EfiException Code: 400 Error: json_invalido Error Description: Parâmetro ".body", não são permitidas propriedades adicionais