API
API atual

Developer Docs

Endpoints

Referência dos endpoints públicos atuais da Infiny, com payloads, respostas, erros mais comuns e observações de compatibilidade.

Frete e pedidos

Cotação, criação e cancelamento

Esses endpoints cobrem a parte principal do ciclo: validar cobertura, abrir o pedido e cancelar quando ainda for possível.

POST

Cotação de frete

Consulta o valor e o prazo de frete a partir do CEP de origem, do CEP de destino e dos dados do pacote.

/api/integration/shipping/quote

Public API
JSON
Frete

Parâmetros

CampoTipoObrigatórioDescriçãoExemplo / default
originstringSimCEP de origem com 8 dígitos, sem caracteres especiais.01001000
destinationstringSimCEP de destino com 8 dígitos, sem caracteres especiais.20040030
widthstringOpcionalLargura em centímetros. O backend aceita de 1 a 3 dígitos.16
heightstringOpcionalAltura em centímetros. O backend aceita de 1 a 3 dígitos.11
lengthstringOpcionalComprimento em centímetros. O backend aceita de 1 a 3 dígitos.4
weightnumberOpcionalPeso em quilos. Se omitido, o backend assume 1.1
declared_amountintegerOpcionalValor declarado em inteiro. O fluxo atual trata montantes monetários como inteiros.15990

Request de cotação

json
{
  "origin": "01001000",
  "destination": "20040030",
  "width": "20",
  "height": "12",
  "length": "10",
  "weight": 1.4,
  "declared_amount": 15990
}

Response 200

json
{
  "success": true,
  "data": {
    "from": "SP",
    "to": "RJ",
    "amount": 1890,
    "deadline": 1
  }
}

Respostas

StatusQuando aconteceFormato
200Frete calculado com sucesso.{ success: true, data: { from, to, amount, deadline } }
400Falha de validação ou ausência de cobertura para a região.{ success: false, message: <erro> }

POST

Criação de pedido

Cria um pedido operacional na Infiny e retorna o tracking_code gerado ou informado no payload.

/api/integration/orders

Public API
JSON
Pedidos

Parâmetros

CampoTipoObrigatórioDescriçãoExemplo / default
company_documentstringSimDocumento da empresa remetente. Precisa existir no TMS e pertencer ao mesmo seller do token.
orderIdstringSimIdentificador único do pedido no sistema de origem.
orderCostnumberSimValor do pedido. O backend exige valor numérico maior ou igual a zero.
trackingCodestringOpcionalCódigo de rastreio opcional. Se não for enviado, o TMS gera um tracking_code.
serviceenumSimServiço aceito hoje pelo controller: infiny, next ou turbo.infiny
items[]arraySimLista de itens. Cada item deve incluir description, dimensions, quantity e price.
receiverobjectSimDestinatário do pedido. receiver.name e receiver.address.{state,city,zipCode,street,streetNumber,neighborhood} são obrigatórios.
invoiceobjectOpcionalNota fiscal opcional. O validator marca invoice como array, mas o controller atual espera um objeto simples com series, number, issueDate, value e key.

Request de criação

json
{
  "company_document": "12345678000199",
  "orderId": "ORDER-2026-000184",
  "orderCost": 159.9,
  "trackingCode": "INF-ORDER-2026-000184",
  "service": "infiny",
  "items": [
    {
      "description": "Kit same day",
      "dimensions": "20x12x10,1.4",
      "quantity": 1,
      "price": 159.9
    }
  ],
  "receiver": {
    "name": "Ana Costa",
    "phone": "1133334444",
    "cellphone": "11999998888",
    "email": "ana@example.com",
    "document": "12345678900",
    "address": {
      "state": "SP",
      "city": "São Paulo",
      "zipCode": "04538132",
      "street": "Rua Helena",
      "streetNumber": "245",
      "neighborhood": "Vila Olímpia",
      "complement": "Conj. 11"
    }
  },
  "invoice": {
    "series": "1",
    "number": "18492",
    "issueDate": "2026-03-25 14:30:00",
    "value": 159.9,
    "key": "35260312345678000199550010000184921000018492"
  }
}

Response 201

json
{
  "success": true,
  "tracking_code": "INF-ORDER-2026-000184"
}

Respostas

StatusQuando aconteceFormato
201Pedido criado com sucesso.{ success: true, tracking_code: <tracking_code> }
400Pedido duplicado ou tentativa de cancelamento inválida.{ success: false, message: 'Este objeto já foi previamente cadastrado!' }
401O token não pertence ao seller da empresa informada.{ success: false, message: 'Request não altorizado' }
404Empresa não encontrada para o company_document enviado.{ success: false, message: 'Empresa não encontrada' }
422Payload inválido na validação do Laravel.{ success: false, message: 'Dados inválidos', errors: {...} }

POST

Cancelamento de pedido

Cancela um pedido existente por orderId, desde que ele ainda não tenha sido entregue ou cancelado.

/api/integration/orders/cancel

Public API
JSON
Pedidos

Parâmetros

CampoTipoObrigatórioDescriçãoExemplo / default
orderIdstringSimMesmo identificador enviado na criação do pedido.

Request de cancelamento

json
{
  "orderId": "ORDER-2026-000184"
}

Response 200

json
{
  "success": true,
  "message": "Objeto cancelado com sucesso"
}

Respostas

StatusQuando aconteceFormato
200Pedido cancelado com sucesso.
400orderId ausente, pedido já entregue ou pedido já cancelado.
404Pedido não encontrado ou não pertencente à mesma integração pública.

Tracking e documentos

XML de nota fiscal e consulta de tracking

O XML atende o cenário atual de Mercado Livre. O tracking serve como leitura complementar para auditoria, atendimento e reconciliação.

POST

Upload de NFe para Mercado Livre

Recebe um XML de nota fiscal via multipart/form-data, extrai xPed e associa os pedidos do Mercado Livre encontrados.

/api/integration/invoices/mercado-livre

Public API
Multipart
NFe

Parâmetros

CampoTipoObrigatórioDescriçãoExemplo / default
nfefileSimArquivo XML da nota fiscal enviado em multipart/form-data.

Upload via cURL

bash
curl -X POST "https://use.infiny.com.br/api/integration/invoices/mercado-livre" \
  -H "Authorization: Basic pk_xxxxxxxxxxxxxxxxx" \
  -F "nfe=@nota-fiscal.xml"

Response 200

json
{
  "success": true,
  "message": "Nota fiscal salva com sucesso"
}

Respostas

StatusQuando aconteceFormato
200NFe salva com sucesso e processada para os pedidos encontrados.
422Arquivo ausente, inválido ou não enviado no campo nfe.

GET

Consulta de tracking

Consulta pedidos vinculados ao mesmo seller do token e retorna tracking_code com status_log para até 10 resultados.

/api/integration/orders/tracking

Public API
Query
Tracking

Parâmetros

CampoTipoObrigatórioDescriçãoExemplo / default
typeenumSimTipo de busca aceito hoje: document ou order_number.order_number
valuestringSimValor da busca. Para order_number, o backend compara tracking_code, order_code, shipping_id e códigos auxiliares.
documentstringOpcionalFiltro adicional opcional por documento do cliente.

Tracking por número do pedido

bash
curl -G "https://use.infiny.com.br/api/integration/orders/tracking" \
  -H "Authorization: Basic pk_xxxxxxxxxxxxxxxxx" \
  --data-urlencode "type=order_number" \
  --data-urlencode "value=ORDER-2026-000184"

Response 200

json
{
  "success": true,
  "data": [
    {
      "tracking_code": "INF-ORDER-2026-000184",
      "status_log": [
        {
          "order_id": 184,
          "status": "pending",
          "company_id": 91,
          "via_api": true,
          "created_at": "2026-03-25T14:30:00.000000Z",
          "updated_at": "2026-03-25T14:30:00.000000Z"
        }
      ]
    }
  ]
}

Respostas

StatusQuando aconteceFormato
200Objeto encontrado com histórico de status.
403Parâmetro value ausente no request.
200/falseQuando nenhum objeto é encontrado, o controller responde success=false com mensagem de objeto não encontrado.

Suporte

Precisa validar um fluxo específico?

Se você estiver homologando uma integração ou precisar conferir um comportamento da API pública atual, fale com a equipe da Infiny antes de subir volume real.