Histórico de mensagens sobre url POST em módulos-plugins

EXIBINDO CONVERSAS RECENTES:

Texto: url POST
Canal: módulos-plugins
Avatar discord do usuario maykovieira

maykovieira

Agora lá na configuração da conta bancária onde tem URL de retorno já coloquei o ip do servidor Mkauth mas só da sem resposta

Avatar discord do usuario guilherme_efi

guilherme_efi

Segue um exemplo mais detalhado, onde é feito a autenticação e consumo do endpoint para criar um boleto.

php
$config = [
"client_id" => "Client_Id_...",
"client_secret" => "Client_Secret_..."
];

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

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://cobrancas-h.api.efipay.com.br/v1/authorize',
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_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Basic ' . $autorizacao
),
));
$returnAuth = json_decode(curl_exec($curl), true);
$access_token = $returnAuth['access_token'];
curl_close($curl);

echo "
";
var_dump($returnAuth);
echo "
";

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://cobrancas-h.api.efipay.com.br/v1/charge/one-step',
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 => '{
"items": [
{
"name": "Teste Gn",
"amount": 1,
"value": 500
}
],
"payment": {
"banking_billet": {
"expire_at": "2024-12-10",
"customer": {
"name": "Gorbadoc Oldbuck",
"cpf": "94271564656",
"email": "[email protected]"
}
}
}
}',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer ' . $returnAuth['access_token'],
'Content-Type: application/json'
),
));

$responseBillet = curl_exec($curl);
curl_close($curl);

echo "
";
var_dump($responseBillet);
echo "
";

Avatar discord do usuario discovery_kids

discovery_kids

Ver Respostas

sim estou usando cURL.

//Desenvolvido pela Consultoria Técnica da Efí
$config = [
"client_id" => "YOUR-CLIENT-ID",
"client_secret" => "YOUR-CLIENT-SECRET"
];
$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://cobrancas-h.api.efipay.com.br/v1/authorize',
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_HTTPHEADER => array(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

echo "

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

com as devidas alterações no client_id e client_secret.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O outro módulo ficava numa URL que não existe mais... o autor é o @joelemanoel então se ele ler a msg no Discord talvez poste a URL atualizada.

Avatar discord do usuario joao_efi

joao_efi

@dinhoafsn. a URL de retorno é a URL do seu site onde enviaremos as notificações de pagamento.
No plugin, elas são definidas de maneira automática, de acordo com a forma de pagamento.
Como:

Nessas URLs são enviadas os tokens de cada cobrança, onde ao serem consultados, retornam as atualizações de status. De waiting para paid, por exemplo.
Salvo a exceção do Pix e Open Finance, que seguem os padrões estabelecidos pelo BACEN
Nos links abaixo você encontra os exemplos de retornos referentes aos métodos de pagamento:
- Open Finance: https://dev.efipay.com.br/docs/api-open-finance/recebendo-callbacks#requisi%C3%A7%C3%A3o
- Pix: https://dev.efipay.com.br/docs/api-pix/webhooks#requisi%C3%A7%C3%A3o
- Cartão/Boleto: https://dev.efipay.com.br/docs/api-cobrancas/notificacoes#exemplos-de-respostas

Avatar discord do usuario diogo.luz

diogo.luz

Ver Respostas

Tentei isso direto no PHP e retorna NULL. O que eu fiz de errado?

O código completo do PHP ficou assim:


$arq_certificado = "MeuCertificadoQueEstáNoMesmoDiretorio.p12";


$client_id = "MeuClientID";
$client_secret = "MeuClientSecret";
$curl = curl_init();

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

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix.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'];


echo "$accessToken";

var_dump($auth);



?>

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Olá, @ricardogssa. Bom dia!
Nesse caso, você pode montar as requisições dos endpoints (https://dev.gerencianet.com.br/docs/api-pix-endpoints) usando o cURL.
Para facilitar esse processo você pode nossa collection do Postman (https://sejaefi.link/ryeAmpRfMh), e gerar snippet de código para ter o exemplo cURL do endpoint.
imagem enviada na mensagem pelo usuario guilherme_efi