Saltar al contenido principal

Descarga lo que necesites, gratis

Licencia CC BY 4.0 — uso libre incluso comercial citando la fuente. Sin formularios, sin email, sin paywall. Solo te pedimos que, si los datos te aportan valor, apoyes el proyecto para mantenerlo vivo.

Datos abiertos · OpenMercantil

Descarga los datos del BORME

Dataset completo de actos registrales mercantiles de España, estructurado por OpenMercantil a partir del Boletín Oficial del Registro Mercantil.

2.781.096 empresas
5.797.624 actos registrales
~969.552 personas
Último BORME: 26/05/2026
Dataset CSV: 210 MB
Gratis · Sin registro

Muestras de datos

Muestra CSV · 100 empresas

100 empresas seleccionadas aleatoriamente del dataset completo. Mismas columnas que el CSV histórico completo. Ideal para probar tu pipeline de datos.

Gratis CSV · UTF-8 ~25 KB
Descargar muestra CSV

Muestra JSON · 50 empresas recientes

Las 50 empresas más recientes del BORME en formato JSON con todos los campos disponibles: nombre, CIF, provincia, fecha de constitución y actos.

Gratis JSON array ~15 KB
Descargar muestra JSON
Suscripción Pro

Dataset completo y exports masivos

Ver planes →

CSV completo · BORME histórico

Todos los actos registrales desde 2009. Un archivo plano listo para Excel, Python/Pandas, R o cualquier herramienta de análisis.

210 MB 5.797.624 filas 12 columnas UTF-8, separador ","
Próximamente

Estamos generando el dump completo. Si lo necesitas urgente, escríbenos a [email protected].

Top empresas · JSON índice

Índice ligero de las empresas más activas con su nombre, CIF, provincia y número de actos. Ideal para cruces rápidos.

2.7 MB JSON array Sin datos personales
Próximamente

Exports vía API · Próximamente

Estamos terminando los endpoints /api/v1/export/events?year=… y /api/v1/daily/YYYY-MM-DD para exportación CSV streaming y resumen JSON por fecha. Mientras tanto, puedes usar la API de búsqueda y ficha de empresa o solicitar un dump puntual a [email protected].

Exportación individual · empresa o persona

Descarga el historial completo de actos de una empresa o persona concreta en formato CSV. Disponible desde la propia ficha o usando los endpoints directos:

Por empresa

/export?format=csv&empresa=slug-empresa

Ejemplo: /export?format=csv&empresa=mercadona-sa

Por persona

/export?format=csv&persona=slug-persona

Ejemplo: /export?format=csv&persona=juan-roig-alfonso

Diccionario de datos

Columnas del CSV completo
Columna Tipo Descripción Ejemplo
Date fecha (ISO) Fecha de publicación en el BORME 2024-03-15
Section texto Sección del BORME (BORME-A o BORME-B) BORME-A
Province texto Provincia del registro mercantil Madrid
Company Name texto Denominación social de la empresa MERCADONA SA
CIF texto Código de Identificación Fiscal A46103834
Website URL / vacío Sitio web de la empresa si está disponible mercadona.es
Capital número / vacío Capital social en euros si consta en el acto 1000000
Address texto / vacío Domicilio social registrado CALLE MAYOR 1, VALENCIA
Workers entero / vacío Número de trabajadores si consta en el acto 100
Act Type texto Tipo de acto registral normalizado Nombramiento
Details texto Descripción textual del acto extraída del BORME Adm. Único: JUAN PÉREZ GARCÍA
ID texto Identificador único del acto (provincia-secuencia) MAD-2024-00123456
Campos del informe JSON de empresa
Campo Tipo Descripción
slug texto Identificador URL de la empresa
name texto Denominación social completa
cif texto CIF de la empresa
province texto Provincia del registro mercantil
address texto Domicilio social si consta
capital número Capital social más reciente si consta
website URL Web de la empresa si está disponible
workers entero Plantilla más reciente si consta
first_date fecha ISO Fecha del primer acto registrado
last_date fecha ISO Fecha del acto más reciente
total_events entero Total de actos registrales indexados
act_types objeto Conteo de actos por tipo
persons array Personas vinculadas extraídas de los actos
Campos del informe JSON de persona
Campo Tipo Descripción
slug texto Identificador URL de la persona
name texto Nombre completo normalizado
first_date fecha Fecha del primer acto vinculado
last_date fecha Fecha del acto más reciente
total_events entero Total de actos en los que aparece
companies array Empresas vinculadas con slug, nombre y rol
roles objeto Conteo de roles ejercidos (Administrador, Apoderado…)
provinces array Provincias donde ha tenido actividad registral

Cómo usar el dataset

Ejemplos listos para copiar — el CSV completo se descarga directo en gzip y se puede leer en streaming sin descomprimir.

# Lee directamente el CSV gzipeado sin descomprimir (streaming)
import pandas as pd

df = pd.read_csv(
    "https://openmercantil.es/descargas/borme_completo.csv.gz",
    compression="gzip",
    low_memory=False
)
print(df.shape)                            # (~5.8M, ~14)
print(df["province"].value_counts().head())

# Filtrar empresas IT (CNAE 62) en Madrid
it_madrid = df[(df["cnae_code"] == "62") & (df["province"] == "MADRID")]
it_madrid.to_csv("it_madrid.csv", index=False)
# Buscar empresa via API pública (60 req/min/IP gratis)
curl -s "https://openmercantil.es/api/v1/search?q=inditex&limit=3" | jq

# Ficha completa de una empresa
curl -s "https://openmercantil.es/api/v1/company/inditex-sa" | jq

# Empresas de un sector CNAE
curl -s "https://openmercantil.es/api/v1/sector/62/companies?limit=20&sort=acts" | jq

# Descarga directa del CSV completo
curl -O "https://openmercantil.es/descargas/borme_completo.csv.gz"
// Power Query M (Excel / Power BI)
let
    Source    = Web.Contents("https://openmercantil.es/descargas/borme_completo.csv.gz"),
    UnGzipped = Binary.Decompress(Source, Compression.GZip),
    Csv       = Csv.Document(UnGzipped, [Delimiter=",", Encoding=65001]),
    Promoted  = Table.PromoteHeaders(Csv, [PromoteAllScalars=true])
in
    Promoted

// Datos > Obtener datos > Otros > Consulta en blanco > Editor avanzado
// Pega este código y carga. Excel maneja 5,8M filas en Power Pivot.
# R con readr y dplyr
library(readr)
library(dplyr)

df <- read_csv("https://openmercantil.es/descargas/borme_completo.csv.gz")

# Top 20 sectores por número de empresas
df %>%
  filter(!is.na(cnae_code)) %>%
  count(cnae_code, sort = TRUE) %>%
  head(20)
import fetch from "node-fetch";
import { createGunzip } from "zlib";
import { parse } from "csv-parse";

// Streaming del CSV gzipeado — bajo memoria
const r = await fetch("https://openmercantil.es/descargas/borme_completo.csv.gz");
const stream = r.body.pipe(createGunzip()).pipe(parse({ columns: true }));

let n = 0;
for await (const row of stream) {
    if (row.cnae_section === "J") n++;     // TIC y comunicaciones
}
console.log(`${n} empresas TIC`);

¿Cuándo elegir OpenMercantil?

Existen distintas soluciones en el mercado para trabajar con información empresarial. Cada una tiene su foco. OpenMercantil es una elección adecuada cuando lo que buscas es:

Si lo que necesitas son informes comerciales detallados, scoring financiero, datos de crédito o servicios de prospección, existen plataformas especializadas con un foco distinto que ofrecen soluciones específicas para esos casos. OpenMercantil no pretende reemplazarlas — su valor está en otro sitio.

Licencia y condiciones de uso

Creative Commons Attribution 4.0 (CC BY 4.0). Puedes usar, copiar, redistribuir y transformar los datos para cualquier fin, incluido el comercial, siempre que cites las fuentes:

  • OpenMercantil como estructurador y procesador de los datos
  • BOE / Registro Mercantil como fuente oficial de los actos registrales

RGPD y datos personales

Los nombres de personas que aparecen en los actos son datos públicos del Registro Mercantil, publicados oficialmente en el BORME. Su tratamiento en OpenMercantil se ampara en el interés público de la transparencia mercantil (art. 6.1.e RGPD). No se procesan ni publican datos de contacto, DNI, domicilios personales ni información más allá de lo registrado oficialmente.

¿Necesitas acceso programático?

Para integración en aplicaciones, consulta la documentación completa de la API REST de OpenMercantil.

Documentación de la API