VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Expedição de pedidos

Criar expedição

Registra quem despacha um pedido, o seller ou o marketplace, e cobra a taxa do marketplace quando é ele quem envia.

Em condições normais você não precisa criar expedições: com o módulo ligado, a plataforma cria uma por seller assim que o pedido nasce. Use esta rota para pedidos anteriores ao módulo, para recriar uma expedição ou para trocar o responsável de um pedido que ainda não tem uma.

A criação é idempotente por pedido e seller: se já existe uma expedição para o par, a rota devolve a existente em vez de falhar. Com fulfilled_by: "marketplace", a taxa do seller é calculada e registrada; se o seller não tem taxa configurada, ou o cálculo falha, a expedição é criada mesmo assim, sem taxa.

Criar

POST/api/v1/admin/fulfillmentsAdmin

Cria uma expedição

Exige o privilégio manage_orders e o módulo fulfillment ligado.

Corpo da requisição

order_iduuidobrigatório
Pedido (ou sub-pedido) a expedir.
fulfilled_bystringobrigatório
vendormarketplace
Quem despacha.
vendor_iduuid
Seller dono dos itens. Omita em pedido da própria loja.

Exemplo de requisição

Resposta

201Expedição criada

Os campos são os de Consultar expedições. Na resposta de uma criação nova, fees ainda vem []: a taxa é gravada logo em seguida e aparece ao reler a expedição.

Erros

StatusQuandoCorpo
401Sem token, token inválido ou expirado{"error":"invalid or expired token"}
403Sem o privilégio exigido{"error":"insufficient privileges","privilege_required_any":["manage_orders"]}
403Módulo fulfillment desligado{"error":"module_disabled","module":"fulfillment"}
400Corpo que não é JSON; order_id ou fulfilled_by vazio; fulfilled_by que não é vendor nem marketplace; pedido ou seller inexistente{"error":"order_id and fulfilled_by are required"} / {"error":"failed to create fulfillment","detail":"..."}
`items` e `notes` são ignorados

O formato interno de uma expedição aceita items (expedição parcial) e notes, mas esta rota só lê order_id, vendor_id e fulfilled_by. A expedição criada por aqui sempre cobre o pedido todo; use Alterar para gravar notas.

Repetir é seguro

Por ser idempotente, você pode reenviar a mesma criação depois de um erro de rede sem medo de duplicar. Confira o id devolvido.

Veja também

  • Consultar expedições
  • Enviar e entregar
Anterior
Consultar expedições
Próxima
Alterar expedição
Nesta página
  • Criar
  • Exemplo de requisição
  • Resposta
  • Erros
  • Veja também
bash
curl -X POST "$BASE_URL/api/v1/admin/fulfillments" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "order_id": "6af86ed3-d949-474d-8e04-513c6e83bfe4",
    "vendor_id": "9d9d9d56-eb43-4719-889d-055632f7c7da",
    "fulfilled_by": "marketplace"
  }'
json
{
  "id": "42f4e4b1-5d78-4ce5-bf0e-355f927168ef",
  "order_id": "6af86ed3-d949-474d-8e04-513c6e83bfe4",
  "vendor_id": "9d9d9d56-eb43-4719-889d-055632f7c7da",
  "fulfilled_by": "marketplace",
  "status": "pending",
  "created_at": "2026-10-11T20:55:25.63652Z",
  "updated_at": "2026-10-11T20:55:25.63652Z",
  "vendor_name": "Loja Otávio",
  "order_number": "PILOT-20261011-0009",
  "is_partial": false,
  "fees": [],
  "fee_total": 0,
  "fee_count": 0
}