🇵🇪 Perú · fuente pública
OEFA: sanctions
resoluciones directorales de sanción ambiental firmes. Cada fila = una resolución contra un administrado (empresa o persona natural). Incluye tipo de sanción, infracción, norma tipificadora, medida correctiva/cautelar, multa, fechas de notificación/apelación.
Cobertura publicada
- Registros
- 14,072
- Última actualización
- 11 set. 2026
- Frecuencia
- monthly
- Frescura
- CURRENT
- Identificador
ruc- Búsqueda por nombre
- Disponible
Conteo y frescura consultados desde api.latinfo.dev/sources durante el build del 2026-09-28.
Fuente primaria
- Institution: OEFA — Organismo de Evaluación y Fiscalización Ambiental (Perú)
- Data: resoluciones directorales de sanción ambiental firmes. Cada fila = una resolución contra un administrado (empresa o persona natural). Incluye tipo de sanción, infracción, norma tipificadora, medida correctiva/cautelar, multa, fechas de notificación/apelación.
- Format: CSV, UTF-8, delimiter
;, CRLF line endings. Fields may contain;inside"..."quotes — requiere parser con soporte de campos quoted. - Registered: datos abiertos (PNDA,
datosabiertos.gob.pe). El dataset vive enwww.datosabiertos.gob.pe(PNDA) — no confundir condatosabiertos.oefa.gob.peque publica una versión sin RUC (RAA 2021-2025) inútil para KYB.
Cómo se procesa
- Download —
curlcon User-Agent de browser (el portal tiene CloudWAF que bloquea clientes sin UA-like). - Parse — parser CSV custom con soporte de quoted fields. Filtra por
TIPO_DOC == "R.U.C."(saltea las filas D.N.I.; podríamos agregar alt-IDdnien el futuro si vale la pena). - Normalize — 11 fields post-ID: nombre, subsector, departamento, nro_expediente, nro_rd, fecha_rd, tipo_sancion, tipo_infraccion, medida_dictada, detalle_infraccion (truncado a 500 chars), multa_expediente.
- Sort —
LC_ALL=C sort -t$'\t' -k1,1sobre TSV. - Build —
buildBinaryFiles+buildSearchIndex+buildMphfFromIdxdel engine.searchFieldIndex: 1(nombre),statusFieldIndex: 7(tipo_sancion). - Upload —
uploadWithManifestcontent-addressed.
Multi-record: un RUC puede tener N resoluciones distintas. Engine serve con lookupIds(ruc) devolviendo array.
Campos publicados
| Field | Type | Example | Notes |
|---|---|---|---|
| ruc | string(11) | 20109989992 | Primary ID. De upstream ID_DOC_ADMINISTRADO cuando TIPO_DOC == "R.U.C.". |
| nombre | string | COMPAÑIA MINERA AURIFERA SANTA ROSA S.A. | NOMBRE_ADMINISTRADO. Indexado para search. |
| subsector | string | Mediana Minería | SUBSECTOR_ECONOMICO. Puede ser - si upstream vacío. |
| departamento | string | La Libertad / - | Puede venir vacío con valor -. |
| nro_expediente | string | 1328-2020-OEFA/DFAI/PAS | Identificador único del expediente. |
| nro_rd | string | 0877-2023-OEFA/DFAI | Número de Resolución Directoral. |
| fecha_rd | string(8) | 20230518 | Fecha emisión RD en formato YYYYMMDD (según upstream). |
| tipo_sancion | string | MULTA / AMONESTACION | Status field para el search index. |
| tipo_infraccion | string | GRAVE / MUY GRAVE / LEVE | Clasificación formal. |
| medida_dictada | string | MEDIDA CORRECTIVA | |
| detalle_infraccion | string(≤500) | El administrado no habría realizado las actividades de cierre final... | Truncado a 500 chars; descripción narrativa de la infracción. |
| multa_expediente | string | 1200.50 | Monto total del expediente (UIT). |
Limitaciones conocidas
- 214 de 862 filas son D.N.I. (personas naturales con negocio). El pipe las filtra. Si en el futuro se quiere indexarlas, agregar alternate_id
dnide 8 dígitos y guardar con RUC sintético (igual patrón SUNAT padrón). - Algunos campos vienen
-en vez de vacío (departamento, subsector). Los dejamos tal cual para preservar el valor exacto upstream. detalle_infraccionlargo (narrativo, a veces 1000+ chars). Truncado a 500. Si se necesita el texto completo, consultar la resolución PDF en el portal OEFA (link vianro_rd).- Portal datosabiertos.gob.pe tiene CloudWAF — requiere User-Agent de browser para descargar. Sin UA, devuelve HTML error 418 en chino ("request looks like attack").
- Descarga lenta desde residencial LATAM — 11MB toman varios minutos. Desde runner Linux Mint probablemente OK; desde dev laptop el download puede timeoutear.
Estado de revisión y alcance
No se publica todavía una opinión jurídica específica aprobada para esta fuente. La ficha documenta procedencia y transformaciones; Latinfo limita su producto a entidades jurídicas.
Latinfo no está afiliado, certificado ni respaldado por la institución de origen. Para decisiones formales, verifica la evidencia en la fuente primaria. Consulta Privacidad y Términos.