api · Documentación
Iniciar sesión

Consulta de RUC

GET/ruc/{numero}

Consulta datos de una empresa/contribuyente por su RUC, contra la cache local de la API.

Parámetros

NombreTipoDescripción
numeroruta11 dígitos, con dígito verificador válido.

Ejemplo

curl https://mblapirest.com/api/v1/ruc/20123456789 \
  -H "Authorization: Bearer TU_API_TOKEN"
{
  "success": true,
  "data": {
    "razon_social": "EMPRESA EJEMPLO S.A.C.",
    "numero_documento": "20123456789",
    "estado": "ACTIVO",
    "condicion": "HABIDO",
    "direccion": "AV. EJEMPLO NRO. 456 URB. SANTA CRUZ",
    "ubigeo": "150131",
    "via_tipo": "AV.",
    "via_nombre": "EJEMPLO",
    "zona_codigo": "URB.",
    "zona_tipo": "SANTA CRUZ",
    "numero": "456",
    "interior": "-",
    "lote": "-",
    "dpto": "-",
    "manzana": "-",
    "kilometro": "-",
    "distrito": "SAN ISIDRO",
    "provincia": "LIMA",
    "departamento": "LIMA",
    "es_agente_retencion": false,
    "es_buen_contribuyente": false,
    "locales_anexos": null
  }
}

Campos de la dirección

La dirección viene armada en direccion y además desglosada en sus piezas, tal como las publica SUNAT en su padrón, por si necesitas rearmarla con otro formato. Las piezas vacías llegan como "-" (es el marcador que usa SUNAT, no una cadena vacía).

CampoDescripción
via_tipo / via_nombreTipo y nombre de la vía. Ej. AV. + EJEMPLO.
zona_codigo / zona_tipoTipo y nombre de la zona. Ej. URB. + SANTA CRUZ. Los nombres vienen cruzados así desde SUNAT: el "código" es el tipo y el "tipo" es el nombre.
numero, interior, lote, dpto, manzana, kilometroResto de componentes. dpto es el departamento/apartamento del edificio, no el departamento del Perú.
ubigeoCódigo INEI de 6 dígitos. distrito, provincia y departamento se resuelven a partir de él.
Nota sobre es_buen_contribuyente: se deduce del listado de padrones de SUNAT, que solo se completa en la consulta en vivo. En la consulta básica casi siempre llega false; si necesitas ese dato con certeza, usa "RUC Completo".
Si el RUC no está en la cache local, la respuesta es {"success": false, "message": "El RUC no fue encontrado."}. Para consultar en vivo directo a SUNAT (RUCs nuevos, o datos más completos), ver "RUC Completo" abajo.

RUC Completo (consulta en vivo)

Requiere el servicio "Consulta de RUC Completo" habilitado en tu plan (distinto del básico de arriba) — consulta en vivo directo al portal de SUNAT, sin cache: incluye representante legal (para RUCs de empresa), domicilio fiscal completo con ubigeo resuelto, y todos los campos que SUNAT expone en su ficha pública.

GET/ruc/plus/{numero}

curl https://mblapirest.com/api/v1/ruc/plus/20123456789 \
  -H "Authorization: Bearer TU_API_TOKEN"
{
  "success": true,
  "data": {
    "n_mero_de_ruc": "20123456789 - EMPRESA EJEMPLO S.A.C.",
    "tipo_contribuyente": "SOCIEDAD ANONIMA CERRADA",
    "nombre_comercial": "EJEMPLO",
    "fecha_de_inscripci_n": "25/06/2023",
    "estado_contribuyente": "ACTIVO",
    "condici_n_del_contribuyente": "HABIDO",
    "domicilio_fiscal": "AV. EJEMPLO NRO. 456 URB. SANTA CRUZ LIMA - LIMA - SAN ISIDRO",
    "representante_legal": [
      { "tipo_documento": "DNI", "numero_documento": "12345678", "nombre": "...", "cargo": "GERENTE GENERAL", "fecha_desde": "..." }
    ]
  }
}
Ojo con los nombres de campo: este endpoint devuelve las claves tal como las rotula SUNAT en su ficha, con los acentos recortados — de ahí n_mero_de_ruc, condici_n_del_contribuyente, fecha_de_inscripci_n. Además n_mero_de_ruc trae el RUC y la razón social juntos en un solo texto, separados por " - ". Si prefieres nombres limpios y estables, usa la consulta básica de arriba.

Búsqueda por razón social

POST/ruc/plus/name — también requiere "Consulta de RUC Completo".

curl -X POST https://mblapirest.com/api/v1/ruc/plus/name \
  -H "Authorization: Bearer TU_API_TOKEN" \
  -d "name=EMPRESA EJEMPLO"
{
  "success": true,
  "data": [
    { "ruc": "20123456789", "razon_social": "EMPRESA EJEMPLO S.A.C.", "ubicacion": "LIMA", "estado": "ACTIVO" }
  ]
}

Última actualización: 03/09/2026