BORME API

Notas de ingeniería · Fuentes

Cinco supervisores financieros, cuatro respuestas distintas a la misma pregunta sobre reutilización

2026-09-07 · 9 min · análisis

Por Ingeniería de BORMEAPI

Hay una pregunta que el boletín mercantil español no puede responder, y suele ser la que importa.

El BORME recoge que una sociedad se constituyó, quiénes son sus administradores, qué acordaron sus socios, cuándo se extinguió. Es un registro fiel de actos societarios. No dice absolutamente nada sobre si alguien tiene permitido hacer algo: captar depósitos, mediar en seguros, explotar una casa de apuestas, prestar servicios de telecomunicaciones o gestionar el dinero de las pensiones ajenas. Esos permisos viven en los supervisores, y cada supervisor lleva sus propios registros.

Incorporamos cinco: el regulador de valores, el supervisor de seguros y fondos de pensiones, el regulador de telecomunicaciones, el del juego y el banco central. Llevó un día, y casi nada de ese día se fue en lo que creíamos estar recogiendo.

Los identificadores eran lo de menos

Todos estos registros publican identificadores fiscales y, entre todos, movieron nuestra cobertura de NIF en torno a un cuarto de punto porcentual. Es real y no es lo importante.

Lo que aportan y el BORME estructuralmente no puede es la autorización y su pérdida. El registro de un supervisor no se limita a listar quién existe: recoge cuándo se inscribió una entidad, para qué quedó habilitada y —la parte que no publica nadie más— el día en que se le retiró.

Uno de los registros resultó ser enteramente histórico: todos sus proveedores dados de baja, ninguno activo, porque el régimen se trasladó a otra parte. No es un defecto del fichero. Es el registro completo de una categoría de negocio que existió y dejó de existir, con ambas fechas para cada firma, y no hay otro sitio donde leerlo.

Otro contiene miles de habilitaciones fechadas una a una, con la actividad exacta permitida y la norma en que se apoya. Otro lista los dominios bajo los que opera cada operador, que es justo lo que un boletín nunca podría imprimir: la marca de una empresa no es su denominación social, y ningún registro oficial las conecta.

Trampa uno: un carácter de control no distingue una empresa de una persona

El identificador fiscal de una sociedad española lleva un carácter de control calculado a partir de los dígitos anteriores. Usamos esa aritmética constantemente: es la medida de calidad más barata que tenemos, y ya hemos escrito sobre ella.

Uno de estos registros tiene unas 56.000 entradas y cerca de 40.000 son personas físicas. Un agente de seguros suele ser una persona, no una firma. Su clave de registro incorpora un número de documento y más de tres mil de esas claves superan el carácter de control de empresa.

Son aritméticamente perfectas. Tampoco son empresas. Una de ellas corresponde a una persona con nombre y apellidos cuyo código de registro satisface, por casualidad, la misma fórmula que cumpliría el identificador de una sociedad colectiva.

De haber confiado en la aritmética, habríamos dado de alta a varios miles de particulares en un conjunto de datos comercial, con su nombre y apellidos, como si fueran negocios. No habría fallado nada. El carácter de control nos habría dado la razón todo el camino.

Lo que lo evitó fue la clasificación del propio registro: cada entrada indica si el titular es persona jurídica o física. La regla quedó así: el registro decide quién es una empresa, y solo después buscamos identificador. Nunca al revés.

La misma pregunta apareció en el último registro que miramos, y allí la respuesta tuvo que ser otra. Publica nombres, números de registro y fechas, sin identificador y sin campo que distinga empresa de persona, y los nombres son claramente de ambos tipos. No había forma de quedarse con las firmas sin llevarse también a los particulares, así que dejamos el registro entero. Cinco mil filas que técnicamente podíamos leer y no teníamos manera honesta de filtrar.

Trampa dos: el valor por defecto oculta justo la mitad que buscas

El formulario de búsqueda de uno de los supervisores viene con «actualmente autorizadas» por defecto. Enviado tal cual, devuelve alrededor de mil entidades.

Sin ese filtro devuelve el triple, y dos tercios están canceladas, con algunas más en liquidación.

Aceptar el valor por defecto habría recogido solo las entidades cuya autorización sigue vigente hoy, descartando en silencio lo más interesante que esta fuente tiene que decir: que un regulador se la retiró a alguien. Un registro de quién puede es útil. Un registro de quién pudo, y hasta cuándo, es un instrumento distinto y mejor.

La forma general: un formulario público está pensado para una persona que pregunta hoy por una empresa. Sus valores por defecto codifican esa suposición. Cuando lees el registro entero, cada valor por defecto es un filtro que otro eligió con un propósito que no es el tuyo.

Trampa tres: un fichero que se lee vacío, y no lo dice

Una hoja de cálculo puede guardar un texto de dos maneras: como referencia a una tabla compartida de cadenas, o escrito en línea dentro de la propia celda. Ambas son correctas, ambas son habituales, y aquí un mismo organismo usa las dos.

Su registro más grande está en línea de principio a fin: más de treinta mil celdas de ese tipo y ninguna del otro. Nuestro lector solo conocía la tabla compartida. Abrió una hoja de 2,5 MB, no reconoció nada y devolvió cero filas sin levantar ningún error.

Durante un rato creímos que ese registro estaba vacío. Ese es el fallo que merece detenerse: un fichero que se analiza en nada se parece exactamente a un fichero que no contiene nada, y ninguna excepción los separa. Es la misma forma que el error en que la página de rechazo de un cortafuegos llega con un 200 y se anota como «no hay datos para este mes».

El arreglo es pequeño —soportar ambas codificaciones— pero lo que cuenta es el hábito. Cuando una fuente vuelve vacía, la primera pregunta no es «por qué este organismo no tiene datos», sino «soy capaz de ver datos si los hay».

Cuatro formas de permiso bajo una misma ley

La parte que esperábamos que fuera trámite resultó la más variada.

Los cinco organismos son del sector público español, y la ley española fija condiciones generales bajo las que sus documentos pueden reutilizarse, también con fines comerciales. Cabría esperar una sola respuesta. Obtuvimos cuatro.

Uno publica esas condiciones íntegras en su propia web, con sus propias palabras, autorizando expresamente el uso comercial. Ahí habla el organismo, y así lo anotamos.

Otro no publica nada parecido, ni en el registro ni en el aviso legal de su ministerio. La misma ley le obliga, de modo que la cita es deducible, pero deducible no es lo mismo que declarado. Anotamos lo que es: una inferencia razonable, no la palabra del organismo. Esos dos hechos no deberían promediarse nunca en una sola etiqueta optimista.

De otro no pudimos establecer nada. Una nota anterior en nuestros propios ficheros afirmaba una licencia concreta con cláusula de contagio; buscamos y no encontramos evidencia por ninguna parte: el catálogo nacional de datos abiertos deja el campo en blanco y la página legal del propio registro tiene veintinueve caracteres. Retirar una afirmación infundada no es lo mismo que demostrar la contraria, y la ficha lo dice así.

Y otro impone una condición viva. Autoriza la reutilización —incluida la venta— a condición de que quien la venda informe al comprador de que esa misma información está disponible gratuitamente en el origen. No una vez en una página de condiciones: cada vez que se le pone a su disposición.

Esa última cambió código, no solo documentación. Una cláusula en nuestros términos cubre «antes de pagar» y nada más. «Cada vez» significa que el aviso tiene que viajar en la propia respuesta, y así es: cualquier registro cuyo identificador venga de ese supervisor lleva la frase, tanto en la respuesta de la API como en la interfaz para asistentes, y ningún registro que no haya tomado nada de él la lleva.

Costó una tarde. Es también la formulación más clara de lo que vende de verdad un negocio de datos: no el acceso a hechos públicos, que siguen siendo gratuitos en su origen, sino su recopilación, normalización, resolución de entidades y entrega.

Lo que le diríamos a quien haga esto

Deja que la fuente clasifique sus propias filas. Cualquier inferencia que saques de la forma de un identificador —forma jurídica, tipo de entidad, si es siquiera una empresa— es una suposición disfrazada de aritmética. Si el organismo etiqueta cada fila, usa la etiqueta. Si no lo hace y la distinción importa, eso es motivo para dejar los datos en paz, no un acertijo que resolver con ingenio.

Lee los valores por defecto como la suposición de alguien. Un formulario pensado para una consulta cada vez filtrará por vigencia. Tú normalmente quieres el histórico.

Trata un resultado vacío como una afirmación sobre tu lector, no sobre el mundo, hasta que hayas demostrado que ese lector ve algo que sin duda está ahí.

Lee las condiciones por organismo, no por país. Cinco entidades bajo una misma norma produjeron cuatro formas distintas de invocarla, y una impuso una obligación que hubo que construir en lugar de escribir.

Documentación de la API Precios y planes

build 2026.09.07·8a3fe67