Sincronização

O fluxo de cadastro de produtos e de importação, separação e faturamento de pedidos pela API REST da Climba.

Atualizado em

Produtos

Cadastre na ordem abaixo, porque cada passo usa os códigos do anterior:

  1. Marcas: código, nome e, se houver, descrição. A marca só aparece na loja quando está ligada a pelo menos um produto ativo.
  2. Atributos: os grupos de atributo (por exemplo cor, tamanho, voltagem) e os atributos de cada grupo, que as variações dos produtos usam.
  3. Categorias: da raiz para as folhas. Cadastre a categoria pai antes da filha, porque a filha informa o código da pai em parentId.
  4. Produtos: com a marca, os atributos e as categorias já cadastrados, as variações de estoque e o peso bruto, a altura, a largura e o comprimento de cada variação.
  5. Fotos (opcional): por URL, que a Climba baixa e liga ao produto, ou com o arquivo em base64. Até 10MB por foto.

Para mudar só o estoque ou o preço de uma variação, use PATCH. O PUT do produto exige o JSON completo. Para tirar um produto da loja, envie um PUT com o status inativo.

Pedidos

Status

CódigoStatus
1Aguardando Pagamento
2Pagamento Confirmado
3Enviado
6Cancelado
8Faturado
9Pagamento Autorizado
10Em Separação

Buscar pedidos novos e alterados

A Climba recomenda receber os pedidos por webhook: a cada pedido novo ou troca de status, a loja envia um POST para a URL do seu sistema com o código do pedido, e o sistema responde só com o status 200, sem corpo. A URL do webhook é cadastrada pela equipe da Climba.

{ "orderId": "1234567890" }

Com o código, consulte o pedido:

curl -X GET 'https://api.exemplo/api/v1/orders/1234567890' \
  -H 'accept: application/json' \
  -H 'x-idcommerce-api-token: SEU_TOKEN'

Se usar consulta periódica, a recomendação é a cada 30 minutos, filtrando por dateStart e status. O dateStart considera a data da última modificação do pedido, não a da compra: um pedido antigo que mudou de status depois dessa data também volta. O formato é Y-m-d H:i:s.

curl -X GET 'https://api.exemplo/api/v1/orders?dateStart=2026-11-10%2008:00:00&status=2' \
  -H 'accept: application/json' \
  -H 'x-idcommerce-api-token: SEU_TOKEN'

Quais pedidos importar

A Climba recomenda importar no sistema só os pedidos com status 2 - Pagamento Confirmado: a partir daí o pedido está pago e pode gerar a nota fiscal e ser enviado. Se chegar o status 6 - Cancelado de um pedido que o sistema já importou, cancele o pedido no sistema, porque ele não está mais pago.

Avisar que o pedido foi importado

Depois de importar o pedido, envie um PATCH com orderExportedToErp:

curl -X PATCH 'https://api.exemplo/api/v1/orders/954556' \
  -H 'accept: application/json' \
  -H 'content-type: application/json' \
  -H 'x-idcommerce-api-token: SEU_TOKEN' \
  -d '{ "orderExportedToErp": true }'

A loja reserva o estoque dos produtos do pedido até receber esse aviso. Sem ele, o estoque que o sistema enviar depois perde a quantidade reservada. Exemplo: o produto tinha 2 unidades e o pedido levou 1. O sistema importou o pedido, não avisou e enviou estoque 1; na loja, o produto fica com 0 (1 enviada menos 1 reservada).

Separação (opcional)

Quando o pedido pago e importado começa a ser separado, um PUT em /orders/{orderId}/inPicking, sem corpo, muda o status para Em Separação e avisa o cliente.

Faturamento

Depois de emitir a nota fiscal, envie um PUT em /orders/{orderId}/billed. A loja muda o pedido para Faturado, avisa o cliente por e-mail e cria um pré-envio.

CampoConteúdo
numberNúmero da nota fiscal.
nfeAccessKeyChave de acesso da NF-e.
xmlXML da nota em base64.
logisticOperatorIdCódigo do operador logístico que vai levar o pedido.
pdfPDF da nota em base64 (opcional).
volumesQuantidade de volumes.

O operador logístico é quem a loja usa para despachar e pode ser diferente da forma de envio que o cliente escolheu no pedido (o shipping do pedido). Os códigos de um e de outro não são os mesmos. A Climba recomenda relacionar, no sistema, cada forma de envio da loja a uma transportadora e cada transportadora a um operador logístico da Climba, deixando o lojista trocar o operador antes de faturar. Se logisticOperatorId vier vazio, vale o operador ligado à forma de envio do pedido.

A resposta traz o pedido, com o link da etiqueta de envio em labelUrl, dentro de orderTrackings, para o sistema oferecer a impressão sem o lojista entrar no painel da Climba. O corpo completo de cada rota está na referência da API.

Isso ajudou?