Histórico de mensagens sobre mtls em pix

EXIBINDO CONVERSAS RECENTES:

Texto: mtls
Canal: pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @coxinha_noob! Para o mTLS do Pix, o certificado não pode ser auto assinado, e é importante usar certificados que ofereçam uma validação mais robusta, como OV ou EV.
Você solicitar emissão com o Let's Encrypt, por exemplo, que é gratuito.

Avatar discord do usuario coxinha_noob

coxinha_noob

Ver Respostas

Bom dia, qualquer tipo de certificado DV funciona para a verificação do mtls? mesmo sendo os mais básicos?

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @vinicio254! Tudo bem?

Você pode usar o exemplo abaixo para registrar o webhook. Sobre a configuração do mTLS, você pode conferir este vídeo que ensina a configuração em servidor Apache.

php

$homolog = true; // false para produção

$config = [
"certificado" => realpath(__DIR__ . "/certificado.pem"), // certificado em .pem de produção ou homologação
"client_id" => "Client_Id",
"client_secret" => "Client_Secret"
];

$chavePix = "suachavepix";

$webhookUrl = "https://seudominio.com.br/webhook/hash=hashdeseguranca&ignorar="

$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $homolog ? "https://pix-h.api.efipay.com.br/oauth/token" : "https://pix.api.efipay.com.br/oauth/token",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 8,
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"
),
));
var_dump(curl_exec($curl));
$returnAuth = json_decode(curl_exec($curl), true);
$access_token = $returnAuth['access_token'];
curl_close($curl);


//Criação da cobrança
$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => $homolog ? "https://pix-h.api.efipay.com.br/v2/webhook/$chavePix" : "https://pix.api.efipay.com.br/v2/webhook/$chavePix"
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 => '{
"webhookUrl": $webhookUrl
}',
CURLOPT_SSLCERT => $config["certificado"], // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Bearer $access_token",
"x-skip-mtls-checking: true",
"Content-Type: application/json"
),
));
$responsePix = json_decode(curl_exec($curl), true);
curl_close($curl);

echo '
' . json_encode($responsePix, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . '
';

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Dúvidas de cPanel e Hosting, não específicas de API Pix, talvez possam ter solução em fóruns de hosting como o https://portaldohost.com.br/

Acho que vale ir em paralelo com a implementação e se livrar do Skip-mTLS.

Avatar discord do usuario robson_g

robson_g

Ver Respostas

Boa tarde, tudo bem?
estou com problema no Webhook, não consegui colocar o VirtualHosts no Cpanel, fiz de tudo que eu sabia, hehehe
Configurei o Apache pelo Post VirtualHosts Includes, Pre VirtualHosts Includes, com e sem Alias,
resolvi fazer com o Skip-mTLS ele registrou a webhook tudo ok, mas quando crio uma cobrança com menos de 10,00 ela cria tudo certo, mas não recebo o webhook, nem em produção nem homologação.
depois de uns 5 segundos eu consulto a cobrança e ela já está concluída, mas não recebo o webhook
configurei o hmac= tbém no webhook