Referência da API · Pedidos · Gestão Marketplace
Atualizar Status do Pedido - Marketplace
- Método
- PUT
- Rota
-
/partnerOrders/store/:id - URL base
https://ws.autorei.net- Parâmetros de rota
:id- Token
- Exige token Bearer
Abre esta requisição na documentação pública da API, a fonte oficial da referência.
Correção sobre a coleção · 06/10/2026
orderReasonCanceled é obrigatório quando o status de destino é CANCELED. A coleção pública ainda mostra o campo como opcional.
Confirmado pelo time de tecnologia da CWS Platform. Esta página já mostra o contrato corrigido; a coleção pública ainda não.
Descrição
Permite que a loja de origem mova para o próximo status um pedido que nasceu nela, gravando junto os dados que aquele status exige.
O corpo, as transições e a resposta são idênticos aos da rota da loja. A diferença é o escopo e um pré-requisito de configuração, veja A loja precisa estar habilitada.
Parâmetros de Rota
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id |
integer | Sim | Id do pedido do parceiro (partnerOrderId), o campo id da listagem. |
Corpo da Requisição (JSON)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
status |
string | Sim | Status de destino. Veja Para onde o pedido pode ir. |
supplierOrderId |
string | Condicional | Número do pedido no seu sistema. Obrigatório quando status é READY. |
supplierInvoiceNumber |
string | Não | Número da nota fiscal. Aceito em READY e SHIPPED. |
supplierInvoiceSerie |
string | Não | Série da nota fiscal. Aceito em READY e SHIPPED. |
supplierInvoiceKey |
string | Não | Chave de acesso da nota fiscal. Aceito em READY e SHIPPED. |
supplierInvoiceDate |
string | Não | Data de emissão da nota, em AAAA-MM-DD ou AAAAMMDD. Outro formato recusa a requisição com 422. |
trackingCode |
string | Condicional | Código de rastreio. Obrigatório em SHIPPED, salvo com transportadora própria. |
urlTrackingCode |
string | Não | URL de rastreio da transportadora. Aceito em SHIPPED. |
ownCarrier |
string | Não | Indica entrega por transportadora própria. Aceito em SHIPPED. |
orderObservation |
string | Não | Observação livre gravada no pedido. Aceita em READY, SHIPPED e DELIVERED. |
orderReasonCanceled |
integer | Condicional | Id do motivo do cancelamento. Obrigatório em CANCELED, veja Motivos de cancelamento. |
Os campos de nota fiscal só são gravados quando o pedido ainda não tem nota: reenviá-los num pedido que já foi marcado com nota não sobrescreve os valores.
Regras de negócio
Para onde o pedido pode ir
O status de destino é aceito a partir de um status atual específico. Fora dessa combinação, a resposta é 422.
status enviado |
Status atual exigido | Campos próprios |
|---|---|---|
APPROVED |
pedido aguardando pagamento, sem crédito ou com pagamento na loja | - |
READY |
PAYMENT_APPROVED |
supplierOrderId obrigatório |
SHIPPED |
READY |
trackingCode obrigatório, salvo com ownCarrier |
DELIVERED |
SHIPPED |
- |
STRAYED |
SHIPPED |
- |
RETURNED |
DELIVERED |
- |
AWAITING_PAYMENT |
AWAITING_PAYMENT |
- |
CANCELED |
qualquer | orderReasonCanceled obrigatório |
A aprovação de pagamento se envia como APPROVED, não como PAYMENT_APPROVED, o pedido é que passa a ficar em PAYMENT_APPROVED. Os demais valores do enum de status (PRE_ORDER, PAYMENT_APPROVED, COMPLETED, WITHOUT_CREDIT_LIMIT, STORE_PAYMENT) servem para filtrar a listagem, mas não são aceitos aqui: a requisição responde 422.
Pedido em alçada de aprovação
Num pedido com alçada (approvalWorkflow: true) ainda não aprovado, o único status aceito é CANCELED. Qualquer outro responde 422.
Motivos de cancelamento
orderReasonCanceled recebe o id do motivo:
| Id | Motivo | Id | Motivo |
|---|---|---|---|
| 2 | Arrependimento 7 dias | 20 | Pagamento recusado |
| 3 | Problema Logístico | 21 | Falta de posição do cliente |
| 4 | Erro de descrição | 22 | Sem Credito |
| 5 | Extraviado | 23 | Expirado |
| 6 | Falta de Pagamento | 24 | Cliente incorreto |
| 7 | Falta de posição da loja | 26 | Pedido errado |
| 8 | Furo de estoque | 27 | Falha na integração |
| 9 | Marca diferente | 28 | Vendedor incorreto |
| 10 | Produto Avariado | 29 | Chargeback |
| 11 | Produto incorreto | 30 | Fraude – Produto recuperado |
| 12 | Peça Falsificada | 31 | Suspeita de Fraude |
| 13 | Preço errado loja | 32 | Recompra Assistida |
| 14 | Pré Encomenda | 33 | Aprovação Comercial Negada |
| 15 | Preço Incorreto | 34 | Pedido cancelado pelo vendedor |
| 16 | Composição errada | 35 | Cotação editada |
| 17 | Atraso no envio | ||
| 18 | Pedido duplicado | ||
| 19 | Compra teste |
Quem pode cancelar
Quando o pedido nasceu em outra loja, você é o fornecedor, não a origem, o cancelamento depende de a loja de origem ter habilitado o cancelamento pelo vendedor. É uma configuração dela, não sua: enquanto ela não liberar, o seu CANCELED responde 422, e quem cancela é a própria loja de origem. Com a permissão ligada, o cancelamento passa a valer normalmente. Pedido originado na sua própria loja não passa por essa checagem.
Resposta · 200
O pedido inteiro, no mesmo formato de Buscar Detalhes do Pedido, já com o status novo e o registro correspondente em orderStatusLogs.
A loja precisa estar habilitada
A atualização de pedidos pela loja de origem depende de uma configuração da própria loja. Sem ela, a requisição responde 422 sem tocar no pedido. A liberação é feita pela CWS.
Erros
| Código | Quando |
|---|---|
| 400 | O corpo não é um JSON válido. O detalhe vem em error. |
| 422 | Transição não permitida a partir do status atual, campo obrigatório do status ausente, status fora dos valores aceitos, supplierInvoiceDate em formato inválido, pedido em alçada pendente ou cancelamento não permitido. O motivo vem em message. |
| 422 | A loja não está habilitada a atualizar pedidos do marketplace, veja A loja precisa estar habilitada. |
| 400 | Falha de validação do pedido. O motivo vem em message. |
| 404 | O pedido não existe ou não está no seu escopo. |
| 401 | Token ausente, malformado ou expirado. |
Exemplo de requisição
curl --request PUT 'https://ws.autorei.net/partnerOrders/store/:id' \
--header 'Authorization: Bearer {{access_token}}' \
--header 'Content-Type: application/json' \
--data '{
"status": "READY",
"supplierOrderId": "PED-ERP-77120",
"supplierInvoiceNumber": "1234",
"supplierInvoiceSerie": "1",
"supplierInvoiceDate": "2026-09-02"
}' Respostas de exemplo
200Sucesso: separado para envio
{
"attendant": null,
"orderId": 900100,
"id": 900201,
"status": "READY",
"approvalWorkflow": false,
"workflowIsApproved": false,
"approvalCredit": null,
"subTotal": 35.91,
"subTotalFormats": {
"value": "35,91",
"mask": "R$ 35,91"
},
"taxes": {
"taxPurpose": null,
"taxPurposeId": null,
"st": 0,
"ipi": 0,
"icms": 0,
"pis": 0,
"cofins": 0,
"totalTax": 0
},
"freightTotal": 45.73,
"freightTotalFormats": {
"value": "45,73",
"mask": "R$ 45,73"
},
"total": 81.64,
"totalFormats": {
"value": "81,64",
"mask": "R$ 81,64"
},
"dateCreated": "2026-09-01T13:26:05Z",
"lastUpdated": "2026-09-01T13:27:26Z",
"invoiceNote": null,
"leadTimeByRequestDone": true,
"order": {
"origin": "SHOP",
"originStoreName": "Loja Exemplo",
"originStoreId": 4210,
"originStoreSubdomain": "lojaexemplo",
"originStorePartnerId": 5050,
"drivenPrice": false,
"manualPrice": false
},
"seller": {
"id": 5050,
"name": "Loja Exemplo",
"document": "30.424.972/0001-74"
},
"customer": {
"id": 700101,
"name": "Ana Paula Ribeiro",
"contactName": "Ana Paula Ribeiro",
"email": "ana.ribeiro@exemplo.com.br",
"phone": "(11) 98765-4321",
"type": "pf",
"document": "700.413.648-56",
"stateRegistration": null,
"optinTracking": null,
"trackingPhone": null,
"dateCreated": "2026-08-20T09:15:00Z",
"registrationAddress": {
"street": "Avenida Paulista",
"number": "1578",
"quarter": "Bela Vista",
"city": "São Paulo",
"state": "SP",
"zipcode": "01310-100",
"farmerStateRegistration": null
},
"customerAttributes": [
{
"name": "OPTIN_NEWSLETTER",
"value": "true"
}
]
},
"payments": [
{
"id": 4490201,
"paymentType": "BANK_SLIP",
"gateway": "GATEWAY_DE_PAGAMENTO",
"paymentInstallmentsValue": 81.64,
"paymentInstallments": 1
}
],
"deliveries": [
{
"address": {
"id": 4470701,
"name": "Endereço de entrega",
"street": "Avenida Paulista",
"number": "1578",
"quarter": "Bela Vista",
"city": "São Paulo",
"state": "SP",
"zipcode": "01310-100",
"deliveryAddressCode": null,
"addressType": "RESIDENTIAL"
},
"freight": {
"value": 45.73,
"valueFormats": {
"value": "45,73",
"mask": "R$ 45,73"
},
"name": "CORREIO - SEDEX",
"type": "INTELIPOST",
"freightTime": 4,
"packingTime": 0,
"realValue": 45.73,
"realValueFormats": {
"value": "45,73",
"mask": "R$ 45,73"
},
"realName": "CORREIO - SEDEX",
"realType": "INTELIPOST",
"intelipostQuoteId": "202956238407743",
"intelipostDeliveryMethodId": "2",
"intelipostDeliveryMethodExternalId": "94"
},
"products": [
{
"id": 500101,
"name": "Produto Exemplo A",
"mfrPartCode": "FE-500101",
"composition": "UNITARY",
"virtualQuantity": 0,
"realQuantity": 1,
"quantity": 1,
"price": 35.91,
"priceFormats": {
"value": "35,91",
"mask": "R$ 35,91"
},
"leadTime": 0,
"partnerOrderLineId": 4490101,
"isLeadTimeByRequest": false,
"stockPrice": 39.9,
"stockPriceFormats": {
"value": "39,90",
"mask": "R$ 39,90"
},
"totalCost": 52.15,
"totalCostFormats": {
"value": "52,15",
"mask": "R$ 52,15"
},
"netCost": 52.15,
"netCostFormats": {
"value": "52,15",
"mask": "R$ 52,15"
},
"marginAfterDiscountPercentage": null,
"interestRate": null,
"anticipationRate": null,
"realSalePrice": 35.91,
"realSalePriceFormats": {
"value": "35,91",
"mask": "R$ 35,91"
},
"drivenPrice": false,
"partnerPartCode": "SKU-A-001",
"partnerInternalPartCode": null,
"warehouse": {
"id": 1001,
"name": "Depósito Central",
"zipcode": "01310-100"
},
"brand": {
"id": 4460101,
"name": "Fabricante Exemplo"
},
"specialRules": {},
"needsAgronomicRecipe": "false",
"salesUnitOfMeasurement": null,
"salePriceByUnitOfMeasurement": null,
"unitaryQuantityInSalesUnitOfMeasurement": null,
"totalQuantityInSalesUnitOfMeasurement": null,
"whoAddedItemToCart": "client",
"customKey": null,
"categoryId": 31519,
"categoryName": "Categoria Exemplo"
}
]
}
],
"paymentPartnerReceiver": [
{
"participant": "marketplace",
"name": "Loja Exemplo",
"typeReceiver": "PRIMARY",
"paymentFees": "true",
"splitedBy": "TOTAL",
"splitedPercentage": 100,
"splitedValue": "81,64",
"value": "81,64"
}
],
"orderStatusLogs": [
{
"status": "READY",
"date": "2026-09-02T11:12:40Z"
}
],
"totalMarginAfterDiscountPercentage": null,
"markup": null,
"whoCreatedPreOrder": "client",
"whoSelectedPayment": "client",
"commissionAssignedAttendantId": null,
"commissionAssignedAttendantCode": null,
"commissionAssignedAttendantDoc": null,
"approvalLevels": [],
"customCartId": null,
"cartTypeName": null,
"cartTypeExternalId": null,
"supplierOrderId": "PED-ERP-77120",
"supplierInvoiceNumber": "1234",
"supplierInvoiceSerie": "1",
"supplierInvoiceDate": "2026-09-02T00:00:00Z"
} 200Sucesso: enviado
{
"attendant": null,
"orderId": 900100,
"id": 900201,
"status": "SHIPPED",
"approvalWorkflow": false,
"workflowIsApproved": false,
"approvalCredit": null,
"subTotal": 35.91,
"subTotalFormats": {
"value": "35,91",
"mask": "R$ 35,91"
},
"taxes": {
"taxPurpose": null,
"taxPurposeId": null,
"st": 0,
"ipi": 0,
"icms": 0,
"pis": 0,
"cofins": 0,
"totalTax": 0
},
"freightTotal": 45.73,
"freightTotalFormats": {
"value": "45,73",
"mask": "R$ 45,73"
},
"total": 81.64,
"totalFormats": {
"value": "81,64",
"mask": "R$ 81,64"
},
"dateCreated": "2026-09-01T13:26:05Z",
"lastUpdated": "2026-09-01T13:27:26Z",
"invoiceNote": null,
"leadTimeByRequestDone": true,
"order": {
"origin": "SHOP",
"originStoreName": "Loja Exemplo",
"originStoreId": 4210,
"originStoreSubdomain": "lojaexemplo",
"originStorePartnerId": 5050,
"drivenPrice": false,
"manualPrice": false
},
"seller": {
"id": 5050,
"name": "Loja Exemplo",
"document": "30.424.972/0001-74"
},
"customer": {
"id": 700101,
"name": "Ana Paula Ribeiro",
"contactName": "Ana Paula Ribeiro",
"email": "ana.ribeiro@exemplo.com.br",
"phone": "(11) 98765-4321",
"type": "pf",
"document": "700.413.648-56",
"stateRegistration": null,
"optinTracking": null,
"trackingPhone": null,
"dateCreated": "2026-08-20T09:15:00Z",
"registrationAddress": {
"street": "Avenida Paulista",
"number": "1578",
"quarter": "Bela Vista",
"city": "São Paulo",
"state": "SP",
"zipcode": "01310-100",
"farmerStateRegistration": null
},
"customerAttributes": [
{
"name": "OPTIN_NEWSLETTER",
"value": "true"
}
]
},
"payments": [
{
"id": 4490201,
"paymentType": "BANK_SLIP",
"gateway": "GATEWAY_DE_PAGAMENTO",
"paymentInstallmentsValue": 81.64,
"paymentInstallments": 1
}
],
"deliveries": [
{
"address": {
"id": 4470701,
"name": "Endereço de entrega",
"street": "Avenida Paulista",
"number": "1578",
"quarter": "Bela Vista",
"city": "São Paulo",
"state": "SP",
"zipcode": "01310-100",
"deliveryAddressCode": null,
"addressType": "RESIDENTIAL"
},
"freight": {
"value": 45.73,
"valueFormats": {
"value": "45,73",
"mask": "R$ 45,73"
},
"name": "CORREIO - SEDEX",
"type": "INTELIPOST",
"freightTime": 4,
"packingTime": 0,
"realValue": 45.73,
"realValueFormats": {
"value": "45,73",
"mask": "R$ 45,73"
},
"realName": "CORREIO - SEDEX",
"realType": "INTELIPOST",
"intelipostQuoteId": "202956238407743",
"intelipostDeliveryMethodId": "2",
"intelipostDeliveryMethodExternalId": "94"
},
"products": [
{
"id": 500101,
"name": "Produto Exemplo A",
"mfrPartCode": "FE-500101",
"composition": "UNITARY",
"virtualQuantity": 0,
"realQuantity": 1,
"quantity": 1,
"price": 35.91,
"priceFormats": {
"value": "35,91",
"mask": "R$ 35,91"
},
"leadTime": 0,
"partnerOrderLineId": 4490101,
"isLeadTimeByRequest": false,
"stockPrice": 39.9,
"stockPriceFormats": {
"value": "39,90",
"mask": "R$ 39,90"
},
"totalCost": 52.15,
"totalCostFormats": {
"value": "52,15",
"mask": "R$ 52,15"
},
"netCost": 52.15,
"netCostFormats": {
"value": "52,15",
"mask": "R$ 52,15"
},
"marginAfterDiscountPercentage": null,
"interestRate": null,
"anticipationRate": null,
"realSalePrice": 35.91,
"realSalePriceFormats": {
"value": "35,91",
"mask": "R$ 35,91"
},
"drivenPrice": false,
"partnerPartCode": "SKU-A-001",
"partnerInternalPartCode": null,
"warehouse": {
"id": 1001,
"name": "Depósito Central",
"zipcode": "01310-100"
},
"brand": {
"id": 4460101,
"name": "Fabricante Exemplo"
},
"specialRules": {},
"needsAgronomicRecipe": "false",
"salesUnitOfMeasurement": null,
"salePriceByUnitOfMeasurement": null,
"unitaryQuantityInSalesUnitOfMeasurement": null,
"totalQuantityInSalesUnitOfMeasurement": null,
"whoAddedItemToCart": "client",
"customKey": null,
"categoryId": 31519,
"categoryName": "Categoria Exemplo"
}
]
}
],
"paymentPartnerReceiver": [
{
"participant": "marketplace",
"name": "Loja Exemplo",
"typeReceiver": "PRIMARY",
"paymentFees": "true",
"splitedBy": "TOTAL",
"splitedPercentage": 100,
"splitedValue": "81,64",
"value": "81,64"
}
],
"orderStatusLogs": [
{
"status": "SHIPPED",
"date": "2026-09-02T11:12:40Z"
}
],
"totalMarginAfterDiscountPercentage": null,
"markup": null,
"whoCreatedPreOrder": "client",
"whoSelectedPayment": "client",
"commissionAssignedAttendantId": null,
"commissionAssignedAttendantCode": null,
"commissionAssignedAttendantDoc": null,
"approvalLevels": [],
"customCartId": null,
"cartTypeName": null,
"cartTypeExternalId": null
} Usado em
- Casos de usoMarketplace B2B: o caminho típico pela API
Endpoints relacionados
Gerado a partir da coleção pública da API, publicada em 04/09/2026: api-docs.cws.digital.