Cancelar pedido
Cancela um pedido: o registro continua existindo com o status cancelado e o estoque volta.
Pedido é um registro fiscal e financeiro. Por isso, nesta API o DELETE /orders/{id} não apaga o registro (diferente do que a Venddor 1.0 fazia): ele cancela o pedido, que continua existindo com o status cancelado, e o estoque dos itens volta. É o que você quer em quase todos os casos: o cliente desistiu, o pagamento não saiu, o ERP recusou.
/api/v1.0/orders/{id}AdminCancelar um pedido
Move o pedido para o status cancelado (I) e devolve 204 sem corpo. O cancelamento segue as transições normais da plataforma: pedido pendente, em processamento, pago, em espera ou falho pode ser cancelado; pedido já enviado, entregue, concluído, cancelado ou reembolsado responde 400. Não estorna o pagamento no gateway: se o pedido estava pago, devolva o dinheiro à parte (veja Reembolsos).
Chave de API que pertence a um seller (não a um administrador da loja) recebe sempre 404, porque o seller não pode apagar pedidos nesta API.
Parâmetros de caminho
idstringobrigatório/api/orders/{id}).Exemplo de requisição
# Cancelar o pedido (resposta 204, sem corpo)
curl -X DELETE "$BASE_URL/api/v1.0/orders/$ORDER_ID" -u "$EMAIL:$API_KEY"Resposta
HTTP/1.1 204 No ContentErros
| Status | Quando | Corpo |
|---|---|---|
| 400 | O pedido já está cancelado ou está num status que não pode ser cancelado | {"message":"invalid_transition: from cancelled to cancelled","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 | O pedido não existe, ou a chave de API é de seller | {"message":"Order not found","status":404} |
| 500 | Falha interna | {"error":"failed to cancel order","detail":"..."} |