Listar pedidos
Retorna os pedidos da loja, do mais novo para o mais antigo, com filtros e paginação.
Use esta operação para varrer os pedidos da loja: um ERP que busca os pedidos novos a cada poucos minutos, um painel de BI, ou uma tela de busca. A lista traz o resumo de cada pedido (totais, status, cliente, pagamento). Para ver itens, endereços e histórico, abra o pedido com Consultar pedido.
A lista inclui pedidos pai e sub-pedidos no mesmo vetor. Em uma compra com produtos de mais de um seller (lojista), a plataforma cria um pedido pai e um sub-pedido por seller (o pai traz is_parent_order e os filhos apontam para ele em parent_order_id). Para ignorar os sub-pedidos, descarte os itens que têm pai (parent_order_id não vazio).
/api/v1.0/ordersAdminListar pedidos
A lista é sempre ordenada da criação mais recente para a mais antiga; não há parâmetro de ordenação nesta API. Autenticação: HTTP Basic com e-mail:chave_de_api de um usuário administrador, ou Authorization: Bearer <JWT>. A rota também responde em /api/orders (sem /v1.0); nessa forma os ids saem como números decimais em string (veja a home da seção).
Parâmetros de consulta
pageintegerpadrão: 1items_per_pageintegerpadrão: 100 ou texto são ignorados e valem 10.statusstringO, P, S, C, I, R...). Nomes longos passam por uma tabela antiga e podem filtrar outro status (por exemplo shipped vira P e refunded vira D). Um valor desconhecido com mais de um caractere é cortado na primeira letra.user_idstring/api/orders, o id decimal).company_idstring/api/orders, o id decimal).order_idstringperiodstringtodaythis_weekthis_monthlast_monththis_yearlast_yeartime_fromintegerperiod.time_tointegerperiod.Exemplo de requisição
curl -u "$EMAIL:$API_KEY" \
"$BASE_URL/api/v1.0/orders?status=O&items_per_page=50&time_from=1791676800"Resposta
{
"orders": [
{
"order_id": "a8a3c7a3-5f15-45a8-a385-4f20fbf8b722",
"is_parent_order": "N",
"parent_order_id": "",
"user_id": "f12f30a9-cbec-40ba-98f1-b7fa8f2e8e10",
"company_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"total": "225.00",
"subtotal": "300.00",
"discount": "75.00",
"shipping_cost": "0.00",
"tax_subtotal": "0.00",
"payment_tax": "0.00",
"shipping_tax": "0.00",
"status": "P",
"timestamp": 1791687385,
"order_number": "PEDIDO-20261010-0004",
"email": "maria.souza@example.com",
"ip_address": "203.0.113.10",
"currency": "BRL",
"lang_code": "pt-BR",
"shipping_id": "50000000-0000-0000-0000-000000000003",
"shipping_method_name": "Frete Grátis acima de R$199",
"payment_method_name": "PIX",
"payment_method": { "payment": "pix", "payment_id": "pix" },
"notes": "",
"coupon_codes": [],
"promotion_ids": [],
"suborder_ids": []
}
],
"params": { "page": 1, "items_per_page": 10, "total_items": 2310 }
}Campos da resposta
ordersarrayproducts, shipping, user_data e payment_info (esses só vêm em Consultar pedido).orders[].order_idstring/api/v1.0; decimal em string em /api/.orders[].is_parent_orderstringYNN, mesmo para um pedido pai. Para saber se um pedido tem sub-pedidos, consulte-o individualmente.orders[].parent_order_idstringorders[].user_idstringorders[].company_idstringorders[].totalstring"225.00" = R$ 225,00).orders[].subtotalstringorders[].discountstringorders[].shipping_coststringorders[].tax_subtotalstringorders[].payment_taxstring"0.00" (campo mantido por compatibilidade).orders[].shipping_taxstring"0.00" (campo mantido por compatibilidade).orders[].statusstringorders[].timestampintegerorders[].order_numberstring-V1, -V2...orders[].emailstringorders[].ip_addressstringorders[].currencystringBRL).orders[].lang_codestringpt-BR.orders[].shipping_idstringorders[].shipping_method_namestringorders[].payment_method_namestringorders[].payment_methodobjectpayment e payment_id, ambos com o código (slug) da forma de pagamento.orders[].notesstringorders[].coupon_codesarray[] na lista; os cupons aparecem em Consultar pedido.orders[].promotion_idsarray[] na lista.orders[].suborder_idsarray[] na lista.orders[].marketplace_originstringSTS Shopee, T TikTok.orders[].marketplace_order_idstringparamsobjectpage, items_per_page e total_items (total de pedidos que atendem ao filtro, todas as páginas)./api/v1.0/users/{id}/ordersAdminPedidos de um cliente
Atalho para os pedidos de um cliente. Equivale a /api/v1.0/orders?user_id={id}, mas só aceita paginação e não filtra por status nem por data. Devolve o mesmo envelope orders + params, ordenado do mais novo para o mais antigo.
Parâmetros de caminho
idstringobrigatório/api/users/{id}/orders, o id decimal).Parâmetros de consulta
pageintegerpadrão: 1items_per_pageintegerpadrão: 10Erros
| Status | Quando | Corpo |
|---|---|---|
| 400 | (rota /api/orders) user_id ou company_id em formato de id inválido | {"message":"Invalid id","status":400} |
| 401 | Sem credenciais ou chave de API inválida | {"message":"Invalid credentials","status":401} |
| 403 | Usuário que não é administrador | {"message":"Forbidden: admin scope required","status":403} |
| 404 | (rota /api/orders) user_id, company_id ou {id} decimal que não corresponde a nenhum registro | {"message":"Not found","status":404} |