Histórico de mensagens sobre js

EXIBINDO CONVERSAS RECENTES:

Texto: js
# cartões
Avatar discord do usuario gabrielgaliaso

gabrielgaliaso

Ver Respostas

Olá, para transações via cartão de crédito é obrigado o uso do payment_token no json de request? mesmo para quem é PCI?

# pix
Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Agora retornou aqui em dados.json

# pix
Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Ver Respostas

O arquivo dados.json não escreve nada

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Ok, no $body insira o ?ignorar=
$body = '{
"webhookUrl": "https://julioerp.agenciaweblab.com.br/webhook.php?ignorar="
}';

E no arquivo "/webhook.php" inseira o exemplo de código abaixo:

php

function resposta($status, $mensagem, $dados)
{
$resposta['status'] = $status;
$resposta['mensagem'] = $mensagem;
$resposta['dados'] = $dados;
$json_resposta = '
' . json_encode($resposta, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . '
';

header("HTTP/1.1 " . $status);
echo $json_resposta;
}

function salvar($dados)
{
// Crie um arquivo .;json para salvar as informações
$nomeArquivo = './dados.json';
$dadosGravados = json_decode(file_get_contents($nomeArquivo), true);
$arquivo = fopen($nomeArquivo, 'w');

// Incrementa as informações enviadas com o que já havia gravado
array_push($dadosGravados, $dados);

if (fwrite($arquivo, json_encode($dadosGravados))) {
resposta(200, "Requisição realizada com sucesso!", $dados);
} else {
resposta(300, "Falha ao salvar os dados da requisição.", $dados);
}

fclose($arquivo);
}

function requisicao($metodo, $body, $parametros)
{
switch ($metodo) {
case 'POST':
salvar($body);
break;
case 'GET':
resposta(200, "Requisição realizada com sucesso!", $body);
break;
}
}

// Obtém o método HTTP, body e parâmetros da requisição
$metodo = $_SERVER['REQUEST_METHOD'];
$parametros = explode('/', trim($_SERVER['REQUEST_URI'], '/'));
$body = json_decode(file_get_contents('php://input'), true);

try {
requisicao($metodo, $body, $parametros);
} catch (Exception $e) {
resposta(400, $e->getMessage(), $e);
}

A fim de teste, neste exemplo está salvando o json recebido em um arquivo dados.json. Então na mesma raiz crie-o com permissão de leitura e escrita. E escreva dentro do arquivo dados.json assim: [] para iniciar o json. Então simule um pagamento para receber a notificação.
Depois dos testes, pode manipular o json e gravar em um banco de dados.

# pix
Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

Meu Webhook: public function webhook() {
$body = '{
"webhookUrl": "https://julioerp.agenciaweblab.com.br/webhook.php"
}';
try {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this->config['rotas'] . '/v2/webhook/' . $this->config['chave_pix']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_SSLCERT, $this->config["certificado"]);
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, '');
$headers = array();
$headers[] = 'Authorization: Basic ' . $this->access_token;
$headers[] = 'X-Skip-Mtls-Checking: true';
$headers[] = 'Content-Type: application/json';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);

echo '

';
var_dump($this->config['chave_pix'], $this->config['client_id'], $this->config['client_secret'], $result);
echo '
';

if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
curl_close($ch);
return $result;
} catch (Exception $e) {
echo '
';
var_dump($e->getCode(), $e->getFile(), $e->getMessage());
echo '
';
}
}

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

@alissonmaciel_32335, troque no header o content_type para $headers[] = 'Content-Type: application/json';

# pix
Avatar discord do usuario alissonmaciel_32335

alissonmaciel_32335

E estou recebendo este erro:
Chave PIX: string(36) "5cd9a718-ce6d-4564-bc10-c5b03e7a998f"
Response do método webhook: string(172) "{"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 allgood.eth

allgood.eth

aonde posso encontrar os logs de webhook? cadastrei um webhook com sucesso(recebi o evento teste_webhook) mas nao consigo receber nenhuma confirmacao de pagamento em homologacao. criei alguns cob com valores de 1 a 10 e de 11 a 100 e nada chegou.


json => {"evento":"teste_webhook","data_criacao":"2024-05-08T19:15:10.505Z"}

# pix
Avatar discord do usuario ksevendev

ksevendev

Quando se atribuí

json_decode(..., true)

True após o resultado qual quer decodificar, o mesmo é extraído por array e não objeto...

Tenta
$body[0]["pix"][0]["txid"]
ou
$body["pix"]["txid"]

Indiquei pelo que obsevo ta array com sub array, ou talvez seja mal interpretação minha ai ta a segunda opção.

# pix
Avatar discord do usuario peduuuu

peduuuu

e diversos outros mas não consigo extrair so me retorna um array NULL no JSON

# pix
Avatar discord do usuario peduuuu

peduuuu

to usando o codigo da própria documentação para tratar o JSON de notificação, imagino eu que essa linha seja a responsável por colher o json

$body = json_decode(file_get_contents('php://input'), true);

# pix
Avatar discord do usuario peduuuu

peduuuu

Esse é o JSON que esta sendo salvo no arquivo dados.json no servidor webhook, mas quero quarda em um db não pretendo guarda em um JSON mas quero apenas o campo txid
imagem enviada na mensagem pelo usuario peduuuu

# pix
Avatar discord do usuario peduuuu

peduuuu

estou me aventurando nesse mundo, e me veio a dificuldade na hora de extrair o 'txid' do JSON

# pix
Avatar discord do usuario peduuuu

peduuuu

Alguém pra me da um help pra tratar o JSON de retorno na APi pix ? KKKK

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Um detalhe que você precisa conferir, é se você registrar a URL assim http://urldosite.com.br/notifications.php, ao acionar o webhook, será acrescentado um /pix na URL. Portanto, deve-se ser tratado a adição do /pix na URL.

Para solucionar isso, cadastre seu webhook URL com a query param ?ignorar=. Assim, quando o webhook for acionado, o /pix será tratado como um parâmetro e você receberá o JSON no arquivo notifications.php, conforme a seguinte URL: http://urldosite.com.b/notifications.php?ignorar=/pix.

# cartões
Avatar discord do usuario cavalcantegb.

cavalcantegb.

Ver Respostas

Boa noite pessoal,

Estou tentando rodar o código de exemplo para pagamento com cartão de crédito, mas estou recebendo Connection Refused. Alguém sabe dizer o que pode ser esse erro? Configurei o credentials.json com as informações pedidas client_id, client_secret, sandbox e timeout.

Alguém sabe informar o que poderia estar faltando para realizar os testes?

# pix
Avatar discord do usuario cseabra.

cseabra.

bom dia! Estou tendo o seguinte problema ao fazer uso do SDK Java (estava funcionando há um tempo atrás):

mensagem:

java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: sun.security.ssl.SSLContextImpl$DefaultSSLContext)

stack:

at br.com.efi.efisdk.Request.send(Request.java:51) ~[sdk-java-apis-efi-1.0.0.jar:na]
at br.com.efi.efisdk.Auth.authorize(Auth.java:63) ~[sdk-java-apis-efi-1.0.0.jar:na]
at br.com.efi.efisdk.APIRequest.send(APIRequest.java:61) ~[sdk-java-apis-efi-1.0.0.jar:na]
at br.com.efi.efisdk.Endpoints.kernelCall(Endpoints.java:129) ~[sdk-java-apis-efi-1.0.0.jar:na]
at br.com.efi.efisdk.Endpoints.call(Endpoints.java:94) ~[sdk-java-apis-efi-1.0.0.jar:na]

mais alguém?

# pix
Avatar discord do usuario carlossulzer

carlossulzer

Ver Respostas

Boa noite. Como faço para consultar um pix gerado para saber se foi pago ou não em .net core. Vi alguns exemplos mas utiliza E2EID e não tenho essa informação. Isso funciona em homologação ou só em produção?

dynamic efi = new EfiPay(JObject.Parse(File.ReadAllText("credentials.json")));

var param = new
{
e2eId = ""
};

try
{
var response = efi.PixDetailReceived(param);
Console.WriteLine(response);
}
catch (EfiException e)
{
Console.WriteLine(e.ErrorType);
Console.WriteLine(e.Message);
}

# pix
Avatar discord do usuario ronaldo_pertec

ronaldo_pertec

processing: https://pix.api.efipay.com.br/oauth/token
Trying 52.3.67.197:443...
Connected to pix.api.efipay.com.br (52.3.67.197) port 443
CAfile: none
CApath: none
ALPN: offers http/1.1
NSS: client certificate from file
subject: C=BR,CN=301970
start date: May 19 20:28:50 2021 GMT
expire date: May 19 20:28:50 2024 GMT
common name: 301970
issuer: [email protected],CN=api-pix.gerencianet.com.br,OU=Infraestrutura,O=Gerencianet Pagamentos do Brasil Ltda,ST=Minas Gerais,C=BR
ALPN: server accepted http/1.1
SSL connection using TLS_AES_256_GCM_SHA384
Server certificate:
subject: CN=.api.efipay.com.br,O=EFI S.A. - INSTITUICAO DE PAGAMENTO,L=OURO PRETO,ST=MINAS GERAIS,C=BR
start date: May 17 19:31:27 2023 GMT
expire date: Jun 17 19:31:26 2024 GMT
common name: .api.efipay.com.br
issuer: CN=GlobalSign RSA OV SSL CA 2018,O=GlobalSign nv-sa,C=BE
using HTTP/1.1
> POST /oauth/token HTTP/1.1
Host: pix.api.efipay.com.br
api-sdk: efi-php-1.8.0
User-Agent: GuzzleHttp/7
Content-Type: application/json
Authorization: Basic Q2xpZW50X0lkXzcwMWE0OGU2ZWExMDM0ODk5NjAxNTIzY2VmZjY5ZTZlM2M4OGVjMDA6Q2xpZW50X1NlY3JldF9hMDYyZmU5OWE0NjhmYjViZjIzZmE0YzgwMTUyZDFlM2RhNWIzNjFj
Content-Length: 35

Empty reply from server
Closing connection