A forma recomendada de promover uma alteração de status de transações ou entrega (fulfillment) é inserindo registros com (pelo menos) o status atual e data/hora da última atualização.
Basta inserir uma entrada via POST no subresource payments_history:
POST /orders/:_id/payments_history.json
{
"date_time": "2020-05-07T20:12:47.924Z",
"status": "paid"
}No exemplo acima o status financeiro do pedido
:_idserá alterado para pago.
Exemplo com informações adicionais no corpo do POST:
{
"transaction_id": "fe1230000000000000000005",
"date_time": "2020-05-07T20:12:47.924Z",
"status": "paid",
"notification_code": "WH1234567",
"flags": [
"pdv-1"
]
}pendingunder_analysisauthorizedunauthorizedpaidin_disputerefundedvoidedunknown
Basta inserir uma entrada via POST no subresource fulfillments:
POST /orders/:_id/fulfillments.json
{
"date_time": "2020-05-07T20:12:47.924Z",
"status": "shipped"
}No exemplo acima o status de entrega do pedido
:_idserá alterado para enviado.
Exemplo com informações adicionais no corpo do POST:
{
"shipping_line_id": "af1230000000000000000005",
"date_time": "2020-05-07T20:12:47.924Z",
"status": "delivered",
"notification_code": "TN1234567",
"flags": [
"azul-cargo"
]
}invoice_issuedin_productionin_separationready_for_shippingshippeddeliveredreturned_for_exchangereceived_for_exchangereturned