Histórico de mensagens sobre location em pix

EXIBINDO CONVERSAS RECENTES:

Texto: location
Canal: pix
Avatar discord do usuario wendellasevedo

wendellasevedo

@jessica_efi estou com a seguinte dúvida, quando eu crio uma cobrança (homologação) sem txid o STATUS fica ATIVO, ai quando eu acesso a URL do location "location": "qrcodespix-h.sejaefi.com.br/v2/cbaa695db80545559dee3ddf93c9e142", a resposta diz que a cobrança já não está mais ativa. Esse procedimento é normal ?

Avatar discord do usuario jessica_efi

jessica_efi

E esse segundo endpoint é o escopo payloadlocation.read.

Avatar discord do usuario jessica_efi

jessica_efi

Bom dia @glauberborba_37882 ! Nesse caso, essa rota seria para gerar o qrcode de um location, certo? Que seria o escopo payloadlocation.read.

Avatar discord do usuario celo_diana

celo_diana

porque criou assim

js
ID do Location: 1
{
calendario: { criacao: '2024-02-03T00:11:33.806Z', expiracao: 3600 },
txid: 'sd',
revisao: 0,
status: 'ATIVA',
valor: { original: '2.00' },
chave: '[email protected]',
devedor: { cpf: 'sd', nome: 'sdsd' },
solicitacaoPagador: 'Produto comprado digitalmente.',
loc: {
id: 1,
location: 'qrcodespix.sejaefi.com.br/v2/sd',
tipoCob: 'cob',
criacao: '2024-02-03T00:11:33.837Z'
},
location: 'qrcodespix.sejaefi.com.br/v2/sd',
pixCopiaECola: 'sd6304AA35'
}

Avatar discord do usuario jlmendessilva

jlmendessilva

server {
#
# ...
#
listen [::]:443 ssl ipv6only=on;
listen 443 ssl;
ssl_certificate server_ssl.crt.pem;
ssl_certificate_key server_ssl.key.pem;
ssl_client_certificate /root/chain-pix-webhooks-prod.crt;
ssl_verify_client optional;
ssl_verify_depth 3;
#
# ...
#
location /webhook {
if ($ssl_client_verify != SUCCESS) {
return 403;
}
proxy_pass /webhook;
}
}
#Desenvolvido pela Consultoria Técnica da Efí

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Comparando com a configuração exemplo da Efí, o que tem de diferente ?

server {
#
# ...
#
listen [::]:443 ssl ipv6only=on;
listen 443 ssl;
ssl_certificate server_ssl.crt.pem;
ssl_certificate_key server_ssl.key.pem;
ssl_client_certificate /root/chain-pix-webhooks-prod.crt;
ssl_verify_client optional;
ssl_verify_depth 3;
#
# ...
#
location /webhook {
if ($ssl_client_verify != SUCCESS) {
return 403;
}
proxy_pass /webhook;
}
}
#Desenvolvido pela Consultoria Técnica da Efí

Avatar discord do usuario _josemax

_josemax

Ver Respostas

não tem jeito não estou conseguindo passar desta parte server {
#
# ...
#
listen [::]:443 ssl ipv6only=on;
listen 443 ssl;
ssl_certificate server_ssl.crt.pem;
ssl_certificate_key server_ssl.key.pem;
ssl_client_certificate /root/chain-pix-webhooks-prod.crt;
ssl_verify_client optional;
ssl_verify_depth 3;
#
# ...
#
location /webhook {
if ($ssl_client_verify != SUCCESS) {
return 403;
}
proxy_pass /webhook;
}
}
#Desenvolvido pela Consultoria Técnica da Efí

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia. Tudo bem?
Para obter o Qr Code, após ter criado a cobrança basta consumir o endpoint GET/v2/loc/:id/qrcode, passando o id do loc da cobrança como parâmetro, que você terá o seguinte retorno:
{
"qrcode": "00020126001BR.GOV.BCB.PIX2566qrcodes-pix.ger...",
"imagemQrcode": "data:image/png;base64,iVBORw0KGgoAAQDS... "
}

Deste retorno, o parâmetro qrcode é o pix copia e cola, e parâmetro imagemQrcode é a imagem do QrCode em base64. que pode ser implementado em seus sites.

Avatar discord do usuario rubenskuhl

rubenskuhl

Fora dizer se o pacote inteiro (modalidadeAlteracao, reuso de location e split) funcionam em conjunto.

Avatar discord do usuario rubenskuhl

rubenskuhl

Cria um Pix Cobrança, e depois desse ser pago, cria um novo Pix Cobrança com o mesmo location. Aí o QR-Code pode ser com o mesmo location sempre.

Avatar discord do usuario rubenskuhl

rubenskuhl

Mas o que você poderia fazer é reuso de location.

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Oi, @leandrocostaoliveira. Infelizmente isso é uma limitação do WhatsApp mesmo, que reconhece a string como url.
Uma solução seria compartilhar o link de visualização da cobrança. Por exemplo, quando consome o endpoint GET /v2/loc/:id/qrcode é retornado o parâmetro linkVisualizacao. Daí você encaminha este link para o whats do seu cliente.
Exemplo de link de visualização: https://pix.sejaefi.com.br/cob/pagar/c0a68af7ece6468cbb8e120e29a27cb5

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas


:443> # Porta HTTPS
#
# ...
#

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

#Chave pública da Efí
SSLCACertificateFile /caminho_certificado/chain-pix-prod.crt

# mTLS Efí
SSLVerifyClient none
SSLProtocol TLSv1.2


SSLVerifyClient require
SSLVerifyDepth 3


# Tratando o /pix, redirecionando as requisições sempre para /webhook
Alias "/webhook/pix/" "/var/www/webhook/index.php"
Alias "/webhook/pix" "/var/www/webhook/index.php"

#
# ...
#

Avatar discord do usuario flaviojfreitas

flaviojfreitas

Ver Respostas

Essa é minha configuração atual:
server {
listen 443 ssl http2;
server_name pay.peticoesonline.com.br;
root /home/bichofresquim/public_html;
index index.php index.html index.htm;
ssl_certificate /etc/letsencrypt/live/pay.peticoesonline.com.br/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/pay.peticoesonline.com.br/privkey.pem;
#ssl_client_certificate /etc/letsencrypt/live/pay.peticoesonline.com.br/chain.pem;
ssl_client_certificate /home/paypo//chain-pix-prod.crt;
ssl_verify_client optional;
ssl_verify_depth 3;
include snippets/ssl.conf;
include snippets/security.conf;

location /webhook {
if ($ssl_client_verify != SUCCESS) {
return 403;
}
proxy_pass /webhook;
}

location / {
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header Accept-Encoding "";
proxy_pass http://apache;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Connection "Upgrade";
proxy_connect_timeout 600s;
proxy_send_timeout 600s;
proxy_read_timeout 600s;
proxy_ignore_client_abort on;

}

}

Avatar discord do usuario jessica_efi

jessica_efi

Boa tarde @danteredgrave. ! Para utilizar o mesmo qrcode para fazer mais de um pagamento, você pode Reutilizar o Location, com isso cada cobrança terá seu txid. Um dos módulos do nosso curso, mostra como é a Reutilização de Location no QRCode Dinâmico - https://www.youtube.com/watch?v=8YDNjUFxC4o&list=PLRqvcUTH2VsWufBmzOdTVeLEOTGrPNoiu&index=14

Em nossa documentação, você encontra também um fluxograma que exemplifica esse fluxo - https://dev.efipay.com.br/docs/api-pix/fluxogramas#reutiliza%C3%A7%C3%A3o-de-location

Avatar discord do usuario he128

he128

Ver Respostas

//Desenvolvido pela Consultoria Técnica da Efí
$config = [
"certificado" => "./certificado.pem",
"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://pix-h.api.efipay.com.br/oauth/token", // Rota base, homologação 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 => $config["certificado"], // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

echo "

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

Avatar discord do usuario davidsn4656

davidsn4656

sim server {
#
# ...
#
listen [::]:443 ssl ipv6only=on;
listen 443 ssl;
ssl_certificate server_ssl.crt.pem;
ssl_certificate_key server_ssl.key.pem;
ssl_client_certificate /root/chain-pix-webhooks-prod.crt;
ssl_verify_client optional;
ssl_verify_depth 3;
#
# ...
#
location /webhook {
if ($ssl_client_verify != SUCCESS) {
return 403;
}
proxy_pass /webhook;
}
}

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

A cobrança com vencimento ou imediata muda apenas o cob ou cobv. O location, caso você esteja usando para o copia e cola, é o mesmo.
E você tem a opção de usar apenas o cobv e gerar o copia-e-cola vocês mesmo... e essa opção é mais portável, pois aí você se atem aos endpoints do padrão do Banco Central.