Pular para o conteúdo

Formato do payload do webhook

Quando uma venda é confirmada na sua loja, a Miblify envia uma requisição POST para a URL do seu webhook com um payload em formato JSON. Este artigo detalha a estrutura completa desse payload.

O payload segue esta estrutura:

{
"event": "order.paid",
"created_at": "2026-03-05T14:30:00Z",
"data": {
"order": { ... },
"customer": { ... },
"store": { ... },
"items": [ ... ]
}
}
CampoTipoDescrição
eventstringTipo do evento. Atualmente, sempre order.paid.
created_atstringData e hora do disparo do webhook, no formato ISO 8601 (UTC).
dataobjectObjeto contendo os dados do pedido, cliente, loja e itens.

Contém os dados do pedido.

CampoTipoDescrição
idstringIdentificador único do pedido (formato: ord_XXXXXXXXXXXX).
statusstringStatus do pedido. No evento order.paid, será paid.
subtotal_amount_centsintegerValor bruto do pedido em centavos, antes de descontos.
discount_amount_centsintegerValor do desconto aplicado, em centavos.
total_amount_centsintegerValor final cobrado do cliente, em centavos.
coupon_codestringCódigo do cupom aplicado, se houver. Pode ser null.
is_subscription_renewalbooleantrue se o pedido é uma renovação de assinatura.
subscription_idstringIdentificador da assinatura, se aplicável. Pode ser null.
cart_idstringIdentificador do carrinho de compras. Pode ser null.
user_idstringIdentificador do usuário comprador, se autenticado.
paid_atstringData e hora da confirmação do pagamento (ISO 8601). Pode ser null.
created_atstringData e hora de criação do pedido (ISO 8601).

Contém os dados do cliente que realizou a compra.

CampoTipoDescrição
namestringNome completo do cliente.
emailstringE-mail do cliente.
documentstringCPF ou documento do cliente. Pode ser null.
phonestringTelefone do cliente (formato internacional). Pode ser null.

Contém os dados da loja que realizou a venda.

CampoTipoDescrição
idstringIdentificador único da loja (formato: str_XXXXXXXXXXXX).
namestringNome da loja.

Lista de itens vendidos no pedido.

CampoTipoDescrição
idstringIdentificador único do item.
namestringNome do produto.
price_centsintegerPreço unitário do item, em centavos.
quantityintegerQuantidade comprada.

Abaixo está um exemplo fictício completo do payload enviado quando uma venda é confirmada:

{
"event": "order.paid",
"created_at": "2026-03-05T14:30:00Z",
"data": {
"order": {
"id": "ord_1a2b3c4d5e8f",
"status": "paid",
"subtotal_amount_cents": 14900,
"discount_amount_cents": 2000,
"total_amount_cents": 12900,
"coupon_code": "LANCAMENTO20",
"is_subscription_renewal": false,
"subscription_id": null,
"cart_id": "crt_9f8e7d6c5b4a",
"user_id": "usr_xyz123abc456",
"paid_at": "2026-03-05T14:29:45Z",
"created_at": "2026-03-05T14:20:00Z"
},
"customer": {
"name": "Maria Oliveira",
"email": "[email protected]",
"document": "98765432100",
"phone": "+5521988887777"
},
"store": {
"id": "str_a1b2c3d4e5f6",
"name": "Escola Digital Pro"
},
"items": [
{
"id": "itm_z9y8x7w6v5u4",
"name": "Curso Completo de Marketing Digital",
"price_cents": 14900,
"quantity": 1
}
]
}
}

Neste exemplo:

  • A cliente Maria Oliveira comprou o produto Curso Completo de Marketing Digital por R$ 149,00.
  • Um cupom LANCAMENTO20 foi aplicado, concedendo R$ 20,00 de desconto.
  • O valor final cobrado foi de R$ 129,00 (12.900 centavos).
  • O pagamento foi confirmado às 14:29:45 UTC.

Todos os valores monetários são expressos em centavos (inteiros). Para converter para reais, divida por 100. Exemplos:

CentavosReais
9900R$ 99,00
14900R$ 149,00
500R$ 5,00

Veja como configurar pixels de rastreamento para otimizar suas campanhas de marketing.