V2 — Novo Padrão
Entenda o novo formato de envelope versionado do Webhook v2 da Barte.
Sellers sem integração ativa: devem integrar diretamente pelo Webhook v2 — o v1 não é mais aceito para novas integrações. A partir de 10/08/2026: o formato v1 será descontinuado para todos os sellers. Todos deverão estar no v2.
Prazo de entrega: o endpoint receptor deve responder em até 20 segundos. Requisições que ultrapassem esse tempo serão consideradas falhas e poderão ser reenviadas.
O que mudou?
A versão 1 do webhook entregava um payload plano, com todos os campos no nível raiz do objeto. A versão 2 introduz um envelope de evento versionado, que organiza os dados em uma estrutura hierárquica com identificação explícita do tipo de evento.
Estrutura
Payload plano
Envelope com eventData aninhado
Identificação do evento
Campo status
Campo eventType (ex: order.paid)
Dados da cobrança
Misturados no raiz
Isolados em eventData.charge
Dados do comprador
Campos planos
Objeto buyer em eventData
Dados físicos (POS/TEF)
Campos planos
Objeto physicalTransactionData em eventData
Identificador de evento
Não existe
Campo eventId único por evento
Quem recebe
Sellers existentes (legado)
Sellers sem integração ativa / migrados
Quem recebe o Webhook v2?
Sellers sem integração ativa: devem integrar diretamente no v2. O v1 não é aceito para novas integrações.
Sellers com integração existente em v1: devem migrar para v2 até 10/08/2026, quando o formato v1 será descontinuado.
Assinaturas (
SUBSCRIPTION): permanecem no formato v1 e não fazem parte desta migração.
Comportamento de transações físicas (POS/TEF)
Diferente de cobranças digitais, transações físicas nunca geram o evento order.sent. O primeiro evento recebido para uma transação de maquininha sempre será um status final:
order.paid
Transação aprovada na maquininha.
order.canceled
Transação recusada ou cancelada no terminal.
order.pre_authorized
Transação pré-autorizada no terminal.
Isso ocorre porque a transação física é processada de forma síncrona no terminal — quando o webhook é emitido, o resultado já é definitivo.
Headers da requisição
X-Webhook-Timestamp
integer
Unix epoch (segundos) no momento do envio.
X-Webhook-Nonce
string
32 caracteres hexadecimais — garante unicidade por requisição.
idempotency-key
string
Chave de idempotência.
authorization
string
Token de autenticação.
💡 Dica de Segurança: Valide o
X-Webhook-Timestamp(tolerância de até 5 minutos) e verifique a unicidade doX-Webhook-Noncepara evitar processamento duplicado.
Estrutura do envelope v2
Campos do envelope
version
string
Versão do formato do webhook. Valor: "2.0".
domain
string
Tipo de evento: ORDER para cobranças pontuais.
eventId
string
Identificador único do evento (distinto do UUID do pedido).
eventDatetime
string
Data e hora do evento no formato ISO 8601.
sellerId
integer
Identificador interno do vendedor.
metadata
array
Lista de pares { key, value } com informações adicionais.
O campo version indica o formato de entrega. Sempre valide esse campo para garantir compatibilidade com a versão integrada.
Tipos de evento (eventType)
eventType)O campo eventType identifica o evento ocorrido e corresponde diretamente ao status do pedido:
order.sent
Pedido criado.
order.paid
Pagamento confirmado.
order.partially_paid
Pagamento parcial recebido.
order.late
Pagamento em atraso.
order.abandoned
Pedido abandonado (atraso superior a 90 dias).
order.canceled
Pedido cancelado.
order.refund
Pedido estornado.
order.chargeback
Pedido com chargeback.
order.pre_authorized
Pedido pré-autorizado.
order.invalid
Pedido inválido.
Campos do eventData
eventDataO objeto eventData concentra todos os dados do pedido e da cobrança associada.
Campos do pedido
id
string
Identificador único do pedido. Use com GET /v2/orders/{uuid}.
status
string
Status atual do pedido. Espelha o eventType em formato legado.
amount
number
Valor total da transação (com decimal, ex: 150.00).
paymentMethod
string
Método de pagamento utilizado (ex: CREDIT_CARD_EARLY_SELLER, PIX, BOLETO).
description
string
Descrição informada na criação do pedido.
physicalTransactionData
object
Dados do terminal físico. null em transações online. Ver Campos de transação física abaixo.
Campos da cobrança (charge)
charge)id
string
UUID da cobrança.
originRequest
string
Origem da transação: API, POS, TEF, entre outros.
authorizationCode
string
Código de autorização da transação.
authorizationNsu
string
NSU (Número Sequencial Único) da transação.
acquirerAuthorizationCode
string
Código de autorização da adquirente.
acquirerAuthorizationNsu
string
NSU da adquirente.
paidDate
string
Data de pagamento no formato YYYY-MM-DD.
cardId
string
Em transações online: ID do cartão gerado para a transação. Em transações físicas (POS/TEF): BIN do cartão utilizado.
brand
string
Bandeira do cartão (ex: VISA, MASTERCARD, ELO).
fees
array
Lista de taxas cobradas. null se o evento for order.sent ou sem charge associada; [] se não há taxas registradas. Ver Estrutura de fees abaixo.
installments
integer
Número de parcelas.
Campos de transação física (physicalTransactionData)
physicalTransactionData)Presentes apenas quando originRequest for POS ou TEF. Caso contrário, o objeto é null.
providerTransactionId
string
ID gerado na transação física (correlation ID).
terminalId
string
Identificador do terminal POS.
serialNumber
string
Número de série do terminal POS.
Campos do comprador (buyer)
buyer)uuid
string
Identificador único do comprador. Use com GET /v2/buyers/{uuid}.
documentBuyer
string
CPF ou CNPJ do comprador.
string
E-mail do comprador.
Estrutura de refunds
refundschargeCode
string
Código da cobrança estornada.
amount
number
Valor estornado.
status
string
Status do estorno (SUCCESS, PENDING, ERROR).
createdAt
string
Data de criação do estorno (YYYY-MM-DD).
errorReason
string
Motivo do erro, quando aplicável.
Estrutura de fees
feesname
string
Tipo da taxa. Ver valores possíveis abaixo.
amount
number
Valor da taxa em reais.
Valores possíveis para name:
Bankslip
Taxa sobre transação de boleto bancário.
Credit card
Taxa sobre transação de cartão de crédito.
Debit card
Taxa sobre transação de cartão de débito.
PIX
Taxa sobre transação via PIX.
Reversal
Taxa cobrada sobre estornos.
Antifraud
Taxa de antifraude.
Gateway
Taxa de gateway (pode ser débito ou crédito).
Barte
Taxa da plataforma Barte (pode ser débito ou crédito).
Reversal Barte
Estorno de taxa da plataforma Barte.
Revenue Anticipation
Imposto incidente sobre antecipação de recebíveis.
Anticipation
Taxa de antecipação de recebíveis (pode ser débito ou crédito).
Partner
Taxa cobrada pelo parceiro integrador.
POS Rental
Taxa de aluguel de terminal POS.
Estrutura de address
addressExemplos de payload
order.paid — via API
order.paid — via APIorder.paid — via POS/maquininha
order.paid — via POS/maquininhaorder.refund
order.refundEm caso de dúvidas, entre em contato com o nosso time através do suporte disponibilizado.
Last updated
Was this helpful?

