Histórico de mensagens sobre certificado em pix

EXIBINDO CONVERSAS RECENTES:

Texto: certificado
Canal: pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Isso, @danylo2273. No Route 53, quando você usa o wildcard na criação de um certificado ele gera uma zona hospedada automaticamente. Então exclui essa zona criada que está com o .

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Seria api.agenciafw.com.br mesmo. Mas tem que apagar o .agenciafw.com.br tanto do Route 53 quanto do gerenciador de certificados.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O que foi relatado por um outro usuário, que corrigiu um dos problemas desse vídeo que é propor usar .exemplo.com.br ao invés de webhook.exemplo.com.br é que ele precisou apagar tanto certificados quanto entradas DNS no Route 53, aonde tinha sobrado um asterisco.

Avatar discord do usuario unostore

unostore

Meu domonio esta na dream host que ja tem certificado ssl automatico

Avatar discord do usuario .antoniogregorio

.antoniogregorio

bom dia, há alguma forma de eu testar o certificado cacert sem ter que ficar mudando o webhook ?

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Você pode receber notificações automaticamente via webhook referente às modificações de status de uma cobrança Pix. Para isso, será necessário a inserção de uma chave pública da Gerencianet em seu servidor para que a comunicação obedeça o padrão mTLS.
Veja mais detalhes em nossa documentação: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-webhooks

Ou seja, primeiramente em um servidor dedicado, você deve inserir uma chave pública da Gerencianet nas configurações de seu servidor para que a comunicação obedeça o padrão mTLS (forma de autenticação mutua).
Veja um exemplo desta configuração em um servidor Apache, Nginx, Node, etc: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-exemplos-de-configura-es-de-servidor

Então com seu servidor configurado com mTLS em seu domínio (ex: https://seudominio.com.br/webhook/" class="link-msg">https://seudominio.com.br/webhook/), você irá consumir a rota PUT /v2​/webhook/:chave uma única vez para registrar seu webhookUrl vinculado à sua chave Pix. Acrescentando uma observação que é a adição do /pix no final da sua URL. Ou seja, na request PUT https://api-pix.gerencianet.com.br/v2/webhook/:chave você irá passar o body com sua URL, exemplo:

json
{
"webhookUrl": "https://seudominio.com.br/webhook"
}
No entanto, as notificações serão enviadas para sua URL com o /pix no final, assim: https://seudominio.com.br/webhook/pix.

Desta forma, esta adição do /pix também dever ser tratada nas configurações de seu servidor para que na rota /webhook/pix de seu servidor também exija o certificado CA da Gerencianet.

Veja mais detalhes sobre o endpoint: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-configurar-o-webhook-pix

Com isto, todo Pix gerado com sua chave Pix e que possua um txid, serão enviados as notificações para sua URL.

Avatar discord do usuario mateusbrasil2944

mateusbrasil2944

Ver Respostas

Quando tento criar um pix com as credenciais e certificado de Homologação funciona, mas quando tento utilizar as credencias e certificado de Produção ai da esse erro aqui
imagem enviada na mensagem pelo usuario mateusbrasil2944

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Primeiro você deve autenticar na API e obter o access_token.

php
$curl = curl_init();

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

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

Depois emitir o pix
php
$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix-h.gerencianet.com.br/v2/cob/$txID",
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_SSLCERT => $arq_certificado, // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_POSTFIELDS => '{
"calendario": {
"expiracao": 3600
},
"devedor": {
"cpf": "02279112312",
"nome": "Maria apareciada monteiro"
},
"valor": {
"original": "10.21"
},
"chave": "",
"solicitacaoPagador": "Mensaldiade Monteiro Sistemas"
}',
CURLOPT_HTTPHEADER => array(
"authorization: $tokenType $accessToken",
"Content-Type: application/json"
),
));

$dadosPix = json_decode(curl_exec($curl), true);
curl_close($curl);

return $dadosPix;

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Em todas as requisições deve-se passar o caminho do certificado também.

Avatar discord do usuario deivson7351

deivson7351

Ver Respostas

seria isso:
$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix-h.gerencianet.com.br/v2/cob/$id",
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 =>'{
"calendario": {
"expiracao": 3600
},
"devedor": {
"cpf": "02279112312",
"nome": "Maria apareciada monteiro"
},
"valor": {
"original": "10.21"
},
"chave": "",
"solicitacaoPagador": "Mensaldiade Monteiro Sistemas"
}',
CURLOPT_HTTPHEADER => array(
"authorization: {{$autorizacao}}",
"x-client-cert-pem: {{$config["certificado"]}}"
),
));

echo $curl;

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Os certificados e credenciais são de cada ambiente. Trocou de ambiente, tem que trocar clientid, clientsecret e certificado.

Avatar discord do usuario mateusbrasil2944

mateusbrasil2944

Dava erro de leitura do certificado

Avatar discord do usuario mateusbrasil2944

mateusbrasil2944

Mas antes sem o certificado não esse erro

Avatar discord do usuario valmirefi

valmirefi

Ver Respostas

Boa tarde @mateusbrasil2944, você está utilizando o certificado com a extensão .pem?

Avatar discord do usuario mateusbrasil2944

mateusbrasil2944

Estou usando o certificado e uma chave pix cadastrada na gerencianet, mas não consigo criar uma transação pix de jeito nenhum com o sdk do node

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Você precisa informar o path do certificado na variável que armazena as informações de integração. Exemplo:

module.exports = {
// PRODUÇÃO = false
// HOMOLOGAÇÃO = true
sandbox: false,
client_id: 'seuClientId',
client_secret: 'seuClientSecret',
pix_cert: 'caminhoAteOCertificadoPix',
};

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

O certificado emitido em sua conta para realizar requisições na Api Pix?

Avatar discord do usuario mateusbrasil2944

mateusbrasil2944

Ver Respostas

Como adicionar o certificado no sdk do node?

Avatar discord do usuario leonardomg2082

leonardomg2082

SSLCertificateKeyFile /caminho_certificado/privkey_ssl.pem #privkey associada ao seu certificado SSL do domínio

Avatar discord do usuario leonardomg2082

leonardomg2082

SSLCertificateFile /caminho_certificado/fullchain_ssl.pem #fullchain associado ao seu certificado SSL do domínio