# Eventos de pedido

> Pedidos salvos pela primeira vez e pedidos salvos que foram alterados.



## order.placed

> Enviado quando um pedido é armazenado pela primeira vez. Inclui os itens e o e-mail de campanha ou de automação ao qual o pedido é atribuído. Alfa: aberto apenas à equipe do Emailit.

# order.placed

Enviado quando o Emailit armazena um pedido pela primeira vez: a partir de [Criar ou atualizar um pedido](/pt/docs/api-reference/orders/create/), do script de rastreamento ou de [Importar pedidos em massa](/pt/docs/api-reference/orders/batch/) com `historical` definido como `false`. As importações históricas não o enviam. O mesmo evento pode iniciar uma automação. Consulte [E-commerce](/pt/docs/commerce/).

> **O e-commerce está em alfa:** O e-commerce está aberto apenas à equipe do Emailit enquanto o testamos. Consulte [Quem pode usar o e-commerce](/pt/docs/commerce/#who-can-use-commerce).

As requisições de webhook trazem um array JSON de eventos como este; consulte [Requisições de webhook](/pt/docs/webhooks/webhook-requests/).

```json
{
  "event_id": "evt_381an2bijq9dF40JdqYLuJT43Z4",
  "type": "order.placed",
  "object": {
    "object": "order",
    "id": "ord_3aMEK4No62Zw8S1fcHNznAnnbfp",
    "external_id": "1042",
    "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
    "email": "ada@example.com",
    "status": "paid",
    "currency": "USD",
    "subtotal": 107,
    "discount": 10.7,
    "shipping": 5,
    "tax": 0,
    "total": 101.3,
    "refunded_amount": 0,
    "coupon_codes": [
      "WELCOME-7KQ2M9XA"
    ],
    "cart_id": "c-58f1a2",
    "source": "api",
    "placed_at": "2026-10-08T14:32:10.000Z",
    "paid_at": "2026-10-08T14:32:11.204Z",
    "fulfilled_at": null,
    "canceled_at": null,
    "refunded_at": null,
    "attribution": {
      "email_id": "eml_3TSvDAUQi7vqxvAQ1UEVN7k4igq",
      "campaign_id": "cmp_3zNrBaNjAoPK1l0IL2GQ3pDkubN",
      "campaign_name": "October newsletter",
      "variant_id": null,
      "automation_id": null,
      "automation_name": null,
      "type": "click",
      "touched_at": "2026-10-08T09:41:52.000Z"
    },
    "items": [
      {
        "product_id": "8123456789",
        "variant_id": "42-blue",
        "sku": "TRS-BLU-42",
        "title": "Trail running shoe",
        "quantity": 1,
        "unit_price": 89,
        "total": 89,
        "categories": [
          "Shoes",
          "Running"
        ],
        "url": "https://shop.example.com/products/trail-running-shoe",
        "image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
      }
    ],
    "metadata": {
      "channel": "web"
    },
    "created_at": "2026-10-08T14:32:11.204Z",
    "updated_at": "2026-10-08T14:32:11.204Z"
  },
  "data": {
    "object": {
      "object": "order",
      "id": "ord_3aMEK4No62Zw8S1fcHNznAnnbfp",
      "external_id": "1042",
      "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
      "email": "ada@example.com",
      "status": "paid",
      "currency": "USD",
      "subtotal": 107,
      "discount": 10.7,
      "shipping": 5,
      "tax": 0,
      "total": 101.3,
      "refunded_amount": 0,
      "coupon_codes": [
        "WELCOME-7KQ2M9XA"
      ],
      "cart_id": "c-58f1a2",
      "source": "api",
      "placed_at": "2026-10-08T14:32:10.000Z",
      "paid_at": "2026-10-08T14:32:11.204Z",
      "fulfilled_at": null,
      "canceled_at": null,
      "refunded_at": null,
      "attribution": {
        "email_id": "eml_3TSvDAUQi7vqxvAQ1UEVN7k4igq",
        "campaign_id": "cmp_3zNrBaNjAoPK1l0IL2GQ3pDkubN",
        "campaign_name": "October newsletter",
        "variant_id": null,
        "automation_id": null,
        "automation_name": null,
        "type": "click",
        "touched_at": "2026-10-08T09:41:52.000Z"
      },
      "items": [
        {
          "product_id": "8123456789",
          "variant_id": "42-blue",
          "sku": "TRS-BLU-42",
          "title": "Trail running shoe",
          "quantity": 1,
          "unit_price": 89,
          "total": 89,
          "categories": [
            "Shoes",
            "Running"
          ],
          "url": "https://shop.example.com/products/trail-running-shoe",
          "image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
        }
      ],
      "metadata": {
        "channel": "web"
      },
      "created_at": "2026-10-08T14:32:11.204Z",
      "updated_at": "2026-10-08T14:32:11.204Z"
    }
  }
}
```

## Campos

- `event_id` (string): ID do evento (`evt_…`). Uma nova tentativa da requisição traz o mesmo ID, então use-o para ignorar eventos que você já processou. Você também pode consultar o evento com [Obter um evento](/pt/docs/api-reference/events/get/).

- `type` (string): Sempre `order.placed`.

- `object` (object): O pedido que o evento descreve. Os campos dele estão listados abaixo.

- `data.object` (object): O mesmo objeto de novo, no formato que a [API de eventos](/pt/docs/api-reference/events/get/) retorna em `data`.

### Objeto de pedido

O mesmo objeto que [Obter um pedido](/pt/docs/api-reference/orders/get/) retorna.

- `id` (string): ID do pedido (`ord_…`).

- `object` (string): Sempre `order`.

- `external_id` (string): O ID do pedido na sua loja.

- `contact_id` (string | null): O contato do comprador (`con_…`), ou `null`.

- `email` (string | null): O endereço de e-mail do comprador, em minúsculas.

- `status` (string): `placed`, `paid`, `fulfilled`, `canceled` ou `refunded`.

- `currency` (string): Código ISO 4217 de três letras dos valores.

- `subtotal, discount, shipping, tax` (number | null): Os valores do pedido, ou `null` quando não foram enviados.

- `total` (number): Total do pedido.

- `refunded_amount` (number): Valor reembolsado até agora.

- `coupon_codes` (string[]): Códigos de cupom ou de desconto usados no pedido.

- `cart_id` (string | null): O ID do carrinho ou do checkout na sua loja de onde o pedido veio.

- `source` (string): `api`, `js` (o script de rastreamento) ou `import`.

- `placed_at` (string): Quando o pedido foi feito, em ISO 8601 UTC.

- `paid_at, fulfilled_at, canceled_at, refunded_at` (string | null): Quando o pedido teve esse status pela primeira vez no Emailit.

- `attribution` (object | null): O e-mail ao qual o pedido é atribuído, ou `null`: `email_id`, `campaign_id`, `campaign_name`, `variant_id`, `automation_id`, `automation_name`, `type` (`click` ou `open`) e `touched_at`. Consulte [Como os pedidos são atribuídos aos e-mails](/pt/docs/commerce/#how-orders-are-credited-to-emails).

- `items` (object[]): Itens, cada um com `product_id`, `variant_id`, `sku`, `title`, `quantity`, `unit_price`, `total`, `categories`, `url` e `image_url`.

- `metadata` (object): Os seus próprios dados de chave e valor do pedido.

- `created_at, updated_at` (string): Quando o Emailit armazenou o pedido e quando ele mudou pela última vez, em ISO 8601 UTC.

---
Fonte: https://emailit.com/pt/docs/webhooks/events/order/order-placed/

## order.updated

> Enviado quando um pedido armazenado muda, por exemplo o status ou um reembolso. Quando o status mudou, o evento inclui o status anterior. Alfa: aberto apenas à equipe do Emailit.

# order.updated

Enviado quando um pedido que o Emailit já armazenou muda:

- Você altera o status, o reembolso ou os metadados dele com [Atualizar um pedido](/pt/docs/api-reference/orders/update/).
- Você envia o mesmo pedido de novo com [Criar ou atualizar um pedido](/pt/docs/api-reference/orders/create/), ou o script de rastreamento o envia de novo.
- [Importar pedidos em massa](/pt/docs/api-reference/orders/batch/) com `historical` definido como `false` o atualiza. As importações históricas não enviam o evento.

Quando o status mudou, o evento também traz `previous_status`.

> **O e-commerce está em alfa:** O e-commerce está aberto apenas à equipe do Emailit enquanto o testamos. Consulte [Quem pode usar o e-commerce](/pt/docs/commerce/#who-can-use-commerce).

As requisições de webhook trazem um array JSON de eventos como este; consulte [Requisições de webhook](/pt/docs/webhooks/webhook-requests/).

```json
{
  "event_id": "evt_3sRH2D1JwRBeo2uyN9p2NM4VX3i",
  "type": "order.updated",
  "object": {
    "object": "order",
    "id": "ord_3aMEK4No62Zw8S1fcHNznAnnbfp",
    "external_id": "1042",
    "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
    "email": "ada@example.com",
    "status": "fulfilled",
    "currency": "USD",
    "subtotal": 107,
    "discount": 10.7,
    "shipping": 5,
    "tax": 0,
    "total": 101.3,
    "refunded_amount": 0,
    "coupon_codes": [
      "WELCOME-7KQ2M9XA"
    ],
    "cart_id": "c-58f1a2",
    "source": "api",
    "placed_at": "2026-10-08T14:32:10.000Z",
    "paid_at": "2026-10-08T14:32:11.204Z",
    "fulfilled_at": "2026-10-09T11:05:43.019Z",
    "canceled_at": null,
    "refunded_at": null,
    "attribution": {
      "email_id": "eml_3TSvDAUQi7vqxvAQ1UEVN7k4igq",
      "campaign_id": "cmp_3zNrBaNjAoPK1l0IL2GQ3pDkubN",
      "campaign_name": "October newsletter",
      "variant_id": null,
      "automation_id": null,
      "automation_name": null,
      "type": "click",
      "touched_at": "2026-10-08T09:41:52.000Z"
    },
    "items": [
      {
        "product_id": "8123456789",
        "variant_id": "42-blue",
        "sku": "TRS-BLU-42",
        "title": "Trail running shoe",
        "quantity": 1,
        "unit_price": 89,
        "total": 89,
        "categories": [
          "Shoes",
          "Running"
        ],
        "url": "https://shop.example.com/products/trail-running-shoe",
        "image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
      }
    ],
    "metadata": {
      "channel": "web"
    },
    "created_at": "2026-10-08T14:32:11.204Z",
    "updated_at": "2026-10-09T11:05:43.019Z"
  },
  "previous_status": "paid",
  "data": {
    "object": {
      "object": "order",
      "id": "ord_3aMEK4No62Zw8S1fcHNznAnnbfp",
      "external_id": "1042",
      "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
      "email": "ada@example.com",
      "status": "fulfilled",
      "currency": "USD",
      "subtotal": 107,
      "discount": 10.7,
      "shipping": 5,
      "tax": 0,
      "total": 101.3,
      "refunded_amount": 0,
      "coupon_codes": [
        "WELCOME-7KQ2M9XA"
      ],
      "cart_id": "c-58f1a2",
      "source": "api",
      "placed_at": "2026-10-08T14:32:10.000Z",
      "paid_at": "2026-10-08T14:32:11.204Z",
      "fulfilled_at": "2026-10-09T11:05:43.019Z",
      "canceled_at": null,
      "refunded_at": null,
      "attribution": {
        "email_id": "eml_3TSvDAUQi7vqxvAQ1UEVN7k4igq",
        "campaign_id": "cmp_3zNrBaNjAoPK1l0IL2GQ3pDkubN",
        "campaign_name": "October newsletter",
        "variant_id": null,
        "automation_id": null,
        "automation_name": null,
        "type": "click",
        "touched_at": "2026-10-08T09:41:52.000Z"
      },
      "items": [
        {
          "product_id": "8123456789",
          "variant_id": "42-blue",
          "sku": "TRS-BLU-42",
          "title": "Trail running shoe",
          "quantity": 1,
          "unit_price": 89,
          "total": 89,
          "categories": [
            "Shoes",
            "Running"
          ],
          "url": "https://shop.example.com/products/trail-running-shoe",
          "image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
        }
      ],
      "metadata": {
        "channel": "web"
      },
      "created_at": "2026-10-08T14:32:11.204Z",
      "updated_at": "2026-10-09T11:05:43.019Z"
    },
    "previous_status": "paid"
  }
}
```

## Campos

- `event_id` (string): ID do evento (`evt_…`). Uma nova tentativa da requisição traz o mesmo ID, então use-o para ignorar eventos que você já processou. Você também pode consultar o evento com [Obter um evento](/pt/docs/api-reference/events/get/).

- `type` (string): Sempre `order.updated`.

- `object` (object): O pedido depois da mudança. Ele tem os mesmos campos que em [`order.placed`](/pt/docs/webhooks/events/order/placed/#order-object) e em [Obter um pedido](/pt/docs/api-reference/orders/get/).

- `previous_status` (string): O status do pedido antes da mudança. Presente apenas quando o status mudou. Fica ao lado de `object`, e não dentro dele.

- `data` (object): `object` e `previous_status` de novo, no formato que a [API de eventos](/pt/docs/api-reference/events/get/) retorna em `data`.

---
Fonte: https://emailit.com/pt/docs/webhooks/events/order/order-updated/
