Webhooks
A API envia uma requisição POST para a callbackUrl informada na criação da cobrança ou saque sempre que o status muda. O corpo é JSON com os dados atualizados da transação.
Em vez do seu sistema ficar perguntando "já pagou?", a PayZu chama você quando algo acontece.
Passe callbackUrl em cada criação (POST /pix , POST /withdraw , etc):
{
"amount" : 99.90 ,
"callbackUrl" : "https://seusite.com.br/webhooks/payzu" ,
"clientReference" : "order-2025-001"
}
O endpoint precisa estar acessível publicamente e responder HTTP 2xx em até 5 segundos , aceitando:
Content-Type : application/json
A PayZu reenvia o callback até 72 vezes com backoff exponencial e jitter quando não recebe 2xx em 5 segundos.
Campo Tipo Descrição idstring Identificador único da transação na PayZu clientReferencestring Identificador externo que você forneceu typestring DEPOSIT ou WITHDRAWstatusstring Ver Status de transação amountnumber Valor em reais (BRL) serviceFeeChargednumber Tarifa cobrada
Campo Tipo Descrição qrCodeTextstring Código Pix copia-e-cola (EMV) qrCodeBase64string Imagem do QR em Base64 qrCodeUrlstring URL pública do QR como PNG generatedNamestring Nome de referência generatedDocumentstring CPF ou CNPJ generatedEmailstring Email vinculado
Campo Tipo Descrição payerNamestring Nome do pagador (se houver) payerDocumentstring Documento do pagador payerInstitutionIspbstring ISPB da instituição do pagador payerInstitutionNamestring Nome da instituição
Campo Tipo Descrição receiverNamestring Nome do recebedor (se fornecido) receiverDocumentstring Documento do recebedor receiverInstitutionIspbstring ISPB da instituição do recebedor receiverInstitutionNamestring Nome da instituição
Campo Tipo Descrição withdrawPixKeystring Chave Pix usada no saque withdrawPixTypestring Ver Tipos de chave
Campo Tipo Descrição createdAtstring Quando a transação foi criada (ISO 8601) updatedAtstring Última atualização paidAtstring | null Quando foi paga (null se ainda não foi) endToEndIdstring EndToEnd ID do Pix infractionobject | undefined Presente só em caso de disputa MED, ver Glossário
Responda rápido : devolva 2xx em menos de 5s. Processe pesado em fila
Idempotência : armazene id + status pra deduplicar
Use clientReference : passe identificador externo na criação
Restrinja por IP : aceite callbacks apenas do IP oficial PayZu