Histórico de mensagens sobre js

EXIBINDO CONVERSAS RECENTES:

Texto: js
# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Boa tarde <@!841729553303076935>, o BACEN não permite integração direta com a sua API, é necessário um PSP como intermediário que atende aos requisitos exigidos pelo BACEN. Mas você pode consumir os endpoints da nossa API Pix, basta a sua ferramenta low code conseguir fazer requisições e tratar as respostas em JSON. Segue o link da nossa documentação https://dev.gerencianet.com.br/docs

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Exatamente. Os callbacks são enviados pela Gerencianet via POST {$request.body#​/webhookUrl}​/pix quando houver uma alteração no status do PIX. O seguinte é um exemplo de um Pix recebido

json
{
"pix": [
{
"endToEndId": "E1803615022211340s08793XPJ",
"txid": "fc9a43k6ff384ryP5f41719",
"chave": "2c3c7441-b91e-4982-3c25-6105581e18ae",
"valor": "0.01",
"horario": "2020-12-21T13:40:34.000Z",
"infoPagador": "pagando o pix"
}
]
}

# pix
Avatar discord do usuario diegohenrique1989

diegohenrique1989

eu resolvi com um simples content-type application/json

# pix
Avatar discord do usuario destemido9466

destemido9466

$config = [
"certificate" => realpath("certs/producao/certificado.pem")
];

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix.gerencianet.com.br/v2/webhook/".$chave_pix,
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 => $config["certificate"], // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_POSTFIELDS =>'{
"webhookUrl": "https://webhook.com/webhook"
}',
CURLOPT_HTTPHEADER => array(
'authorization: Bearer '.$access_token,
'x-skip-mtls-checking: false',
'Content-Type: application/json'
),
));

$response = curl_exec($curl);
$options = json_decode($response, true);


if ($response === FALSE){
$curl_error = curl_error($curl);
}

curl_close($curl);
echo $response;

# pix
Avatar discord do usuario matheus_efi

matheus_efi

inclusive simulei aqui e teve a mesma mensagem :

php
{
"nome": "json_invalido",
"mensagem": "Valores ou tipos de campo inválidos",
"erros": [
{
"chave": "required",
"caminho": "",
"mensagem": "deve ter a propriedade obrigatória body"
}
]
}

# pix
Avatar discord do usuario destemido9466

destemido9466

No json

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Bom dia <@!664563985885954079>, você está referenciado a chave a ser associada ao webhook? e o body você deve informar em JSON a url do webhook, exemplo:

json
{
"webhookUrl": "https://gerencianet.com.br/webhook"
}

# pix
Avatar discord do usuario diegohenrique1989

diegohenrique1989

Ver Respostas

Olá bom dia, estou tendo um problema na hora de configurar o meu webhook(com curl no php), ele me retorna esse json:
{
"nome":"json_invalido",
"mensagem":"Valores ou tipos de campo inválidos",
"erros":[
{
"chave":"required",
"caminho":"",
"mensagem":"deve ter
a propriedade obrigatória body"
}
]
}

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Quem executa é o .php, não o JSON. A referência é de quem executa.

# pix
Avatar discord do usuario smsoousa

smsoousa

Ver Respostas

mas o arquivo json está no diretorio gerencianet/examples e o arquivo está em gerencianet/examples/pix/certs

# pix
Avatar discord do usuario diegohenrique1989

diegohenrique1989

Ver Respostas

Olá boa tarde, estou tentando configurar um webhook na api pix(com o php) porém ele me retorna o seguinte JSON: {"nome":"nao_encontrado","mensagem":"Recurso não encontrado"}

# pix
Avatar discord do usuario smsoousa

smsoousa

alterei o diretorio e reapontei o config.json

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Corrigindo o CRC, aparece este payload após decriptografar:

{
"txid": "zrzIOtJS1VCnnwFxcArPQWA6hlCa6O95zrh",
"revisao": 0,
"calendario": {
"criacao": "2021-05-08T23:12:42.000Z",
"apresentacao": "2021-05-08T23:19:27.603Z",
"expiracao": 3600
},
"status": "ATIVA",
"valor": {
"original": "10.00"
},
"chave": "ab05b59e-f943-4401-b284-ae39ffac4b44",
"devedor": {
"nome": "Evandro Cordeiro",
"cpf": "15857631793"
},
"solicitacaoPagador": "Adicionar saldo ao painel PINNER DIGITAL",
"infoAdicionais": [
{
"nome": "E-mail",
"valor": "[email protected]"
}
]
}

# pix
Avatar discord do usuario profbarba

profbarba

O JSON de uma das requisições tá assim:

{
"calendario": {
"expiracao":172800
},
"valor" : {
"original": "3610.98"
},
"chave": "4ee8b0b7-1b89-4173-8aa4-9bd1bde87400",
"solicitacaoPagador": "6095e82a44c1500018a44a3c",
"infoAdicionais":
[
{ "nome":"PA:Cursoria de Francês Pantoufle -\u003e CFP7 - maio de 2021 - PARA DUPLAS", "valor": "R$ 4012,2" },
{ "nome":"DI:10%_OFF", "valor": "R$ -401,21" }
]
}

# pix
Avatar discord do usuario profbarba

profbarba

name: json_invalido, mensagem: Valores ou tipos de campo inválidos

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Na verdade, o caminho informado deve ser relativo ao exemplo que está executando.
Ou seja, o caminho para o seu certificado deve partir do exemplo.
Por exemplo: No seu caso, que o certificado está na raiz do projeto, para executar o exemplo examples/pix/charge/create.php o caminho no config.json deve ser ../../../certificado.pem

Ou conforme já vem configurado na SDK, você pode salvar o seu certificado dentro de examples/pix/certs e então no config.json o caminho será ../certs/certificado.pem

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Boa tarde, <@!664563985885954079>!
Verifique se o caminho do seu certificado .pem informado no config.json está correto

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, <@!837319378772820018>!

Cada location é uma url de capacidade. As URLs de capacidade concedem acesso a informações para qualquer pessoa que tenha a URL.

Neste caso, no momento que o usuário pagador efetua a leitura de um QR Code dinâmico gerado pelo recebedor, esta URL será acessada pelo PSP pagador e seu conteúdo consiste em uma estrutura JWS. Este objeto JWS apresenta três fragmentos separados pelo caractere . (ponto). São eles: header, payload e signature. Segue um exemplo:

eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXUyJ9.eyJ0eElkIjoiNTJjNDMzNjEtY2FhMS00ZGRiLTkxNTItNzA4NDI2YTI1ZGIzIiwicmV2aXNhbyI6IjMiLCJjYWxlbmRhcmlvIjp7ImNyaWFjYW8iOiIyMDIwLTA5LTE1VDE5OjM5OjU0LjAxM1oiLCJhcHJlc2VudGFjYW8iOiIyMDIwLTA0LTAxVDE4OjAwOjAwWiIsImV4cGlyYWNhbyI6IjEyMDAifSwidmFsb3IiOnsib3JpZ2luYWwiOiI1MDAuMDAifSwiY2hhdmUiOiI3NDA3YzljOC1mNzhiLTExZWEtYWRjMS0wMjQyYWMxMjAwMDIiLCJzb2xpY2l0YWNhb1BhZ2Fkb3IiOiJJbmZvcm1hciBjYXJ0w6NvIGZpZGVsaWRhZGUiLCJpbmZvQWRpY2lvbmFpcyI6W3sibm9tZSI6InF1YW50aWRhZGUiLCJ2YWxvciI6IjIifV19.khlLEW4Q4W6zIYlacIaSHzwg_q9JrIkeinmvRDcUUD3120oXXew_xqSEAWsefY28g4MhUmK-RuaZgn1_rR22ZVM1pDbblw7Sk6dlHGxEc8PbMzMgEJPLdOZRumzMLx6YBYLAYsxT-HZp_vmBT713biN3jJf3V55z9RK6Xyo1CeWvemt81_O4kyGZ9lbp7p0VhmdJ9u6_EquEyP2n0uWy2ikbe7AFobkAdBRoF8gtp891WG5-gZmk4ZzATORNQOTrytQYMyprWV7o_prVjwT308RUo9Si-FRPTvYRGqyKo-voGoQVaZgCMUjc0jLr9WqYCRMyeCJZHTJmpaCFSNQnhw
Em termos de funcionalidade, o fragmento que interessa ao pagador é o "payload", que apresenta estrutura contendo detalhes da cobrança, conforme exemplo:
json
{
"txId": "fc9a4366ff3d4964b5dbc6c91a8722d3",
"revisao": "3",
"calendario": {
"criacao": "2020-09-15T19:39:54.013Z",
"apresentacao": "2020-04-01T18:00:00Z",
"expiracao": 3600
},
"status": "ATIVA",
"valor": {
"original": "500.00"
},
"chave": "7407c9c8-f78b-11ea-adc1-0242ac120002",
"solicitacaoPagador": "Informe o número ou identificador do pedido.",
"infoAdicionais": [
{
"nome": "quantidade",
"valor": "2"
}
]
}

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Tem exemplos também de como são as notificações, todas em JSON

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

É neste endpoint mesmo, você vai informar no body o webhook a ser cadastrado e o parâmetro :chave você substitui pela chave Pix da conta Gerencianet.
body em JSON:

json
{
"webhookUrl": "https://seu_webhook"
}