API para consultar SOAT y tecnomecánica en Colombia

API consulta SOAT y tecnomecánica en Colombia (2026): controla la vigencia de tu flota con 3 parámetros

Tabla de Contenidos
Comparte este artículo

Respuesta corta: Para consultar el SOAT y la tecnomecánica de un vehículo en Colombia por API, envía un GET a https://api.verifik.co/v2/co/runt/vehiculo con la placa y el documento del propietario. Verifik responde con datos del RUNT: si cada documento está vigente (valid) y cuándo vence (dueDate). Se paga con créditos de smartCHECK, desde $49 al mes.

Si manejas una flota, una plataforma de movilidad o una aseguradora, saber si un vehículo tiene el SOAT y la revisión técnico-mecánica (RTM) al día no puede depender de que alguien entre a revisar placa por placa. La API consulta SOAT y tecnomecánica de Verifik usa el endpoint RUNT – SOAT y RTM y recibe 3 parámetros (tipo de documento, número de documento y placa). Te devuelve en un solo JSON el estado de los dos documentos, sus fechas de expedición y vencimiento y los datos básicos del vehículo. Como la consulta pide el documento del dueño, también confirmas que el vehículo está registrado a nombre de quien dice ser su propietario.

En esta guía verás cuándo vence cada documento, qué campos devuelve la API, cómo integrarla y cómo montar un monitoreo de vencimientos para toda tu flota.

Qué son el SOAT y la revisión técnico-mecánica y por qué verificarlos en tu flota

El SOAT es el Seguro Obligatorio de Accidentes de Tránsito. La revisión técnico-mecánica es la inspección que se hace en un Centro de Diagnóstico Automotor (CDA) para comprobar que el vehículo puede circular de forma segura y dentro de los límites de emisiones. Los dos quedan registrados en el RUNT y los dos son obligatorios para circular.

El incumplimiento es masivo. Según un estudio de Intempo construido con registros históricos del RUNT y reportado por BluRadio el 15 de octubre de 2026:

  • 10,7 millones de vehículos no tenían SOAT vigente en septiembre de 2026, frente a 5,3 millones en 2016. La evasión pasó del 40,6 % al 47,3 %.
  • De los 18,8 millones de vehículos obligados a tener ambos documentos, 9,8 millones (52,4 %) no tenían ninguno de los dos al día.
  • Cuando llega la primera RTM, la continuidad del SOAT cae del 89 % al 46 %, y hay 3,9 millones de vehículos jóvenes cerca de esa primera revisión.
  • Quienes renuevan el SOAT tardan en promedio 52 días desde el vencimiento. En el transporte público la evasión es del 23,6 %, frente al 47,8 % en el servicio particular.

El último dato es el más útil para una empresa: el estudio relaciona la menor evasión del transporte público con los controles empresariales y la supervisión de flotas. Verificar de forma sistemática sí funciona.

Hay otra razón práctica. El Comunicado 060 de 2026 del RUNT explica que la nueva función de cambio de infractor para fotocomparendos no aplica a los comparendos electrónicos asociados al SOAT o a la RTM. Si un vehículo de tu empresa sale con un documento vencido, no podrás reasignar ese comparendo al conductor por esa vía. Lo mejor es detectarlo antes de que el vehículo salga a la vía.

Cuándo vence cada uno y cuánto cuesta la RTM en 2026

El SOAT se renueva cada año. Para la revisión técnico-mecánica, Infobae resume así los plazos vigentes:

Tipo de vehículoPrimera RTMDespuésTarifa aproximada 2026
Particular nuevo5 años después de la matrícula (6 años si se matriculó entre el 20 de mayo de 2017 y el 19 de mayo de 2018)Cada año$368.853 (livianos)
Servicio público2 años después de la matrículaCada añoSegún la categoría; los pesados, entre $476.201 y $562.800
Motocicleta2 años después de la matrículaCada año$247.490

La misma fuente indica que circular sin revisión vigente puede generar un comparendo de 15 salarios mínimos diarios legales vigentes y la inmovilización del vehículo. El precio exacto puede variar un poco entre CDA.

Ojo con calcular estas fechas a mano. Según El Colombiano, el Ministerio de Transporte prepara una reforma al Código Nacional de Tránsito que contempla, entre otros cambios, nuevos plazos para la revisión técnico-mecánica. La reforma está en trámite y no ha entrado en vigencia, pero si cambia, tus reglas basadas en la fecha de matrícula quedarían desactualizadas. Es más seguro leer la vigencia y la fecha de vencimiento directamente del RUNT en cada consulta.

Qué devuelve la API consulta SOAT y tecnomecánica de Verifik

La respuesta 200 trae un objeto data con cuatro grupos de información, además de una firma de Verifik:

BloqueCamposPara qué te sirve
IdentificacióndocumentType, documentNumber, plateConfirmar que la placa corresponde al documento del propietario que consultaste
vehicleInformationcolor, brand, line, status, enrollmentDate, plateValidar marca, línea y color, y que el vehículo esté ACTIVO
soatvalid, expeditionDate, dueDate, coverageStartDate, soatNumberSaber si la póliza está vigente, desde cuándo cubre y cuándo vence
techReviewvalid, reviewNumber, expeditionDate, dueDate, requireTechReviewSaber si la RTM está vigente, su número de revisión y su vencimiento
TrazabilidadconsultationDateTime, signature.dateTime, signature.messageGuardar en el expediente cuándo se hizo la consulta, con la firma “Certified by Verifik.co”

Según la documentación, el servicio consulta el RUNT en tiempo real, tiene cobertura nacional y responde en JSON.

Cómo integrar la API: ejemplo con cURL y JavaScript

Necesitas tu token de Verifik en el encabezado Authorization: Bearer y estos 3 parámetros obligatorios:

  • documentType: tipo de documento del propietario. La documentación lista CC, CE, PA, RC y NIT.
  • documentNumber: número de documento del propietario, sin puntos ni espacios.
  • plate: placa del vehículo.

Así se ve la petición con cURL:

curl -G "https://api.verifik.co/v2/co/runt/vehiculo" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer $VERIFIK_TOKEN" \
  --data-urlencode "documentType=CC" \
  --data-urlencode "documentNumber=123456789" \
  --data-urlencode "plate=ABC123"

Y este es el ejemplo en JavaScript (axios), basado en el de la documentación:

import axios from "axios";

const options = {
  method: "GET",
  url: "https://api.verifik.co/v2/co/runt/vehiculo",
  params: { documentType: "CC", documentNumber: "123456789", plate: "ABC123" },
  headers: {
    Accept: "application/json",
    Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
  },
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}

Esta es la respuesta 200 de ejemplo que publica la documentación:

{
  "data": {
    "documentType": "CC",
    "documentNumber": "123456789",
    "plate": "XXXXX",
    "vehicleInformation": {
      "color": "PLATEADO",
      "brand": "CHERY",
      "line": "QQ3 SQR7080 S116",
      "status": "ACTIVO",
      "enrollmentDate": "07/10/2010",
      "plate": "XXXXX"
    },
    "soat": {
      "valid": true,
      "expeditionDate": "10/09/2021",
      "dueDate": "11/09/2022",
      "coverageStartDate": "12/09/2021",
      "soatNumber": "XXXXXX"
    },
    "techReview": {
      "valid": true,
      "reviewNumber": "XXXXX",
      "expeditionDate": "12/09/2021",
      "dueDate": "12/09/2022",
      "requireTechReview": true
    },
    "consultationDateTime": "2022-03-03T17:10:00.568Z"
  },
  "signature": {
    "dateTime": "March 3, 2022 12:10 PM",
    "message": "Certified by Verifik.co"
  }
}

En el ejemplo, las fechas del SOAT y de la RTM llegan como texto en formato día/mes/año, y consultationDateTime llega en formato ISO 8601. Si no hay registro para esa combinación de placa y documento, la API responde con 404 y {"code": "NotFound", "message": "Record not found."}. Si falta algún parámetro, responde con 409 y el código MissingParameter. La documentación también muestra un 409 con el mensaje documentType must be one of: [CC] para un tipo de documento no válido, así que empieza tus pruebas con CC (cédula) y revisa los demás tipos en la documentación.

¿Quieres probarlo? Crea tu cuenta gratis en Verifik y haz tu primera llamada con tu token.

Cómo monitorear los vencimientos de toda la flota

La documentación de Verifik menciona expresamente la gestión de flotas, para monitorear vencimientos y programar renovaciones. Un esquema que funciona bien es este:

  1. Inventario: guarda para cada vehículo la placa y el tipo y número de documento del propietario. En flotas de terceros (conductores con carro propio), pídelos en el onboarding.
  2. Barrido periódico: consulta toda la flota cada noche o cada semana, según cuántos vehículos tengas.
  3. Bloqueo: si soat.valid es false, el vehículo no se despacha ni se activa en la plataforma. Haz lo mismo con techReview.valid cuando requireTechReview es true.
  4. Alerta temprana: si dueDate está a 30 días o menos, avisa al conductor o al área de mantenimiento.
  5. Reconsulta tras la renovación: una póliza recién pagada puede tardar en aparecer en el RUNT. Si el conductor dice que ya renovó, vuelve a consultar al día siguiente antes de cerrar la alerta.
  6. Evidencia: guarda la respuesta con su signature y su consultationDateTime en el expediente del vehículo.

Este script en JavaScript recorre la flota y aplica las reglas anteriores:

import axios from "axios";

// Tu flota: placa + documento del propietario de cada vehículo
const flota = [
  { plate: "ABC123", documentType: "CC", documentNumber: "123456789" },
];

const VENTANA_DIAS = 30;

// Las fechas llegan como texto día/mes/año, por ejemplo "11/09/2022"
const diasHasta = (dmy) => {
  const [d, m, y] = dmy.split("/").map(Number);
  return Math.ceil((new Date(y, m - 1, d) - Date.now()) / 86400000);
};

for (const vehiculo of flota) {
  const { data } = await axios.get("https://api.verifik.co/v2/co/runt/vehiculo", {
    params: vehiculo,
    headers: {
      Accept: "application/json",
      Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
    },
  });
  const { soat, techReview } = data.data;
  const alertas = [];

  if (!soat.valid) alertas.push("SOAT no vigente: bloquear despacho");
  else if (diasHasta(soat.dueDate) <= VENTANA_DIAS) alertas.push(`SOAT vence en ${diasHasta(soat.dueDate)} días`);

  if (techReview.requireTechReview && !techReview.valid) alertas.push("RTM no vigente: bloquear despacho");
  else if (techReview.requireTechReview && diasHasta(techReview.dueDate) <= VENTANA_DIAS) alertas.push(`RTM vence en ${diasHasta(techReview.dueDate)} días`);

  if (alertas.length) console.log(vehiculo.plate, alertas.join(" | "));
}

Si tu equipo de operaciones no programa, smartCHECK permite hacer consultas masivas cargando un archivo CSV. Y si solo necesitas revisar un vehículo puntual, el reporte de SOAT y tecnomecánica por placa de SmartReport lo hace desde el navegador.

Casos de uso por sector

  • Logística y última milla: valida vehículos propios y de terceros antes de asignarles rutas. Es la misma necesidad que cubre la solución de Verifik para logística.
  • Plataformas de movilidad y delivery: durante el onboarding, confirma que el vehículo del conductor tiene SOAT y RTM vigentes y que está a nombre del propietario declarado. Después, monitorea los vencimientos para desactivar a tiempo.
  • Aseguradoras e intermediarios: revisa la vigencia de las coberturas antes de emitir una póliza nueva o de tramitar una reclamación, como plantea la documentación.
  • Rent-a-car y leasing: evita entregar un vehículo con un documento a punto de vencer y programa la renovación con base en el dueDate.
  • Concesionarios y compraventa: confirma el estado de los documentos antes de recibir un usado como parte de pago.

Verifik - la mejor plataforma de verificación de identidad

Combínala con otras verificaciones de Verifik

El vehículo es solo la mitad del riesgo. Con la misma cuenta puedes verificar al conductor y al resto del historial vehicular:

La diferencia con estos endpoints es el foco: /v2/co/runt/vehiculo devuelve solo lo que necesitas para controlar la vigencia del SOAT y de la RTM, con campos directos de vigencia y vencimiento, y valida de paso el documento del propietario.

Qué tipo de proveedor cubre SOAT y RTM en Colombia

El RUNT tiene un servicio REST propio para aseguradoras. Su manual técnico exige, entre otros requisitos, un certificado digital de persona jurídica, una IP única autorizada y un usuario asignado por el RUNT. Si tu empresa no es una aseguradora, lo normal es usar un proveedor. Esto es lo que muestra hoy la página pública de cada uno:

ProveedorDatos de SOAT y RTM de ColombiaQué pidePrecio publicado
VerifikObjetos soat y techReview con vigencia y vencimiento, dentro de una plataforma de más de 90 API de más de 15 paísesPlaca, tipo y número de documento del propietarioPlanes smartCHECK desde $49 al mes
PlacApiArreglo de pólizas SOAT dentro de una consulta que reúne siete fuentes (RUNT, SOAT, tecnomecánica, SIMIT, impuestos, FASECOLDA y pico y placa)Placa y documento del propietarioCréditos prepagados: de $349 COP por consulta de API (paquete de 30) a $99 COP (paquete de 50.000)
DiditSu lista de validación en bases de datos incluye para Colombia la verificación de cédula (Registraduría / ANI); no lista datos vehiculares de ColombiaNo aplica para SOAT y RTM$0,20 por verificación de cédula
IDMeritSu página de Colombia describe KYC y verificación de licencias de conducción; no menciona SOAT ni RTMNo aplica para SOAT y RTMNo figura en esa página

Cuánto cuesta la API consulta SOAT y tecnomecánica

Cada consulta se descuenta de los créditos de tu plan de smartCHECK. Según la página de precios de smartCHECK:

  • Starter: $49 al mes, o $490 al año recibiendo $588 en créditos.
  • Basic: $129 al mes, o $1.290 al año recibiendo $1.548 en créditos.
  • Plus: $299 al mes, o $2.990 al año recibiendo $3.588 en créditos.
  • Business: $649 al mes, o $6.490 al año recibiendo $7.788 en créditos.

Los planes anuales incluyen 2 meses gratis. El costo de cada llamada a /v2/co/runt/vehiculo lo ves en tu panel al crear la cuenta. Si vas a monitorear una flota grande, agenda una sesión con el equipo para estimar el volumen.

Respuestas rápidas

¿Cómo consultar el SOAT y la tecnomecánica de un vehículo por API? Envía un GET a /v2/co/runt/vehiculo de Verifik con la placa y el tipo y número de documento del propietario. La respuesta trae los objetos soat y techReview, cada uno con valid (vigente o no) y dueDate (fecha de vencimiento).

¿Cada cuánto se hace la revisión técnico-mecánica en Colombia? Los particulares nuevos la hacen a los 5 años de la matrícula; los de servicio público y las motos, a los 2 años. Después es anual. Hay una reforma al Código de Tránsito en trámite que podría cambiar los plazos, así que conviene leer la vigencia del RUNT.

¿Por qué aparece el SOAT vencido si ya lo renové? Una póliza recién pagada puede tardar en reflejarse en el RUNT. Si el conductor muestra el pago, vuelve a consultar al día siguiente antes de cerrar la alerta o de desbloquear el vehículo.

¿Cómo monitorear los vencimientos de toda una flota? Consulta la flota cada noche o cada semana, bloquea los vehículos con valid en false y alerta cuando dueDate esté a 30 días o menos. Sin desarrolladores, smartCHECK permite consultas masivas con un archivo CSV.

¿Puedo validar el SOAT sin conocer al propietario? Sí. La consulta RUNT solo por placa (/v2/co/runt/vehicle-by-plate-only) devuelve el registro del vehículo, con sus pólizas SOAT y su revisión técnico-mecánica, usando únicamente la placa.

¿Qué pasa si un vehículo de mi flota circula sin SOAT o RTM? Puede recibir un comparendo y ser inmovilizado. Según el Comunicado 060 de 2026 del RUNT, el cambio de infractor en línea no aplica a los comparendos electrónicos de SOAT o RTM.

Empieza a controlar el SOAT y la RTM de tu flota hoy

Con una sola consulta sabes si cada vehículo puede salir a la vía, cuándo vencen sus documentos y si está a nombre del propietario que te reportaron, con un registro firmado de cada verificación. Revisa la documentación del endpoint y haz tu primera llamada.

¿Listo para empezar? Crea tu cuenta gratis en Verifik o agenda una demo para ver cómo automatizar el control de SOAT y tecnomecánica en tu operación.

Johan Castellanos - CEO Verifik

Preguntas frecuentes

➖

¿Cómo consultar el SOAT y la tecnomecánica de un vehículo por API?

Envía un GET a /v2/co/runt/vehiculo de Verifik con la placa y el tipo y número de documento del propietario. La respuesta trae los objetos soat y techReview, cada uno con valid (vigente o no) y dueDate (fecha de vencimiento).

➕

¿Cada cuánto se hace la revisión técnico-mecánica en Colombia?

Los particulares nuevos la hacen a los 5 años de la matrícula; los de servicio público y las motos, a los 2 años. Después es anual. Hay una reforma al Código de Tránsito en trámite que podría cambiar los plazos, así que conviene leer la vigencia del RUNT.

➕

¿Por qué aparece el SOAT vencido si ya lo renové?

Una póliza recién pagada puede tardar en reflejarse en el RUNT. Si el conductor muestra el pago, vuelve a consultar al día siguiente antes de cerrar la alerta o de desbloquear el vehículo.

➕

¿Cómo monitorear los vencimientos de toda una flota?

Consulta la flota cada noche o cada semana, bloquea los vehículos con valid en false y alerta cuando dueDate esté a 30 días o menos. Sin desarrolladores, smartCHECK permite consultas masivas con un archivo CSV.

➕

¿Puedo validar el SOAT sin conocer al propietario?

Sí. La consulta RUNT solo por placa (/v2/co/runt/vehicle-by-plate-only) devuelve el registro del vehículo, con sus pólizas SOAT y su revisión técnico-mecánica, usando únicamente la placa.

➕

¿Qué pasa si un vehículo de mi flota circula sin SOAT o RTM?

Puede recibir un comparendo y ser inmovilizado. Según el Comunicado 060 de 2026 del RUNT, el cambio de infractor en línea no aplica a los comparendos electrónicos de SOAT o RTM.