Notificação QRCodes
Quando um QRCode for pago, o sistema enviará uma notificação para o endereço fornecido pelo cliente, informando atualização de status do mesmo.
A URL que receberá as notificações deverá ser informada através do endpoint Cadastrar/Alterar Webhook.
Fazendo Requisição
A notificação será enviada utilizando o método POST, e espera uma resposta do tipo HTTP 200.
Segue estrutura do JSON enviado como request body:
{
"notification_type": "pix_qrcode",
"message": {
"reference_code": "ZENDRYPIXQRCODE2",
"value_cents": 2,
"content": "00020101021126580014br.gov.bcb.pix0136d5091c68-5056-481b-88ad-95eb340a1a2152040000530398654040.025802BR5925Zendry Solucoes em Paga6009SAO PAULO62220518ZENDRYPIXQRCODE263044FC9",
"status": "paid",
"generator_name": "John Doe",
"generator_document": "67178678097",
"payer_name": "John Doe",
"payer_document": "67178678097",
"registration_date": "2021-11-10T14:51:25.000-03:00",
"payment_date": "2021-11-10T14:52:10.000-03:00",
"end_to_end": "E18236120202206142202a1022c1tg10"
},
"md5":"679f3ff14b8eadd1e504f2a35c0d8fb3"
}
{
"notification_type": "pix_static_qrcode",
"message": {
"reference_code": "ZENDRYPIXQRCODE2",
"value_cents": 2,
"content": "00020101021126580014br.gov.bcb.pix0136d5091c68-5056-481b-88ad-95eb340a1a2152040000530398654040.025802BR5925Zendry Solucoes em Paga6009SAO PAULO62220518ZENDRYPIXQRCODE263044FC9",
"status": "paid",
"generator_name": "John Doe",
"generator_document": "67178678097",
"payer_name": "John Doe",
"payer_document": "67178678097",
"registration_date": "2021-11-10T14:51:25.000-03:00",
"payment_date": "2021-11-10T14:52:10.000-03:00",
"end_to_end": "E18236120202206142202a1022c1tg10"
},
"md5":"679f3ff14b8eadd1e504f2a35c0d8fb3"
}
Erro
Caso seja obtido um resultado diferente de 200, o sistema tentará enviar pelos próximos 10 minutos, a cada minuto ou enquanto não for obtido um resultado de sucesso.
O erro persistindo nas 10 tentativas, a notificação será marcada como cancelada no sistema e nossa equipe entrará em contato para averiguar quaisquer problemas de integração.
OBS: Para gerar o hash md5 da mensagem é necessário considerar o seguinte formato da STRING a ser codificada.
qrcode.{reference_code}.{end_to_end}.{value_cents}.{secret_key}
Onde:
qrcode:palavra qrcode escrita em minúsculo{reference_code}* Código de referência qrcode Pix{end_to_end}:Identificador único do pagamento Pix{value_cents}:Valor em centavos{secret_key}:Chave única, exclusiva do cliente para gerar hash. ela será gerada junto a credenciais de acesso da API
A string abaixo deve ser montada para gerar o Hash MD5 da mensagem citada como exemplo acima, considerando que a chave secreta do cliente seja a palavra SECRETKEY:
qrcode.ZENDRYPIXQRCODE2.E18236120202206142202a1022c1tg10.2.SECRETKEY
O reenvio de notificações após a primeira tentativa falha ocorrerá apenas em ambiente de produção.
Descrição dos Atributos
| PARÂMETRO | DESCRIÇÃO | TIPO |
|---|---|---|
| notification_type (Obrigatório) | Indica o tipo de mensagem transmitida | ENUM pix_qrcode (QRcode pix dinâmico) pix_static_qrcode (QRcode pix estático) |
| message (Obrigatório) | Objeto qrcode atualizado, conforme apresentado pelo endpoint Listar Qrcodes | OBJECT |
| message.reference_code (Obrigatório) | Código de identificação | STRING limite 100 caracteres |
| message.value_centes (Obrigatório) | Valor da cobrança, em centavos | INTEGER Maior que 0 |
| message.content (Obrigatório) | Conteúdo do QRCode. (Código copia e cola Pix) | STRING limite de 255 caracteres |
| message.status (Obrigatório) | Status das cobranças | STRING (Enum) error (Erro ao gerar cobrança) awaiting_payment (Aguardando Pagamento) paid (Pago) canceled (Cancelado) |
| message.generator_name (Obrigatório) | Nome do gerador das cobrança. | STRING limite 100 caracteres apenas números |
| message.generator_document (Obrigatório) | CPF/CNPJ do gerador das cobrança. | STRING limite 14 caracteres apenas números |
| message.payer_name (Obrigatório) | Nome do pagador das cobrança. | STRING limite 100 caracteres apenas números |
| message.payment_document (Obrigatório) | CPF/CNPJ do pagador das cobrança. | STRING limite 14 caracteres apenas números |
| message.registration_date (Obrigatório) | Valor da data de geração da cobrança. | STRING formato datetime YYYY-mm-ddTHH:MM:ss |
| message.payment_date (Obrigatório) | Valor da data de pagamento da cobrança. | STRING formato datetime YYYY-mm-ddTHH:MM:ss |
| message.end_toend (Obrigatório) | Identificador único do pagamento Pix | STRING limite de 32 caracteres |
| md5 (Opcional) | Hash md5 para autenticação da notificação | STRING |