Histórico de mensagens sobre js em pix

EXIBINDO CONVERSAS RECENTES:

Texto: js
Canal: pix
Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

400
webhook_invalido
A autenticação de TLS mútuo não está configurada na URL informada
{
"Server": [
"nginx"
],
"Date": [
"Tue, 06 Aug 2024 20:01:54 GMT"
],
"Content-Type": [
"application/json; charset=utf-8"
],
"Content-Length": [
"111"
],
"Connection": [
"keep-alive"
],
"x-request-id": [
"aeaebb97-0acd-4c9c-a641-1bbfbe59461b"
],
"Vary": [
"Origin"
],
"Access-Control-Allow-Credentials": [
"true"
],
"ETag": [
"W/\"6f-u8LmFRZhTY5OErn2m2iNSr2g7AI\""
]
}


alguém consegue me dar uma base de como fuciona o código de recebimento da url? li a documentação e não estou conseguindo resolver isso

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

@felipenunes0714

400
json_invalido

Isso significa que você esta informando dados inválidos em nossa API.
Provavelmente devido a ausência das informações obrigatórias.
Você esta conseguindo realizar as requisições, recomendamos que você analise a mensagem de falha retornada para verificar o que pode estar ocorrendo.

Avatar discord do usuario felipenunes0714

felipenunes0714

400
json_invalido
Parâmetro ".headers['x-skip-mtls-checking']", deve ser igual a um dos valores predefinidos


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

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

me retornou o seguinte erro:


400
json_invalido
Parâmetro ".headers['x-skip-mtls-checking']", deve ser igual a um dos valores predefinidos
{
"Server": [
"nginx"
],
"Date": [
"Tue, 06 Aug 2024 18:59:18 GMT"
],
"Content-Type": [
"application/json; charset=utf-8"
],
"Content-Length": [
"241"
],
"Connection": [
"keep-alive"
],
"x-request-id": [
"xxxx"
],
"Vary": [
"Origin"
],
"Access-Control-Allow-Credentials": [
"true"
],
"ETag": [
"xxx""
]
}

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


/
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 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

Avatar discord do usuario mereditha.

mereditha.

Ver Respostas

Boa tarde estou tentando fazer a autenticação com nodejs e recebo o error: socket hang up, alguém pode me ajudar?

Avatar discord do usuario aquele_dev

aquele_dev

Ver Respostas

baixa o Composer na sua máquina e executa o comando composer install na pasta que tem o package.json da sdk

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

$config = [
"certificado" => "./producao.pem",
"client_id" => "",
"client_secret" => ""
];


$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://pix-h.api.efipay.com.br/oauth/token", // Rota base, homologação 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 => $config["certificado"], // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

echo "

";
echo $response;
echo "
";
?>

eu estou chamando essa chamada simples da documentação, e ela me retorna a pagina em branco ao invés de retornar o token

Avatar discord do usuario frankkafka

frankkafka

js
const EfiPay = require('sdk-node-apis-efi')
const options = require('../../credentials')

let params = {
id: '95',
}

const efipay = new EfiPay(options)
console.log(efipay);

efipay.pixGenerateQRCode(params)
.then((resposta) => {
console.log(resposta)
})
.catch((error) => {
console.log(error)
})

Avatar discord do usuario rafaelguimaraes9983

rafaelguimaraes9983

Ver Respostas

Bom dia, alguem consegue me ajudar com a questão do webhook para nodejs?

Avatar discord do usuario buenolitz

buenolitz

Ver Respostas

Bom dia pessoal !
Gostaria de saber se existe alguma documentação/vídeo mostrando como fazer para ao invés de salvar minhas informações do pix dentro do arquivo dados.json ele seja salvo em um banco de dados ?

Avatar discord do usuario _acb09

_acb09

Ver Respostas

O meu código está assim:

$config = [];
$config["certificado"] = config("services.efipay.certificate_path");
$config["client_id"] = config("services.efipay.client_id");
$config["client_secret"] = config("services.efipay.client_secret");

$headers = [];
$headers['Authorization'] = "Basic " . base64_encode($config["client_id"] . ":" . $config["client_secret"]);
$headers['Content-Type'] = 'application/json';

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://pix-h.api.efipay.com.br/oauth/token", // Rota base, homologação ou produção
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 60,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{"grant_type": "client_credentials"}',
CURLOPT_SSLCERT => $config["certificado"], // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => $headers
));

$response = curl_exec($curl);

if (curl_errno($curl)) {
dd('Error:' . curl_error($curl));
}

curl_close($curl);

dd($response);

Avatar discord do usuario celsoalexandre

celsoalexandre

Ver Respostas

Bom dia,
estou tendo o seguinte erro ao criar uma charge pix com location e notification_url usando a sdk pra Go, ambiente homolog
{"nome":"json_invalido","mensagem":"Valores ou tipos de campo inválidos","erros":[{"chave":"additionalProperties","caminho":".body","mensagem":"não são permitidas propriedades adicionais"}]}

go
// Go
PUT /v2/cob/:txid
map[string]interface{}{
"calendario": map[string]interface{}{
"expiracao": 600,
},
"valor": map[string]interface{}{
"original": "0.01",
},
"loc": map[string]interface{}{
"id": 97,
},
"metadata": map[string]interface{}{
"notification_url": "https://meudominio:10021/efi/homolog/webhook",
},
"chave": "71cdf9ba-c695-4e3c-b010-abb521a3f1be",
"solicitacaoPagador": "Teste",
}

Se eu removo o campo "metadata" e seu conteúdo, funciona.
Não é mais possível criar a cobrança e registrar a callback na mesma chamada, ou seria de outra forma?

Avatar discord do usuario wendersonferreira

wendersonferreira

Ver Respostas

Obrigado, Eu estou tentendo submeter um envio de pix Copia e Cola. E estou recebendo uma mensagem de erro

{
"nome": "json_invalido",
"mensagem": "Valores ou tipos de campo inválidos",
"erros": [
{
"chave": "maxLength",
"caminho": ".body.favorecido.chave",
"mensagem": "não deve ter mais que 77 caracteres"
}
]
}

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Boa tarde, @marcoglg_dev! Tudo bem e com você?
Sim, é enviado um body na requisição. Segue o exemplo:

json
{"evento":"teste_webhook","data_criacao":"2024-02-13T16:42:42.159Z"}

Avatar discord do usuario v_watson_pes_pro

v_watson_pes_pro

Ver Respostas

Bom dia,

Alguém poderia me esclarecer uma dúvida sobre webhook?

Tenho um servidor em Node.js que consome a API da Efi. O servidor consegue gerar o QR Code e o Pix "copia e cola". No entanto, não estou recebendo nenhuma confirmação se o usuário realizou o pagamento. Para receber essa confirmação, é necessário configurar algo no console da Efi?