Solicitação de entrega (webhook)

Este payload espelha as informações do pedido fornecidas pela filial. Por isso, alguns campos podem não aparecer ou ser nulos quando a informação não foi fornecida, já que alguns campos são opcionais na API de pedidos.

Leia a documentação de pedidos para entender os campos obrigatórios.

  • amount: cents
  • weight: grams
  • height: cm
  • width: cm
  • length: cm
  • cubic_volume: cm3
  • keep_prescription: indica se o entregador deve recolher a receita com o paciente no momento da entrega (mais comum no setor farmacêutico)
  • thermolabile: indica se os itens do pedido são termolábeis e requerem tratamento especial
  • pos_terminal_required: indica se o entregador deve levar a maquininha de cartão
  • return_to_origin: indica se o entregador designado para este pedido deve retornar à origem
  • observation: campo de texto para comentários ou observações sobre a entrega

Bloco opcional enviado apenas quando a integração filial × transportadora tem o pincode de coleta habilitado. A transportadora deve inspecionar pincode_owner para decidir qual fluxo executar.

  • pincode: true quando o pincode de coleta é obrigatório para esta entrega.
  • pincode_owner: "carrier" — modelo tradicional: a transportadora gera o PIN e o devolve via eventos at-pickup-point / collecting-delivery usando collect_verification_code. "abbiamo" — modelo de pincode do motorista para a filial: a Abbiamo é a proprietária do PIN e o envia pré-gerado em pincode_value. A transportadora deve exibi-lo ao motorista no seu próprio aplicativo e aguardar um webhook PICKUP_PIN_VALIDATION_REQUEST para liberar a coleta (veja Validação de pincode de coleta).
  • pincode_value: string de 4 dígitos. Presente apenas quando pincode_owner = "abbiamo". Deve ser exibido ao motorista no aplicativo da transportadora exatamente como recebido.

Sempre que uma filial solicita uma entrega a uma transportadora, este evento é disparado. Um payload com os detalhes do pedido e as informações do método de entrega é apresentado abaixo:

{
  "event_type": "DELIVERY_REQUEST",
  "seller": {
    "seller_name": "Go Go Fruits",
    "seller_id": "eb064ede-08f3-470e-a37c-5b796a17cca8",
    "seller_document_number": "12345678000190",
    "seller_group_id": "b7d56bca-606e-405e-bf4d-9b0a3291b61d",
    "seller_contacts": [ // optinal array. It depends wheter the seller has it configured or not
      {
        "name": "Eduardo Silveira",
        "phone": "21999999999",
        "phone_country_code": "55",
        "email": "contato@exemplo.com.br"
      }
    ],
  },
  "carrier": {
    "name": "CARRIER_BRAND_NAME",
    "max_dispatched_time": "14:00:00-03",
    "expected_delivery_date": "2022-12-22T23:59:00.000-03:00",
    "total_expected_delivery_price": 1200,
    "method": {
      "external_id": "name/id",
      "id": "e84b2788-5b78-40dd-95cf-75807f70aaaa",
      "name": "CARRIER_BRAND_NAME_D0",
      "type": "D0"
    }
  },
  "logistic_data": {
    "headers": {
      "Authorization": "Bearer xxx"
    },
    "pickup_verification": { // optional · see callout above
      "pincode": true,
      "pincode_owner": "abbiamo", // "carrier" | "abbiamo"
      "pincode_value": "8745" // present only when pincode_owner = "abbiamo"
    }
  },
  "source_address": {
    "zip_code": "04029904",
    "country": "BRA",
    "state": "SP",
    "city": "São Paulo",
    "neighborhood": "Indianópolis",
    "street": "Avenida Ibirapuera",
    "street_number": "3407",
    "complement": null,
    "reference": null,
    "latitude": -23.52045997445427,
    "longitude": -46.438805678513575
  },
  "make_route": false,
  "courier_must_return": true,
  "route_id": null, // exists when make_route is true
  "route_name": null, // exists when make_route is true
  "deliveries": [
    {
      "invoice_number": "example_invoice_number_1",
      "invoice_access_key": "35200000000000000000000000000000000000000000",
      "invoice_created_at": "2023-06-22T18:59:37.024Z",
      "delivery_id": "851dc274-e090-4881-8f3c-5b660cecf059",
      "order_number": "example_carrier_payload_1",
      "tracking": "a-vBGOS",
      "amount": 6909,
      "expected_delivery_price": 1000,
      "carrier_additional_information": {
        "keep_prescription": true,
        "thermolabile": true,
        "pos_terminal_required": true,
        "return_to_origin": true,
        "observation": "pegar maquina com Walmir no caixa"
      },
      "volumes": [
        {
          "id": "4754cd99-3378-4e6c-bdaf-53db23ac5a4f",
          "weight": 0,
          "height": null,
          "width": null,
          "length": null,
          "cubic_volume": 0
        }
      ],
      "customer": {
        "name": "Machado de Assis",
        "phone": "911111111",
        "phone_country_code": "55",
        "document_number": "12345678909"
      },
      "destination_address": {
        "zip_code": "08050360",
        "country": "BRA",
        "state": "SP",
        "city": "São Paulo",
        "neighborhood": "Jardim das Camélias",
        "street": "Rua Doutor Alfredo Sales",
        "street_number": "931",
        "complement": "sala 2",
        "reference": null,
        "latitude": -23.834499518193947,
        "longitude": -45.37406370734008
      }
    }
  ]
}
{
  "event_type": "DELIVERY_REQUEST",
  "seller": {
    "seller_name": "Go Go Fruits",
    "seller_id": "eb064ede-08f3-470e-a37c-5b796a17cca8",
    "seller_document_number": "12345678000190",
    "seller_group_id": "b7d56bca-606e-405e-bf4d-9b0a3291b61d",
    "seller_contacts": [
      {
        "name": "Eduardo Silveira",
        "phone": "21999999999",
        "phone_country_code": "55",
        "email": "contato@exemplo.com.br"
      }
    ],
  },
  "carrier": {
    "name": "CARRIER_BRAND_NAME",
    "max_dispatched_time": "14:00:00-03",
    "expected_delivery_date": "2022-12-22T23:59:00.000-03:00",
    "total_expected_delivery_price": 1200,
    "method": {
      "id": "e84b2788-5b78-40dd-95cf-75807f70aaaa",
      "name": "CARRIER_BRAND_NAME_D0",
      "type": "D0"
    }
  },
  "logistic_data": {
    "headers": {
      "Authorization": "Bearer xxx"
    },
    "pickup_verification": { // optional · see callout above
      "pincode": true,
      "pincode_owner": "abbiamo", // "carrier" | "abbiamo"
      "pincode_value": "8745" // present only when pincode_owner = "abbiamo"
    }
  },
  "source_address": {
    "zip_code": "04029904",
    "country": "BRA",
    "state": "SP",
    "city": "São Paulo",
    "neighborhood": "Indianópolis",
    "street": "Avenida Ibirapuera",
    "street_number": "3407",
    "complement": null,
    "reference": null,
    "latitude": -23.52045997445427,
    "longitude": -46.438805678513575
  },
  "make_route": true,
  "courier_must_return": false,
  "route_id": "7ed34417-b51f-4d98-bec8-3ccb41290575", // exists when make_route is true
  "route_name": "GPT-2LkRo", // exists when make_route is true
  "deliveries": [
    {
      "invoice_number": "example_invoice_number_1",
      "invoice_access_key": "35200000000000000000000000000000000000000000",
      "invoice_created_at": "2023-06-22T18:59:37.024Z",
      "delivery_id": "851dc274-e090-4881-8f3c-5b660cecf059",
      "order_number": "example_carrier_payload_1",
      "tracking": "a-vBGOS",
      "amount": 6909,
      "expected_delivery_price": 1000,
      "carrier_additional_information": {
        "keep_prescription": true,
        "thermolabile": true,
        "pos_terminal_required": true,
        "return_to_origin": true,
        "observation": "pegar maquina com Walmir no caixa"
      },
      "volumes": [
        {
          "id": "4754cd99-3378-4e6c-bdaf-53db23ac5a4f",
          "weight": 0,
          "height": null,
          "width": null,
          "length": null,
          "cubic_volume": 0
        }
      ],
      "customer": {
        "name": "Machado de Assis",
        "phone": "911111111",
        "phone_country_code": "55",
        "document_number": "12345678909"
      },
      "destination_address": {
        "zip_code": "08050360",
        "country": "BRA",
        "state": "SP",
        "city": "São Paulo",
        "neighborhood": "Jardim das Camélias",
        "street": "Rua Doutor Alfredo Sales",
        "street_number": "931",
        "complement": "sala 2",
        "reference": null,
        "latitude": -23.834499518193947,
        "longitude": -45.37406370734008
      }
    }
  ]
}