Integração via API - Sigur
O Sigur permite a integração via API para inserção e atualização de pedidos e rastreamentos, proporcionando mais agilidade e automação na gestão de pedidos da sua operação.
Endpoints Disponíveis
- POST /order: Cria novos pedidos com rastreamentos
- PATCH /order: Atualiza rastreamentos em pedidos existentes
- GET /order: Usado para consultar um pedido já integrado
Como gerar o token de acesso
Para realizar requisições na API do Sigur, é necessário obter um token de autenticação.
- Realize uma requisição do tipo POST para a seguinte URL:
https://sigur.nordware.io/ExternalApplication/Login No Body da requisição, insira as seguintes informações:
- Essas informações podem ser encontradas no Sigur na aba Admin dentro de Aplicações Externas, dai basta pesquisar pelo nome da loja.
{ "api_key": " ", "api_secret": " " }Após enviar a requisição, o sistema retornará o token. O valor do campo "value" será o token de acesso:
{ "jwt": { "value": "seu_token_de_acesso", "expirationTime": "00:30:00" } }
Observação: O Token tem duração de 30 minutos.
Inserir pedido via API (POST /order)
Após obter o token, siga os passos abaixo para criar um pedido com rastreamento:
- Realize uma requisição do tipo POST para:
https://sigur-order-api.sigur.nordware.io - No Header da requisição, utilize os seguintes valores:
- Content-Type: application/json
- Authorization: Bearer seu_bearer_token
No Body, insira os dados conforme o exemplo abaixo:
{ "orders": [ { "order_number": "número do pedido", "marketplace_code": "código do Marketplace", "order_value": 211.48, "customer_paid": 101.23, "seller_name": "Mercado Livre", "quotation_id": 1234567, "date": "2025-07-01T11:25:00", "store": { "name": "nome da loja" }, "distribution_center": { "name": "nome do centro de distribuição" }, "sales_channel": { "external_code": "teste01" }, "customer": { "code": "C0003342833", "name": "Julio Henrique", "document": "044243550955", "email": "exemplo@email.com.br", "phone": "99999999999" }, "address": { "postal_code": "CEP", "street_name": "Rua", "number": "número", "complement": "complemento", "neighborhood": "Bairro" }, "trackings": [ { "tracking_code": "código de rastreamento", "internal_tracking_code": null, "shipment_date": "2025-07-14T15:15:15", "dispatch_date": "2025-07-14T15:15:15", "collection_date": null, "delivery_estimate": null, "delivery_date": null, "ignore_collect": false, "carrier_service": { "name": "LOGISTICA LTDA", "carrier": { "name": "transportadora" } }, "tracking_status": { "description": "Integrado" } } ], "invoice": { "external_code": 1515151515, "number": 99999999, "date": "2025-07-01T00:00:00", "total": 211.48, "cancelled": false, "access_key": "código de acesso a NF", "series": "1", "ie": "Isento", "cfop": "Teste", "packages": [] }, "items": [ { "sku": "9999999999", "quantity": 1 } ] } ] }
Abaixo está uma tabela com a descrição dos campos e se são obrigatórios ou não:
Descrição dos campos.
| Campo | Descrição | Obrigatório? |
|---|---|---|
| orders | Lista de pedidos enviados para a integração. | ✅ Sim |
| order_number | Número único do pedido no sistema. | ✅ Sim |
| marketplace_code | Código do pedido no marketplace. | ❌ Não |
| order_value | Valor total do pedido. | ✅ Sim |
| customer_paid | Valor pago pelo cliente. | ❌ Não |
| seller_name | Nome do marketplace ou vendedor. | ✅ Sim |
| quotation_id | ID da cotação de frete vinculada ao pedido. | ❌ Não |
| date | Data de criação ou emissão do pedido. | ✅ Sim |
| store.name | Nome da loja que vendeu o pedido. | ✅ Sim |
| distribution_center.name | Nome do centro de distribuição. | ✅ Sim |
| sales_channel.external_code | Código externo do canal de vendas. | ❌ Não |
| customer.code | Código do cliente no sistema. | ❌ Não |
| customer.name | Nome completo do cliente. | ✅ Sim |
| customer.document | CPF ou CNPJ do cliente. | ✅ Sim |
| customer.email | Email do cliente. | ✅ Sim |
| customer.phone | Telefone do cliente. | ✅ Sim |
| address.postal_code | CEP do endereço de entrega. | ✅ Sim |
| address.street_name | Nome da rua. | ✅ Sim |
| address.number | Número do endereço. | ✅ Sim |
| address.complement | Complemento do endereço. | ❌ Não |
| address.neighborhood | Bairro do endereço. | ✅ Sim |
| trackings | Lista de dados de rastreamento do pedido. | ✅ Sim |
| trackings[].tracking_code | Código de rastreamento da transportadora. | ✅ Sim |
| trackings[].internal_tracking_code | Código de rastreamento interno. | ❌ Não |
| trackings[].shipment_date | Data de envio. | ❌ Não |
| trackings[].dispatch_date | Data de despacho. | ❌ Não |
| trackings[].collection_date | Data de coleta. | ❌ Não |
| trackings[].delivery_estimate | Previsão de entrega. | ❌ Não |
| trackings[].delivery_date | Data da entrega. | ❌ Não |
| trackings[].ignore_collect | Ignora etapa de coleta. | ❌ Não |
| trackings[].carrier_service.name | Nome do serviço de transporte. | ✅ Sim |
| trackings[].carrier_service.carrier.name | Nome da transportadora. | ✅ Sim |
| trackings[].tracking_status.description | Status do rastreamento. | ❌ Não |
| invoice.external_code | Código externo da nota fiscal. | ✅ Sim |
| invoice.number | Número da nota fiscal. | ✅ Sim |
| invoice.date | Data da nota fiscal. | ✅ Sim |
| invoice.total | Valor total da nota. | ✅ Sim |
| invoice.cancelled | Status de cancelamento da nota. | ✅ Sim |
| invoice.access_key | Chave de acesso da nota fiscal eletrônica. | ✅ Sim |
| invoice.series | Série da nota fiscal. | ❌ Não |
| invoice.ie | Inscrição estadual (ou "Isento"). | ❌ Não |
| invoice.cfop | Código fiscal CFOP. | ❌ Não |
| invoice.packages | Lista de pacotes/volumes. | ❌ Não |
| items | Lista de itens do pedido. | ✅ Sim |
| items[].sku | Código do produto. | ✅ Sim |
| items[].quantity | Quantidade do item. | ✅ Sim |
Atualização de rastreamento via API (PATCH /order)
Utilize o método PATCH para atualizar o código de rastreamento em pedidos existentes.
- Realize uma requisição do tipo PATCH para:
https://sigur-order-api.sigur.nordware.io/Order - No Header da requisição, utilize:
- Content-Type: application/json
- Authorization: Bearer seu_bearer_token
No Body, insira o conteúdo conforme o exemplo:
- No método PATCH ao menos um desses dois campos tem que ser preenchido:
trackingsoutrackings[].internal_tracking_code
{ "order_number": "898989810", "trackings": [ { "internal_tracking_code": "SIG-898989810-1753221238524", "carrier_service": { "name": "Total Express Expresso", "carrier": { "name": "TOTAL EXPRESS" } }, "tracking_status": { "description": "Danificado" } } ] }- No método PATCH ao menos um desses dois campos tem que ser preenchido:
Abaixo está uma tabela com a descrição dos campos.
| Campo | Descrição |
|---|---|
order_number | Número do pedido. Identificador único do pedido no sistema. |
trackings | Lista de rastreamentos associados ao pedido. Pode conter um ou mais objetos. |
trackings[].internal_tracking_code | Código de rastreio interno gerado pelo sistema (ex: pelo Sigur). |
trackings[].carrier_service.name | Nome do serviço logístico utilizado (ex: "Total Express Expresso"). |
trackings[].carrier_service.carrier.name | Nome da transportadora responsável pelo envio (ex: "TOTAL EXPRESS"). |
trackings[].tracking_status.description | Status atual do rastreamento (ex: "Danificado"). |
Consulta de pedido já integrado através do método (GET/order)
Utilize o método GET para consultar pedidos que já foram integrados.
-
Para realizar a consulta utilize o método GET com a URL
abaixo informando o número do pedido:
-
GET:
https://order.sigur.nordware.io?order_number={númedo_pedido}
-
GET:
-
No Header(Cabeçalho) utilize:
- Authorization: Bearer seu_bearer_token
Status disponíveis para rastreamento
- Integrado
- Aguardando Retirada
- Danificado
- Em análise
- Em trânsito
- Entregue
- Enviado
- Extravio
- Não mapeado
- Retornando
- Saiu pra entrega
ℹ️ Considerações Técnicas
- Todos os campos obrigatórios devem ser preenchidos.
- As validações seguem o mesmo padrão da integração via API, incluindo formatos de data e telefone.
- O sistema trata duplicidades de códigos de rastreamento e conflitos de dados automaticamente.