Documentation Index Fetch the complete documentation index at: https://docs.aobapay.com/llms.txt
Use this file to discover all available pages before exploring further.
Os webhooks permitem que sua aplicação seja notificada automaticamente, em tempo real, sobre eventos relevantes na AobaPay .
Isso elimina a necessidade de consultas manuais à API, garantindo mais agilidade e consistência em seus processos.
Gerenciando Webhooks
Você pode gerenciar seus webhooks diretamente pelo dashboard da AobaPay. É possível:
Listar todos os webhooks ativos
Criar novos webhooks conforme sua necessidade
Desativar webhooks que não serão mais utilizados
Criando Webhooks
Boas práticas de segurança
Utilize um secret exclusivo para cada webhook
Valide a assinatura de todas as requisições recebidas
Configure apenas URLs HTTPS para maior segurança
Implemente lógica de retry para lidar com falhas temporárias
Como criar seu Webhook
Siga estes passos no dashboard da AobaPay:
Acesse a seção de Webhooks
Navegue até a seção Integrar e clique em Webhooks Inicie a configuração de um novo webhook
Inicie a criação
Clique em 'Criar' Você será direcionado ao formulário de configuração
Configure seu Webhook
Preencha os campos obrigatórios:
Nome → Identificador do webhook (ex.: “Pagamentos Aprovados”)
URL → Endpoint HTTPS que receberá as notificações
Assinatura → Secret usado para validação das requisições
Status → Defina se o webhook ficará ativo ou inativo
Protegendo suas requisições
Cada notificação enviada inclui o secret configurado , que deve ser validado pela sua aplicação.
Isso garante que apenas chamadas legítimas da AobaPay sejam processadas.
Exemplo de URL de Webhook
URL base configurada no dashboard:
https://meusite.com/webhook/aobapay
Chamadas realizadas pela AobaPay incluirão o header de assinatura com o secret:
signature: seu_secret_configurado
Exemplo de Implementação
// Exemplo de validação de webhook com Node.js/Express
app . post ( '/webhook/aobapay' , ( req , res ) => {
const signature = req . headers [ 'signature' ];
if ( signature !== process . env . WEBHOOK_SECRET ) {
return res . status ( 401 ). json ({ error: 'Invalid webhook signature' });
}
// Processa o evento recebido
const event = req . body ;
console . log ( 'Webhook recebido:' , event );
res . status ( 200 ). json ({ received: true });
});
Eventos Suportados
Atualmente, suportamos os seguintes eventos:
EVENT:CHARGE_PAID
Este evento é disparado quando um pagamento é confirmado:
{
"event" : "EVENT:CHARGE_PAID" ,
"data" : {
"id" : "ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"externalID" : null ,
"brCode" : "00020001021226810014br.gov.bcb.pix255.." ,
"brCodeImageUrl" : "https://api.aobapay.com/v1/qrcode/ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"amount" : 300 ,
"endToEndId" : "8129812-189asnk1y1-1289aisn-1-2" ,
"expiration" : "300" ,
"fee" : 78 ,
"expiresAt" : "2025-09-16 11:43:30" ,
"status" : "PAID" ,
"customer" : {
"id" : "cus_2352001f-43da-4875-b4c0-cc6350d3891e" ,
"name" : "Brendo Oliveira" ,
"document" : "123.456.789.01" ,
"email" : "brendo@aobapay.com" ,
"phone" : "(15) 99799-1010"
}
}
}
EVENT:CHARGE_EXPIRED
Este evento é disparado quando uma cobrança é expirada
{
"event" : "EVENT:CHARGE_EXPIRED" ,
"data" : {
"id" : "ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"externalID" : null ,
"brCode" : "00020001021226810014br.gov.bcb.pix255.." ,
"brCodeImageUrl" : "https://api.aobapay.com/v1/qrcode/ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"amount" : 300 ,
"expiration" : "300" ,
"fee" : 78 ,
"expiresAt" : "2025-09-16 11:43:30" ,
"status" : "EXPIRED" ,
"customer" : {
"id" : "cus_2352001f-43da-4875-b4c0-cc6350d3891e" ,
"name" : "Brendo Oliveira" ,
"document" : "123.456.789.01" ,
"email" : "brendo@aobapay.com" ,
"phone" : "(15) 99799-1010"
}
}
}
EVENT:CHARGE_REFUND
Este evento é disparado quando uma cobrança é extornada
{
"event" : "EVENT:CHARGE_REFUND" ,
"data" : {
"id" : "ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"externalID" : null ,
"brCode" : "00020001021226810014br.gov.bcb.pix.." ,
"brCodeImageUrl" : "https://api.aobapay.com/v1/qrcode/ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"amount" : 250 ,
"endToEndId" : "8129812-189asnk1y1-1289aisn-1-2" ,
"expiration" : "300" ,
"fee" : 78 ,
"expiresAt" : "2025-09-16 11:43:30" ,
"status" : "REFUNDED" ,
"customer" : {
"id" : "cus_2352001f-43da-4875-b4c0-cc6350d3891e" ,
"name" : "Brendo Otavio" ,
"document" : "490.464.828-55" ,
"email" : "brendo.dev@outlook.com" ,
"phone" : "(15) 99787-6029"
}
}
}
EVENT:CASH_OUT
Este evento é disparado quando uma cobrança é extornada
{
"event" : "EVENT:CASH_OUT" ,
"data" : {
"id" : "wdl_47d56145-870e-4240-83a4-c0199308278b" ,
"externalID" : "123-SAQUE" ,
"amount" : 200 ,
"comment" : "PAGAMENTO" ,
"status" : "DONE" ,
"destination" : {
"name" : "BRENDO OTAVIO DE OLIVEIRA SANTOS" ,
"bankName" : "BCO SANTANDER (BRASIL) S.A." ,
"pikKey" : "brendo@aobapay.com" ,
"pixKeyType" : "EMAIL" ,
"account" : "00000000000000000" ,
"branch" : "0000"
},
"createdAt" : "2025-09-17 15:59:07" ,
"updatedAt" : "2025-09-17 15:59:10"
}
}
EVENT:MED_CREATED
Este evento é disparado quando uma Disputa/Med é criada
{
"event" : "EVENT:MED_CREATED" ,
"data" : {
"id" : "ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"externalID" : null ,
"endToEndId" : "8129812-189asnk1y1-1289aisn-1-2" ,
"amount" : 200 ,
"name" : "Sr Fulano" ,
"email" : "vecna@strangerthings.com" ,
"status" : "OPENED" ,
"disputeReason" : "Will me enganou!" ,
"createdAt" : "2025-09-17 15:59:07" ,
"updatedAt" : "2025-09-17 15:59:10"
}
}
EVENT:MED_REJECTED
Este evento é disparado quando uma Disputa/Med é Rejeitada e Favorável a empresa.
{
"event" : "EVENT:MED_REJECTED" ,
"data" : {
"id" : "ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"externalID" : null ,
"endToEndId" : "8129812-189asnk1y1-1289aisn-1-2" ,
"amount" : 200 ,
"name" : "Sr Fulano" ,
"email" : "vecna@strangerthings.com" ,
"status" : "REJECTED" ,
"disputeReason" : "Will me enganou!" ,
"createdAt" : "2025-09-17 15:59:07" ,
"updatedAt" : "2025-09-17 15:59:10"
}
}
EVENT:MED_CANCELLED
Este evento é disparado quando uma Disputa/Med Cancelado
{
"event" : "EVENT:MED_CANCELLED" ,
"data" : {
"id" : "ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"externalID" : null ,
"endToEndId" : "8129812-189asnk1y1-1289aisn-1-2" ,
"amount" : 200 ,
"name" : "Sr Fulano" ,
"email" : "vecna@strangerthings.com" ,
"status" : "CANCELLED" ,
"disputeReason" : "Will me enganou!" ,
"createdAt" : "2025-09-17 15:59:07" ,
"updatedAt" : "2025-09-17 15:59:10"
}
}
EVENT:MED_ACCEPTED
Este evento é disparado quando uma Disputa/Med Aceito e Favorável ao cliente
{
"event" : "EVENT:MED_ACCEPTED" ,
"data" : {
"id" : "ch_abb6bc4f-f55d-45ff-8be2-8fdbde0cb8b8" ,
"externalID" : null ,
"endToEndId" : "8129812-189asnk1y1-1289aisn-1-2" ,
"amount" : 200 ,
"name" : "Sr Fulano" ,
"email" : "vecna@strangerthings.com" ,
"status" : "ACCEPTED" ,
"disputeReason" : "Will me enganou!" ,
"createdAt" : "2025-09-17 15:59:07" ,
"updatedAt" : "2025-09-17 15:59:10"
}
}
Nota Importante
Todos os valores monetários são expressos em centavos
O campo fee representa a taxa cobrada pela AobaPay
O campo event identifica o tipo de evento recebido
Precisa de ajuda? Nossa equipe está disponível para auxiliar na implementação de webhooks. Entre em contato pelo e-mail contato@aobapay.com