API Reference
Log In
API Reference

Criar/Editar Checkout

Endpoint responsável por criar um checkout, ou adicionar itens a um checkout existente. Também é capaz de criar pedido, ondas e armazenagens (ambas já concluídas) caso necessário.

📘

Atenção

O corpo da requisição indicado abaixo é o padrão desejado pelo Nexp. No entanto, caso necessário é possível enviar um corpo customizado.

Identificadores

Abaixo estão definidos os campos que o Nexp usa para identificar os "elementos" envolvidos na criação do checkout. Quando um elemento não for encontrado, por exemplo, isso significa que os valores dos campos de identificação não batem com nenhum valor na base do Nexp.

  • Loja: campo $.store;
  • Pedido: loja + campo $.orderNumber;
  • Item de pedido: pedido + campo $.items[].orderItemId (o código do item de pedido na base
    do Nexp vem do campo $.items[].itemId no payload de pedido);
  • Depósito do item de pedido: loja + campo $.items[].storageName;
  • Número do checkout: campo $.externalNumber;
  • Número do item de checkout: checkout + campo $.items[].itemNumber.

Regras

  • Caso o pedido não exista, o Nexp tentará criá-lo;
  • Caso o pedido já exista, o Nexp tentará criar os eventuais itens que ainda não existem nesse pedido;
  • Caso item de pedido já existente ainda não esteja separado, ele é separado com sucesso automaticamente;
  • Uma onda é criada para cada grupo de itens de pedido de mesmo tipo (comum ou expresso) que ainda não estejam em onda. Nesse
    caso, a onda criada e concluída com sucesso automaticamente;
  • Caso a armazenagem não exista para uma determinada combinação de pedido e onda, uma nova é criada e concluída automaticamente;
  • Caso o checkout não exista, um novo é criado;
  • Caso o checkout já exista mas hajam itens de checkout que ainda não existem, eles são criados e vinculados ao checkout existente.

Exemplo de payload de sucesso (200 OK)

Ver mais detalhes na seção de respostas. O valor do campo $.content.protocol pode ser informado para a Logstore em caso de problemas, para que possamos identificar o request.

Formato do payload de erro

Toda validação que resulta em um erro é representada pela resposta com status 409 (Conflict), e o corpo da resposta é um JSON num formato padrão, conforme abaixo. Verifique as possibilidades na seção de resposta para os erros específicos.

{
   "statusCode":409,
   "content":{
      "error":{
         "code":"CodigoDeErroMacro",
         "details":{
            "errors":[
               {
                  "code":1,
                  "params":[
                     {}
                  ]
               }
            ]
         }
      }
   },
   "hasError":true,
   "data":null
}
Body Params
string
required

Código de identificação da loja

boolean
required

Se o valor for "false", será necessário fazer ao menos uma consolidação antes de fazer a conferência deste checkout

boolean
required

Determina se é possível concluir o checkout de forma parcial

boolean
required

Indica se o pedido está sendo atendido por mais de uma loja

date-time
required

Data em que pedido foi feito pelo consumidor

string
required

Número que identifica o checkout

string
required

Número que identifica pedido

string

Número que identifica pedido na loja, caso exista

string

Instruções de conferência

float

Valor total do pedido

float

Valor de frete do pedido

float

Valor total de desconto do pedido

float

Valor total de impostos do pedido

items
array of objects
required

Itens do checkout. Ao menos um item deve ser fornecido.

items*
Headers
string
required

Chave de acesso

string
required

Um hash que identifica a conta.

string
required

application/json

Responses

Language
Credentials
Basic
base64
:
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json