Pular para o conteúdo principal

Webhook - Notificações de Pagamento

Dados da API

API Gateway
Esta API é utilizada para operações do gateway de pagamento:

Como Funciona

Quando um pagamento é processado (Gateway 2D, Gateway 3D ou Link de Pagamento), nossa plataforma pode enviar (opcional) automaticamente uma notificação HTTP POST para sua URL de callback configurada.

Configuração

Inclua o parâmetro urlCallBack na requisição:

Requisição com Webhook
{
...
"urlCallBack": "https://seusite.com.br/webhook/pagamento",
...
}

Corpo da notificação

Webhook enviará uma notificação com os seguintes campos para sua url de callback configurada

Webhook - Gateway
{
"Value": 100.50,
"Origin": "GATEWAY_2D",
"Date": "2025-09-11T14:30:25Z",
"Installments": 1,
"TransactionType": "CREDIT",
"ResultId": "010078826509090055210005100989250000000000",
"AuthorizationCode": "2345",
"Status": "0",
"PaymentLinkId": null
}

Headers HTTP

As requisições do webhook são enviadas com um header de nome 'Access-Key', essa chave de acesso é o que garante a autenticidade da requisição. Solicite ao suporte a sua 'Access-Key' para configurar na sua aplicação.

Content-Type: application/json
Access-Key: callback-id-123

Seu Endpoint

Seu endpoint deve:

  • Aceitar requisições POST
  • Retornar status HTTP 200 (para as notificações recebidas com sucesso)

Campos do Payload

CampoDescriçãoTipo
ValueValor do pagamentodecimal
OriginOrigem do pagamentostring
DateData do pagamentostring
ResultIdID do resultadostring
StatusStatus da transaçãostring
PaymentLinkIdID do link (apenas para links)string

Domínios

PROPRIEDADECONTEÚDO
OriginGATEWAY_2D, GATEWAY_3D, PAYMENT_LINK_2D

Consultar e reenviar notificações

Os endpoints de gerenciamento de webhook exigem um token Bearer válido. A consulta e o reenvio consideram somente os registros vinculados à conta autenticada.

Headers
Authorization: Bearer SEU_TOKEN
Content-Type: application/json

Consultar webhook

Utilize esta operação para consultar o link de pagamento e o último status HTTP registrado para uma notificação.

GET /api/webhook?paymentResultId=ID_DO_RESULTADO

Parâmetro

PROPRIEDADEDESCRIÇÃOTIPOLOCALOBRIGATÓRIOTAMANHO MÁXIMO
paymentResultIdIdentificador do resultado do pagamento.stringquerysim100
Exemplo de requisição
curl --request GET \
--url '<URL_API_GATEWAY>/api/webhook?paymentResultId=db7fa758-f2e2-47e6-b764-9c1e149cc7fa' \
--header 'Authorization: Bearer SEU_TOKEN'
Webhook localizado
{
"paymentLinkId": "3c228652-122e-4da6-b572-4aea64caad63",
"paymentResultId": "db7fa758-f2e2-47e6-b764-9c1e149cc7fa",
"httpStatusCode": "200"
}

Quando o callback é processado com sucesso, httpStatusCode será "200". Outros valores, como "400" ou "500", representam o status retornado pelo endpoint de callback na última tentativa. Quando ainda não houve tentativa de notificação, o campo será uma string vazia. Se nenhum registro da conta autenticada for localizado, todos os campos serão retornados como strings vazias.

Campos do retorno

PROPRIEDADEDESCRIÇÃOTIPO
paymentLinkIdIdentificador do link de pagamento. Será vazio quando não houver vínculo com um link.string
paymentResultIdIdentificador do resultado do pagamento localizado.string
httpStatusCodeÚltimo status HTTP retornado pelo endpoint de callback. Será vazio quando ainda não houver resposta.string

Reenviar webhook

Utilize esta operação para solicitar uma nova tentativa de entrega de um webhook que ainda não foi processado com sucesso. A solicitação é adicionada a uma fila e processada de forma assíncrona.

POST /api/webhook/resend
Corpo da requisição
{
"paymentResultId": "db7fa758-f2e2-47e6-b764-9c1e149cc7fa"
}

Parâmetro

PROPRIEDADEDESCRIÇÃOTIPOLOCALOBRIGATÓRIOTAMANHO MÁXIMO
paymentResultIdIdentificador do resultado do pagamento cujo webhook será reenviado.stringbodysim50
Exemplo de requisição
curl --request POST \
--url '<URL_API_GATEWAY>/api/webhook/resend' \
--header 'Authorization: Bearer SEU_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"paymentResultId":"db7fa758-f2e2-47e6-b764-9c1e149cc7fa"}'
Reenvio enfileirado
{
"paymentLinkId": "3c228652-122e-4da6-b572-4aea64caad63",
"paymentResultId": "db7fa758-f2e2-47e6-b764-9c1e149cc7fa",
"status": "queued"
}

O status queued confirma que a solicitação foi aceita para processamento assíncrono; ele não representa o resultado da nova tentativa. Consulte novamente o webhook para verificar o httpStatusCode atualizado.


Consulte também

Códigos de Resposta

Para interpretar corretamente os status das transações recebidas via webhook, consulte nossa tabela completa de códigos de resposta:

Códigos de Resposta do Host →