Listas de separação
Lista, consulta e cria as listas de separação dos pedidos do seller.
Listar listas de separação
Uma lista de separação (picking list) é a tarefa de ir ao estoque buscar os itens de um pedido. Quando um pedido do seller é criado e o seller já tem ao menos um depósito, a plataforma cria a lista sozinha. A listagem devolve só o cabeçalho (items vazio).
/api/v1/vendor/erp/pickingSellerLista as listas de separação
Parâmetros de consulta
statusstringopenpickingpackedcancelledpageintegerpadrão: 1per_pageintegerpadrão: 20Exemplo de requisição: Listar listas de separação
curl "$BASE_URL/api/v1/vendor/erp/picking?status=open" \
-H "Authorization: Bearer $TOKEN"Resposta: Listar listas de separação
{
"lists": [
{
"id": "10426b19-4e8e-48b1-98a5-dae83ff3ab29",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"order_id": "87fdfd05-07bf-4031-a468-219fc35e4e39",
"order_number": "PEDIDO-20261011-0004",
"status": "open",
"assigned_to": null,
"notes": "",
"created_at": "2026-10-11T14:30:00Z",
"updated_at": "2026-10-11T14:30:00Z",
"item_count": 1,
"items": []
}
],
"total": 1
}Campos da resposta
listsarrayListas da página, mais novas primeiro.
iduuidvendor_iduuidorder_iduuidorder_numberstringstatusstringopenpickingpackedcancelledassigned_touuidnull enquanto open.notesstringcreated_atdatetimeupdated_atdatetimeitem_countintegeritems.itemsarrayItens da lista. Vazio na listagem; preenchido no detalhe e nas ações.
iduuidpicking_list_iduuidproduct_iduuidproduct_namestringrequested_qtyintegerpicked_qtyintegershortage_reasonstringpicked_qty < requested_qty.updated_atdatetimetotalintegerErros: Listar listas de separação
| Status | Quando | Corpo |
|---|---|---|
| 401 | Cabeçalho Authorization ausente, token inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador). | {"error":"insufficient permissions"} |
| 403 | O usuário não está vinculado a um seller, ou o cadastro do seller ainda está em análise (vendor_pending_review). | {"error":"no vendor account associated with this user"} |
Consultar lista
/api/v1/vendor/erp/picking/{id}SellerConsulta uma lista de separação
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição: Consultar lista
curl "$BASE_URL/api/v1/vendor/erp/picking/3f6c1c1e-8d0b-4a55-9a52-1d6f6a4a7b10" \
-H "Authorization: Bearer $TOKEN"Resposta: Consultar lista
{
"id": "10426b19-4e8e-48b1-98a5-dae83ff3ab29",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"order_id": "87fdfd05-07bf-4031-a468-219fc35e4e39",
"order_number": "PEDIDO-20261011-0004",
"status": "open",
"assigned_to": null,
"notes": "",
"created_at": "2026-10-11T14:30:00Z",
"updated_at": "2026-10-11T14:30:00Z",
"item_count": 0,
"items": [
{
"id": "d70ce8fe-594a-411f-ba3b-7ef97fbc1ce2",
"picking_list_id": "10426b19-4e8e-48b1-98a5-dae83ff3ab29",
"product_id": "c3f92551-9dda-4fc7-b518-353d1c4e4035",
"product_name": "Notebook Slim Rosa",
"requested_qty": 2,
"picked_qty": 0,
"shortage_reason": "",
"updated_at": "2026-10-11T14:30:00Z"
}
]
}Campos da resposta
iduuidvendor_iduuidorder_iduuidorder_numberstringstatusstringopenpickingpackedcancelledassigned_touuidnull enquanto open.notesstringcreated_atdatetimeupdated_atdatetimeitem_countintegeritems.itemsarrayItens da lista. Vazio na listagem; preenchido no detalhe e nas ações.
iduuidpicking_list_iduuidproduct_iduuidproduct_namestringrequested_qtyintegerpicked_qtyintegershortage_reasonstringpicked_qty < requested_qty.updated_atdatetimeErros: Consultar lista
| Status | Quando | Corpo |
|---|---|---|
| 404 | A lista não existe ou é de outro seller. | {"error":"picking list not found"} |
| 401 | Cabeçalho Authorization ausente, token inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador). | {"error":"insufficient permissions"} |
| 403 | O usuário não está vinculado a um seller, ou o cadastro do seller ainda está em análise (vendor_pending_review). | {"error":"no vendor account associated with this user"} |
Criar lista a partir de um pedido
Gera a lista de separação de um pedido do seller, com um item por linha do pedido. É idempotente: se o pedido já tem lista, devolve a existente (também com 201). Use quando a criação automática não aconteceu, por exemplo para pedidos antigos.
/api/v1/vendor/erp/picking/from-orderSellerCria a lista de separação de um pedido
Corpo da requisição
order_iduuidobrigatórioExemplo de requisição: Criar lista a partir de um pedido
curl -X POST "$BASE_URL/api/v1/vendor/erp/picking/from-order" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"order_id": "87fdfd05-07bf-4031-a468-219fc35e4e39"
}'Resposta: Criar lista a partir de um pedido
{
"id": "10426b19-4e8e-48b1-98a5-dae83ff3ab29",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"order_id": "87fdfd05-07bf-4031-a468-219fc35e4e39",
"order_number": "PEDIDO-20261011-0004",
"status": "open",
"assigned_to": null,
"notes": "",
"created_at": "2026-10-11T14:30:00Z",
"updated_at": "2026-10-11T14:30:00Z",
"item_count": 1,
"items": [
{
"id": "d70ce8fe-594a-411f-ba3b-7ef97fbc1ce2",
"picking_list_id": "10426b19-4e8e-48b1-98a5-dae83ff3ab29",
"product_id": "c3f92551-9dda-4fc7-b518-353d1c4e4035",
"product_name": "Notebook Slim Rosa",
"requested_qty": 2,
"picked_qty": 0,
"shortage_reason": "",
"updated_at": "2026-10-11T14:30:00Z"
}
]
}Campos da resposta
iduuidvendor_iduuidorder_iduuidorder_numberstringstatusstringopenpickingpackedcancelledassigned_touuidnull enquanto open.notesstringcreated_atdatetimeupdated_atdatetimeitem_countintegeritems.itemsarrayItens da lista. Vazio na listagem; preenchido no detalhe e nas ações.
iduuidpicking_list_iduuidproduct_iduuidproduct_namestringrequested_qtyintegerpicked_qtyintegershortage_reasonstringpicked_qty < requested_qty.updated_atdatetimeErros: Criar lista a partir de um pedido
| Status | Quando | Corpo |
|---|---|---|
| 400 | Corpo não é um JSON válido. | {"error":"invalid request body","detail":"invalid character 'b' looking for beginning of object key string"} |
| 400 | order_id em branco. | {"error":"vendorerp: order_id required"} |
| 404 | O pedido não existe ou é de outro seller. | {"error":"order not found"} |
| 400 | O pedido é um pedido pai, sem seller. | {"error":"vendorerp: order has no vendor (parent order)"} |
| 401 | Cabeçalho Authorization ausente, token inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador). | {"error":"insufficient permissions"} |
| 403 | O usuário não está vinculado a um seller, ou o cadastro do seller ainda está em análise (vendor_pending_review). | {"error":"no vendor account associated with this user"} |