Histórico de mensagens sobre expiracao em pix

EXIBINDO CONVERSAS RECENTES:

Texto: expiracao
Canal: pix
Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Boa tarde! O tempo de expiração é definido no momento da requisição de emissão da cobrança Pix, no atributo calendario> expiracao

Avatar discord do usuario saviobraz

saviobraz

{"calendario":{"expiracao":3600},"devedor":{"cpf":"09621842760","nome":"SAVIO BRAZ"},"valor":{"original":"0.01"},"chave":"7e0bbdc9-af75-41e5-b33c-1ef2a1e9c392"}

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @dlmorais. Tudo bem? 😀
1- Este é o comportamento esperado, mesmo em produção. Quando expirada o status permanece ATIVA, mas já não é possível pagar. O Bacen definiu assim, pois como está ATIVA te permite dar um PATCH /v2/cob/:txid e aumentar o tempo de expiracao, possibilitando o pagamento novamente.
2- Este campo calendario.apresentacaonão é obrigatório na criação de cobrança Pix. Agradeço pelo observação, vamos corrigir na documentação.

Avatar discord do usuario dlmorais

dlmorais

Ver Respostas

Pessoal, estou começando agora a integrar com Pix e estou com 2 dúvidas.

1 - Usando Postman em homologação, criei uma cobrança imediata com valor >R$10, portanto ficou com status ATIVA, conforme esperado.
Entretanto, eu informei o campo calendario.expiracao e mesmo após passado o tempo indicado, o status continua como ATIVA.
É assim mesmo? O status não muda? Ou esse comportamento é só no ambiente de homologação?

2 - Na documentação na parte Criar de cobrança imediata está falando que o campo calendario.apresentacao é obrigatório. Isso é obrigatório mesmo ou a documentação está errada?
imagem enviada na mensagem pelo usuario dlmorais

Avatar discord do usuario webcrawler1396

webcrawler1396

Ou apenas posso consultar o status depois que a gerencianet cancelar dentro do tempo de expiracao

Avatar discord do usuario guilherme_efi

guilherme_efi

Este parâmetro expiracao recebe um numero com valor mínimo de 1 segundo e máximo um int32, que dá aproximadamente 68 anos rsrs

Avatar discord do usuario rafaelsunn

rafaelsunn

{
"calendario": {
"criacao": "2023-03-02T14:35:03.533Z",
"expiracao": 36000
},
"txid": "af7d7ec95c3b4873b82bb2bd68bd085a",
"revisao": 0,
"loc": {
"id": 3,
"location": "qrcodes-pix-h.gerencianet.com.br/v2/22f0fdd584504d42aac38d03d8026190",
"tipoCob": "cob",
"criacao": "2023-03-02T14:35:03.580Z"
},
"location": "qrcodes-pix-h.gerencianet.com.br/v2/22f0fdd584504d42aac38d03d8026190",
"status": "ATIVA",
"valor": {
"original": "1.00"
},
"chave": "[email protected]",
"solicitacaoPagador": "bingo123"
}
imagem enviada na mensagem pelo usuario rafaelsunn

Avatar discord do usuario sinapse8788

sinapse8788

Olá pessoal tudo bem? Travei em um erro que não encontrei na documentação, estou implentando em Python a api Pix e ela envia tranquilamente a requisição e devolve esses dados no meu prompt:

{'calendario': {'criacao': '2023-02-06T22:44:09.057Z', 'expiracao': 3600}, 'txid': '77dca58163a549d0867f10eeb0628fb0', 'revisao': 0, 'loc': {'id': 4, 'location': 'qrcodes-pix-h.gerencianet.com.br/v2/eae18aaea9ed41f6bab96aa68d9ad67c', 'tipoCob': 'cob', 'criacao': '2023-02-06T22:44:09.099Z'}, 'location': 'qrcodes-pix-h.gerencianet.com.br/v2/eae18aaea9ed41f6bab96aa68d9ad67c', 'status': 'ATIVA', 'devedor': {'cpf': '12345678909', 'nome': 'Francisco da Silva'}, 'valor': {'original': '1.00'}, 'chave': '0JHJHGhjhH-c695-4e3c-b010-abb521a3f1be', 'solicitacaoPagador': 'Cobrança dos serviços prestados.'}

Process finished with exit code 0


Aparentemente tudo normal, todo o ambiente é homologação, mas quando vou na EFI ver o resultado lá no historico não aprece nada na homologação, alguem já teve esse problema?

Avatar discord do usuario _zamparo

_zamparo

Ver Respostas

Alguém sabe me informar onde consigo o código para gerar o qr code do pix em uma cobrança?
Quando crio a cobrança o retorno é o seguinte:
{loc={location=qrcodes-pix-h.gerencianet.com.br/v2/bdd4264d3af9461d939dcb2ff66bf3a1, id=1, criacao=2023-02-02T20:10:19.423Z, tipoCob=cob}, valor={original=1.00}, chave=39660301000187, calendario={expiracao=3600, criacao=2023-02-02T20:10:19.368Z}, txid=7978c0c97ea847e78e8849634473c1f1, infoAdicionais=[{valor=Informação Adicional1 do PSP-Recebedor, nome=Campo 1}, {valor=Informação Adicional2 do PSP-Recebedor, nome=Campo 2}], location=qrcodes-pix-h.gerencianet.com.br/v2/bdd4264d3af9461d939dcb2ff66bf3a1, revisao=0, solicitacaoPagador=Serviço realizado., status=ATIVA}
Estou em SANDBOX.

Avatar discord do usuario ronaldo_furriel

ronaldo_furriel

Ver Respostas

Caros, em /v2/cob não achei na documentação a unidade da informação expiracao. É milissegundos? Segundos? ....Queria limitar a 7 minutos

Avatar discord do usuario debbiemathers

debbiemathers

Boa tarde pessoal, estou usando o SDK 5.1 do PHP do Gerencianet com o Laravel 9 e PHP 8.2 tentando executar o exemplo de pixCreateImmediateCharge, esta ocorrendo erro ao tentar executar esse método no $pix = $api->pixCreateImmediateCharge($body);.
Alguém já se deparou com esse erro?

O erro:

"message": "Array to string conversion",
"exception": "ErrorException",
"file": "C:\\Users\\Alfredo\\Documents\\GitHub\\pix-qrcode-laravel\\vendor\\gerencianet\\gerencianet-sdk-php\\src\\Gerencianet\\Endpoints.php",
"line": 123,

O código:
$body = [
"calendario" => [
"expiracao" => 3600 // Charge lifetime, specified in seconds from creation date
],
"valor" => [
"original" => "0.01"
],
"chave" => "00000000-0000-0000-0000-000000000000", // Pix key registered in the authenticated Gerencianet account
"solicitacaoPagador" => "Enter the order number or identifier.",
];

try {
$api = Gerencianet::getInstance($this->options);
$pix = $api->pixCreateImmediateCharge($body);
...

Avatar discord do usuario clonenojutsu

clonenojutsu

Ver Respostas

json
{
"calendario": {
"expiracao": 200
},
"devedor": {
"cnpf": "00127817000125",
"nome": "teste"
},
"valor": {
"original": "0.01"
},
"chave": "2ab7b375-4145-4496-aaa4-75961acd53ea",
"solicitacaoPagador": "TESTANDO"
}

Avatar discord do usuario pk7r

pk7r

Ver Respostas

java
@Log4j2
@Service
@AllArgsConstructor(onConstructor = @__(@Autowired))
public class PixService {

Gerencianet gerencianet;

public void createTransaction(double amount, String key) {
val body = new JSONObject();
body.put("calendario", new JSONObject().put("expiracao", "3600"));
body.put("valor", new JSONObject().put("original", amount));
body.put("chave", key);
try {
JSONObject response = gerencianet.call("https://api-pix.gerencianet.com.br/v2/cob", new HashMap<>(), body);
System.out.println(response);
} catch (Throwable throwable) {
log.error("Falha ao criar transação.", throwable);
}
}
}

alguém poderia me ajudar? está dando um erro cuja mensagem é
nonexistent endpoint

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Gilmar, você esta passando o atributo devedor dentro do atributo calendário. O correto seria:

{
"calendario":{
"expiracao":3600
},
"devedor":{
"cpf":"...",
"nome":"...."
},
"valor":{
"original":"1.00"
},
"chave":"123f855a-97ba-4a69-9957-90de0ae021e7",
"solicitacaoPagador":"teste"
}

Avatar discord do usuario gilmarsilvasantos

gilmarsilvasantos

Ver Respostas

{"calendario":{"expiracao":3600,"devedor":{"cpf":"1234567890","nome":"Gilmar"},"valor":{"original":"1.00"},"chave":"123f855a-97ba-4a69-9957-90de0ae021e7","solicitacaoPagador":"teste"}}

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

guilherme_efi

Ver Respostas

Bom dia, @deivson7351. Tudo bem?
Instalando nossa SDK de PHP (https://github.com/gerencianet/gn-api-sdk-php), você pode utilizar o seguinte exemplo para gerar cobrança imediata definindo na variável $params o txid desejado.

php

require __DIR__ . '/../../../vendor/autoload.php';

use Gerencianet\Exception\GerencianetException;
use Gerencianet\Gerencianet;

$file = file_get_contents(__DIR__ . '/../../config.json');
$options = json_decode($file, true);

$params = "7978c0c97ea847e78e8849634473c1f1"; // string (Id da Transação) ^[a-zA-Z0-9]{26,35}$

$body = [
"calendario" => [
"expiracao" => 3600
],
"devedor" => [
"cpf" => "12345678909",
"nome" => "Francisco da Silva"
],
"valor" => [
"original" => "0.01"
],
"chave" => "", // Chave pix da conta Gerencianet do recebedor
"solicitacaoPagador" => "Informe o número ou identificador do pedido.",
"infoAdicionais" => [
[
"nome" => "Campo 1", // Nome do campo string (Nome) ≤ 50 characters
"valor" => "Informação Adicional1 do PSP-Recebedor" // Dados do campo string (Valor) ≤ 200 characters
],
[
"nome" => "Campo 2",
"valor" => "Informação Adicional2 do PSP-Recebedor"
]
]
];

try {
$api = Gerencianet::getInstance($options);
$pix = $api->pixCreateCharge($params, $body);

if ($pix['txid']) {
$params = [
'id' => $pix['loc']['id']
];

// Gera QRCode
$qrcode = $api->pixGenerateQRCode($params);

echo 'Detalhes da cobrança:';
echo '
' . json_encode($pix, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . '
';

echo 'QR Code:';
echo '
' . json_encode($qrcode, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . '
';

echo 'Imagem:
';
echo '';
} else {
echo '
' . json_encode($pix, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . '
';
}
} catch (GerencianetException $e) {
print_r($e->code);
print_r($e->error);
print_r($e->errorDescription);
} catch (Exception $e) {
print_r($e->getMessage());
}

Avatar discord do usuario relixes

relixes

{'calendario': {'criacao': '2022-09-01T22:31:08.000Z', 'expiracao': 90}, 'txid': 'f1be420f8e974edfa428bc6fda0221a6', 'revisao': 0, 'loc': {'id': 258, 'location': 'qrcodes-pix.gerencianet.com.br/v2/c2a55a0df8164355a64cc50215fd281b', 'tipoCob': 'cob', 'criacao': '2022-09-01T22:31:08.000Z'}, 'location': 'qrcodes-pix.gerencianet.com.br/v2/c2a55a0df8164355a64cc50215fd281b', 'status': 'ATIVA', 'valor': {'original': '0.03'}, 'chave': 'e2eb377c-3759-4bee-a402-fb78f87ddd3d', 'solicitacaoPagador': 'Cobrança dos serviços prestados.'}

Avatar discord do usuario relixes

relixes

{'calendario': {'criacao': '2022-08-27T14:50:49.703Z', 'expiracao': 3600}, 'txid': '29c7ae05c77b4d7d9f0f78a9169912ba', 'revisao': 0, 'loc': {'id': 3, 'location': 'qrcodes-pix-h.gerencianet.com.br/v2/03b42cd1be594c9cbedc98685e14141f', 'tipoCob': 'cob', 'criacao': '2022-08-27T14:50:49.747Z'}, 'location': 'qrcodes-pix-h.gerencianet.com.br/v2/03b42cd1be594c9cbedc98685e14141f', 'status': 'ATIVA', 'valor': {'original': '0.01'}, 'chave': '[email protected]', 'solicitacaoPagador': 'Cobrança dos serviços prestados.'}