Pedidos do seller
Como o seller (lojista) consulta e atende os pedidos dele: status, remessas, rastreio, cancelamentos, devoluções, fatura e oferta pós-compra.
Quando um cliente compra, o pedido fica com a loja e, se a compra tem produtos de mais de um seller (lojista), a plataforma cria um pedido pai (o que o cliente vê) e um sub-pedido por seller. Para o seller, "pedido" é sempre o sub-pedido dele: ele consulta, move de status, despacha e cancela só o que é dele. Estas rotas, sob /api/v1/vendor, são a operação diária de atendimento: ver o que chegou, despachar com rastreio, decidir cancelamentos e devoluções, mandar a fatura e configurar a oferta de pós-compra.
Como funciona
O pedido do seller, do início ao fim
O caminho mais comum. Os desvios são Cancelado, Em espera, Falho e Reembolsado. A tabela mostra os status da instalação padrão (cada loja pode renomear, esconder e criar os seus):
code | Letra | Quando acontece | O seller pode definir? |
|---|---|---|---|
pending | O | Recebido, aguardando pagamento ou confirmação. | Só reabrindo um cancelado |
processing | P | Pagamento aprovado ou em preparação. | Só reabrindo um cancelado |
paid | A | Pagamento confirmado (opcional). | Não |
on_hold | H | Parado, à espera de algo. | Só reabrindo um cancelado |
failed | F | Pagamento recusado. | Não |
shipped | S | O pacote saiu. | Sim |
delivered | C | O cliente recebeu. | Sim |
completed | K | Concluído. | Não |
cancelled | I | Cancelado (o estoque volta). | Sim, se ainda não enviado |
refunded | R | Dinheiro devolvido. | Não |
chargeback | Z | O cliente contestou no cartão. | Não |
Fluxo típico de atendimento
- Ver o que chegouListar pedidos com
status=processing(pedidos pagos) e abrir cada um para ler itens e endereço. - DespacharCriar a remessa com transportadora, código de rastreio e itens. O cliente recebe o e-mail de envio.
- Marcar como enviado
- Tratar exceçõesDecidir cancelamentos pedidos pelo cliente e devoluções.
Conceitos importantes
Recursos opcionais da loja
O acompanhamento depende de um módulo que a loja precisa ter ligado. Desligado, a rota responde 403 com {"error":"module_disabled","module":"..."} ou 404:
| Módulo | Rotas |
|---|---|
order-status-flow (fluxo de status e acompanhamento) | order-tracking, order-tracking/{id}, e PUT .../shipments/{shipmentId}/tracking |
Quem pode o quê dentro do seller
Um usuário de equipe do seller pode ter só leitura de pedidos ou também escrita. As rotas de escrita sensíveis (decidir cancelamento, enviar fatura) pedem o privilégio de gerenciar pedidos; as demais aceitam também o de ver pedidos. As rotas de devolução e de oferta pós-compra não conferem privilégio fino: qualquer usuário do seller as acessa.
Escopo de representante
Quando o usuário de equipe é um representante comercial ativo e não é o dono da loja, listas e detalhes mostram apenas os pedidos atribuídos a ele ou de clientes da carteira dele. Fora disso, 403 you do not have access to this order.
Datas
RFC 3339 em UTC. A exportação escreve a data no horário de Brasília.
Endpoints
| Método | Caminho | Para que serve | Autenticação |
|---|---|---|---|
| GET | /api/v1/vendor/orders | Lista os pedidos do seller. | seller |
| GET | /api/v1/vendor/orders/{id} | Detalha um pedido. | seller |
| GET | /api/v1/vendor/orders/export | Exporta pedidos em CSV ou planilha. | seller |
| PUT | /api/v1/vendor/orders/{id}/status | Muda o status do pedido. | seller |
| GET | /api/v1/vendor/orders/{id}/allowed-transitions | Próximos status possíveis. | seller |
| GET | /api/v1/vendor/orders/{id}/shipments | Lista as remessas do pedido. | seller |
| POST | /api/v1/vendor/orders/{id}/shipments | Cria uma remessa. | seller |
| PUT | /api/v1/vendor/orders/{id}/shipments/{shipmentId}/tracking | Atualiza o rastreio de uma remessa. | seller |
| GET | /api/v1/vendor/order-tracking | Acompanhamento dos pedidos do seller. | seller |
| GET | /api/v1/vendor/order-tracking/{id} | Acompanhamento de um pedido. | seller |
| GET | /api/v1/vendor/order-cancellations | Fila de pedidos de cancelamento. | seller |
| POST | /api/v1/vendor/order-cancellations/{id}/approve | Aprova um cancelamento. | seller |
| POST | /api/v1/vendor/order-cancellations/{id}/reject | Recusa um cancelamento. | seller |
| GET | /api/v1/vendor/returns | Lista as devoluções do seller. | seller |
| GET | /api/v1/vendor/returns/{id} | Detalha uma devolução. | seller |
| PUT | /api/v1/vendor/returns/{id}/status | Aprova, recebe ou recusa uma devolução. | seller |
| POST | /api/v1/vendor/orders/{id}/invoice/send | Envia a fatura em PDF por e-mail. | seller |
| GET | /api/v1/vendor/post-purchase-rules | Lista as regras de oferta pós-compra. | seller |
| POST | /api/v1/vendor/post-purchase-rules | Cria uma regra. | seller |
| PUT | /api/v1/vendor/post-purchase-rules/{id} | Altera uma regra. | seller |
| DELETE | /api/v1/vendor/post-purchase-rules/{id} | Exclui uma regra. | seller |
Erros comuns
- Mandar a letra do status (
S) em vez do nome (shipped). Na mudança de status do seller, a letra é recusada com403 vendor_status_not_allowedquando a loja não usa fluxo de status próprio. - Achar que criar a remessa envia o pedido. A remessa só avisa o cliente; o status continua
processingaté você mudá-lo. - Usar o id do pedido pai. O seller só opera o sub-pedido dele; o pai responde
403. - Decidir cancelamento pelo id do pedido.
approveerejectrecebem o id da solicitação (campoidda fila), não oorder_id. - Pedir a lista de cancelamentos sem
statusesperando todas. Semstatusvalepending. - Passar
date_to=2026-10-11na exportação esperando o dia inteiro. Na exportação a data final é o instante00:00daquele dia; use2026-10-12ou um horário. - Esquecer o módulo. O acompanhamento responde
403 module_disabledquando a loja não os ligou.