Histórico de mensagens sobre webhook pix em dúvidas

EXIBINDO CONVERSAS RECENTES:

Texto: webhook pix
Canal: dúvidas
Avatar discord do usuario cascaes_

cascaes_

Ver Respostas

Faz sentido essa lógica sobre corpo de callback do webhook:

Pix Devolvido: Se algum dos objetos dentro do array "pix" contém a chave "devolucoes", é uma devolução de Pix.
Pix Enviado: Se algum dos objetos dentro do array "pix" contém as chaves "tipo" e "status", então é um Pix enviado.
Pix Recebido: Se não se encaixar em nenhuma das condições anteriores, consideramos que seja um Pix recebido.

?

Avatar discord do usuario esdrasfyy

esdrasfyy

Ver Respostas

'pix_cert' => public_path('certs/certificate-chain-prod.crt'),

alguem que manja de php e efipay ai me da uma ajuda aqui, estou cadastrando o webhook e passando o pix_cet porem ta dando esse erro

"curl_setopt_array(): Cannot represent a stream of type Output as a STDIO FILE"

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Você deve previamente configurar o webhook para sua chave Pix como é descrito aqui

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Ao receber o pagamento de uma cobrança você recebera um webhook no seguinte formato:

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"
}
]
}
Você pode ver mais exemplos aqui

Avatar discord do usuario denilsonbehenck

denilsonbehenck

Ver Respostas

Adicionei os certificados no servidor tudo, mas como que a efi retorna para o webhook quando o cliente efetua o pagamento do pix pro exemplo

Avatar discord do usuario tarcizio5821

tarcizio5821

Bom dia.
Gostaria saber se o retorno do webhook é sempre o padrão quando um pix é pago:
"pix":[
{"endToEndId":"EEEEEEEEEEEEEEEEEEEEEEEEEEE","txid":"444444444444444444444444444444444","chave":"00000000-0000000-00008-000-0000000","valor":"0.01","horario":"2024-03-26T20:51:56.000Z"}

No retorno acima, temos:
endToEndId:
txid:
chave:
valor:
horario:

Tem alguma coisa que eu possa fazer para que a entrega contenha mais dados?
Eu digo mais dados que foram passados na criação da cobrança, tipo "infoAdicionais"?

Avatar discord do usuario tarcizio5821

tarcizio5821

Ver Respostas

Bom dia Igor.
Não consegui pegar o txid, tentei de várias formas. Como disse anteriormente, não tenho conhecimentos em array e por esse motivo, tentei das seguintes maneiras:
//////////////////////
$json = '[
{
"pix":[
{"endToEndId":"EEEEEEEEEEEEEEEEEEEEEEEEEEE","txid":"444444444444444444444444444444444","chave":"00000000-0000000-00008-000-0000000","valor":"0.01","horario":"2024-03-26T20:51:56.000Z"}
]}

]';

$data = json_decode($json); // aqui seria o retorno do "$dados"
foreach($data as $item) {
echo $item->pix[0]->txid;
}
//////////////////////
Essa deu certo, mas quando coloco no arquivo de "index.php" dentro da função "salvar($dados)" do webhook, dá erros.

Tentei também todas alternativas abaixo e sem sucesso:
//////////////////////
//$data = json_decode($dados);
//$dd = $data->pix->txid;
//$conteudo = json_encode($dados).' ---- '.json_encode($dados['pix']['txid']).' ----- '.$dados['pix']['txid'].' ---- '.$dados->pix[0]->txid;
//$conteudo = json_encode($dados->pix[0]->txid).' ----- '.$dd.' ----- '.json_encode($dd).' ---- '.json_encode($dd->pix[0]->txid);
//////////////////////

Se puder me ajudar fico muito grato.

Avatar discord do usuario tarcizio5821

tarcizio5821

Ver Respostas

Como faço para pegar somente o txid da resposta do webhook no arquivo index.php?
Preciso gravar somente o txid antes de gravar no json.
Tentei "$txid = $dados.pix[0].txid;" mas não consegui porque não entendo de array.