← InicioFleetPay / API

Consultar el estado del RNTRC

Parámetros, estructura de datos y respuestas del contrato versionado.

GET/consultas/rntrc
consultarRntrcBase de Pruebas: https://api.fleetpay.site/v1

Las descripciones técnicas se traducen del contrato versionado. Se conservan los identificadores y el JSON originales; se omiten los ejemplos de datos.

Consulta la situación de un registro RNTRC ante ANTT: si está activo, la razón social, el tipo de transportista y si se equipara a TAC.

Requisito de la empresa que consulta: tener el registro fiscal completo, incluido el certificado digital A1 enviado en Configuración. En caso contrario, la respuesta es 422 con empresa_nao_habilitada.

Requiere el ámbito consultas habilitado en el panel.

Modo simulado en homologación

Esta consulta no tiene un proveedor contratado: en homologación, FleetPay genera una respuesta determinista sin efecto regulatorio. Los datos no proceden de ANTT ni reflejan el registro real del transportista. Para indicarlo explícitamente, razao_social no contiene el nombre real: en modo simulado, se sustituye todo el campo por TRANSPORTES SIMULADOS HML LTDA cuando documento es un CNPJ, o por TRANSPORTADOR AUTONOMO SIMULADO cuando es un CPF.

El contrato de solicitud y respuesta ya es definitivo: puede integrar ahora. Al incorporar el proveedor real, el comportamiento dejará de ser simulado sin cambiar el contrato.

El par documento + rntrc debe coincidir

Los dos parámetros plantean una sola pregunta: "la situación de ESTE registro de ESTE transportista". Un RNTRC que no corresponde al CPF/CNPJ indicado no identifica a un transportista para esta consulta. La respuesta es 400 con rntrc_nao_confere, nunca un 200 sobre el registro que se haya encontrado.

Es 400, no 503, porque la consulta se ejecutó y llegó a una conclusión: no hubo indisponibilidad. Tampoco es 404, porque el problema es la combinación de parámetros, no un recurso ausente en esa dirección.

Los valores de prueba siguientes están exentos de esta comprobación: deliberadamente no son el RNTRC de nadie.

Valores de prueba

En modo simulado, estos valores de rntrc siempre devuelven el mismo resultado; úselos para probar las rutas de error de su integración:

rntrcRespuesta
000000000Registro inactivo: ativo: false, con data_validade en el pasado
111111111Registro activo equiparado a TAC: ativo: true y equiparado_tac: true
el RNTRC del transportista consultadoRespuesta de éxito
cualquier otro valor válido400 rntrc_nao_confere

Autenticación

[
  {
    "oauth2": []
  },
  {
    "chaveApi": []
  }
]
La disponibilidad depende del entorno, los permisos habilitados y el proveedor. Esta referencia no ejecuta solicitudes ni recibe credenciales.

Parámetros

documentoquery · stringObligatorio

CPF (11 dígitos) o CNPJ (14 dígitos) del transportista consultado, solo dígitos.

Restricciones
{
  "type": "string",
  "pattern": "^([0-9]{11}|[0-9]{14})$"
}
rntrcquery · stringObligatorio

RNTRC del transportista consultado, con 8 o 9 dígitos.

En homologación, 000000000 devuelve un registro inactivo y 111111111 devuelve un registro activo equiparado a TAC; cualquier otro valor válido devuelve éxito.

Restricciones
{
  "type": "string",
  "pattern": "^[0-9]{8,9}$"
}

Respuestas

200 Respuesta HTTP

Estado del RNTRC consultado

application/json

environmentstringObligatorio

Entorno donde se ejecutó la consulta, determinado por la URL utilizada.

"homologacao" · "producao"
400 Respuesta HTTP

rntrc_nao_confere — el RNTRC informado no corresponde a este CPF/CNPJ. validacao — algún parámetro no cumple el formato requerido.

application/json

errorobjectOpcional
401 Respuesta HTTP

Sin autenticación (autenticacao): credencial ausente, inválida o vencida, incluida una clave API utilizada en el entorno incorrecto. La clave de homologación no es válida en producción, ni la de producción en homologación; el mensaje de error indica el entorno esperado.

application/json

errorobjectOpcional
403 Respuesta HTTP

Ámbito no habilitado para esta credencial

application/json

errorobjectOpcional
422 Respuesta HTTP

La empresa autenticada aún no completó el registro fiscal (empresa_nao_habilitada).

application/json

errorobjectOpcional
503 Respuesta HTTP

La consulta no está disponible temporalmente (consulta_indisponivel). Espera e inténtalo de nuevo.

application/json

errorobjectOpcional
Definición Completa de la Operación
{
  "tags": [
    "Consultas"
  ],
  "summary": "Consultar a situação do RNTRC",
  "operationId": "consultarRntrc",
  "description": "Consulta a situação cadastral de um RNTRC na ANTT: se está ativo, a razão social, o\ntipo de transportador e se é equiparado a TAC.\n\n**Pré-requisito da empresa que consulta:** ter o cadastro fiscal concluído — com o\ncertificado digital A1 enviado em Configurações. Sem isso a resposta é `422` com\n`empresa_nao_habilitada`.\n\nExige o escopo `consultas` habilitado no painel.\n\n## Modo simulado em homologação\n\nEsta consulta **não tem provedor contratado** por trás: em homologação a resposta é\ngerada pela FleetPay, é determinística e **não tem efeito regulatório** — o dado não vem\nda ANTT e não reflete o cadastro real do transportador. Para deixar isso explícito na\nresposta, o campo `razao_social` **não traz o nome real**: em modo simulado ele é\nsubstituído por inteiro por `TRANSPORTES SIMULADOS HML LTDA` quando o `documento` é um\nCNPJ, ou por `TRANSPORTADOR AUTONOMO SIMULADO` quando é um CPF.\n\nO contrato de request e response já é o definitivo: integre agora. Quando o provedor real\nentrar, o comportamento deixa de ser simulado **sem mudança de contrato**.\n\n\n### O par `documento` + `rntrc` precisa conferir\n\nOs dois parâmetros são uma pergunta só: *\"a situação DESTE registro DESTE\ntransportador\"*. Um RNTRC que não seja o daquele CPF/CNPJ não descreve transportador\nnenhum, e a resposta é **`400` com `rntrc_nao_confere`** — nunca um `200` sobre o\ncadastro que por acaso foi encontrado.\n\nÉ `400` e não `503` porque a consulta rodou e concluiu: não houve indisponibilidade. E\nnão é `404` porque o que está errado é a **combinação** dos dois parâmetros, não um\nrecurso ausente no endereço.\n\nAs sentinelas abaixo são **isentas** dessa checagem — elas existem justamente para não\nserem o RNTRC de ninguém.\n\n### Sentinelas de teste\n\nEm modo simulado, estes valores de `rntrc` respondem sempre a mesma coisa — use-os para\nexercitar o caminho de erro da sua integração:\n\n| `rntrc` | Resposta |\n|---|---|\n| `000000000` | Registro inativo — `ativo: false`, e `data_validade` no passado |\n| `111111111` | Registro ativo e equiparado a TAC — `ativo: true` e `equiparado_tac: true` |\n| o RNTRC do transportador consultado | Resposta de sucesso |\n| qualquer outro valor válido | `400` `rntrc_nao_confere` |\n",
  "parameters": [
    {
      "name": "documento",
      "in": "query",
      "required": true,
      "schema": {
        "type": "string",
        "pattern": "^([0-9]{11}|[0-9]{14})$"
      },
      "description": "CPF (11 dígitos) ou CNPJ (14 dígitos) do transportador consultado, somente dígitos."
    },
    {
      "name": "rntrc",
      "in": "query",
      "required": true,
      "schema": {
        "type": "string",
        "pattern": "^[0-9]{8,9}$"
      },
      "description": "RNTRC do transportador consultado, com 8 ou 9 dígitos.\n\nEm homologação, `000000000` devolve registro inativo e `111111111` devolve registro\nativo equiparado a TAC; qualquer outro valor válido devolve sucesso.\n"
    }
  ],
  "responses": {
    "200": {
      "description": "Situação do RNTRC consultado",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RespostaConsultaRntrc"
          }
        }
      }
    },
    "400": {
      "description": "`rntrc_nao_confere` — o RNTRC informado não é o registro deste CPF/CNPJ.\n`validacao` — algum parâmetro está fora do formato exigido.\n",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Erro"
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Erro401"
    },
    "403": {
      "$ref": "#/components/responses/Erro403"
    },
    "422": {
      "description": "A empresa autenticada ainda não concluiu o cadastro fiscal (`empresa_nao_habilitada`).",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Erro"
          }
        }
      }
    },
    "503": {
      "description": "A consulta está temporariamente indisponível (`consulta_indisponivel`). Aguarde e tente de novo.",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Erro"
          }
        }
      }
    }
  },
  "method": "GET",
  "path": "/consultas/rntrc"
}