Cómo es el número de una empresa en cada país, cómo se calcula su dígito de control, cómo normalizarlo, un ejemplo resuelto y el parámetro de la API que lo recibe. Cada fila se genera a partir de los validadores del validador gratuito de identificadores, así que un valor de esta página es un valor que el validador acepta.
Las mismas filas que esta página, en inglés. Se puede citar libremente con atribución a Prometiam y un enlace a esta página.
Dígito de control
Notación de la forma: N dígito · L letra · X dígito o letra · C dígito o carácter de control · {n} se repite n veces
Mostrando 39 de 39 identificadores
País y registro
Identificador y forma
Dígito de control
Ejemplo
Parámetro de la API
ESEspañaRegistro Mercantil (BORME)
NIF / CIFL N{7} C
Obligatorio
A28015865
company_numbercountry=ES
Cómo se comprueba, regex, código y enlaces
Control
Las posiciones impares de los 7 dígitos se duplican (un producto mayor que 9 pierde 9) y el resto se suma; control = (10 - suma mod 10) mod 10, escrito como ese dígito o como su letra (J A B C D E F G H I).
Forma normalizada
A28015865
También se acepta como entrada
A-28015865
Un error de un carácter
A28015866 se rechaza
Regex (forma normalizada)
^[ABCDEFGHJNPQRSUVW][0-9]{7}[0-9A-J]$
API
GET /companies/search?country=ES&company_number=A28015865 · lo recibe también nif=
Número de IVA
ES + NIF — construido a partir del identificador por regla; el alta no está confirmada
Conviene saber
La primera letra es la forma jurídica (A sociedad anónima, B sociedad limitada). Un DNI o NIE personal tiene otro control (una letra mod 23) y no es un identificador de empresa: la API lo rechaza.
const re = /^[ABCDEFGHJNPQRSUVW][0-9]{7}[0-9A-J]$/
re.test('A28015865') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
FR + clave de 2 dígitos + SIREN — construido a partir del identificador por regla; el alta no está confirmada
Conviene saber
El SIREN identifica a la unidad jurídica; el SIRET añade un número de establecimiento de 5 dígitos. Las empresas no difusibles solo se encuentran por SIREN o SIRET, nunca por nombre.
const re = /^[0-9]{9}$/
re.test('552032534') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
Sin dígito de control: 8 dígitos, o 2 letras y 6 dígitos. La forma es la única comprobación.
Forma normalizada
00445790
También se acepta como entrada
SC095237
Regex (forma normalizada)
^([0-9]{8}|[A-Z]{2}[0-9]{6})$
API
GET /companies/search?country=GB&company_number=00445790
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El prefijo indica el tipo: SC Escocia, NI Irlanda del Norte, OC, SO y NC sociedades de responsabilidad limitada (LLP), FC sociedades extranjeras. Un número con buena forma no prueba que la empresa exista.
const re = /^([0-9]{8}|[A-Z]{2}[0-9]{6})$/
re.test('00445790') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
Pesos 6,5,7,2,3,4,5,6,7 sobre los 9 primeros dígitos; la suma mod 11 es el dígito de control. Un resto de 10 no se emite nunca.
Forma normalizada
7740001454
También se acepta como entrada
774-000-14-54
Un error de un carácter
7740001455 se rechaza
Regex (forma normalizada)
^[0-9]{10}$
API
GET /companies/search?country=PL&nip=7740001454
Número de IVA
PL + NIP — construido a partir del identificador por regla; el alta no está confirmada
Conviene saber
El NIP es el número fiscal. El número de registro KRS (10 dígitos con ceros a la izquierda, se pasa en company_number) no tiene dígito de control y aquí no se valida.
const re = /^[0-9]{10}$/
re.test('7740001454') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
REGON-9: pesos 8,9,2,3,4,5,6,7, suma mod 11 (10 se lee 0). REGON-14 repite esto en sus 9 primeros dígitos y añade un segundo control sobre los 13 (pesos 2,4,8,5,0,9,7,3,6,1,2,4,8).
Forma normalizada
610188201
Un error de un carácter
610188202 se rechaza
Regex (forma normalizada)
^([0-9]{9}|[0-9]{14})$
API
GET /companies/search?country=PL®on=610188201
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El REGON-9 identifica a la entidad, el REGON-14 una unidad local de ella.
const re = /^([0-9]{9}|[0-9]{14})$/
re.test('610188201') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
Pesos 7,9,10,5,8,4,2 sobre los 7 dígitos; control = 11 menos la suma mod 11 (0 si el resto es 0). Un resto de 1 no tiene dígito de control, así que ese número no se emite nunca.
Forma normalizada
0112038-9
También se acepta como entrada
01120389112038-9
Un error de un carácter
0112038-8 se rechaza
Regex (forma normalizada)
^[0-9]{7}-[0-9]$
API
GET /companies/search?country=FI&company_number=0112038-9
Número de IVA
FI + los 8 dígitos sin el guion — publicado o confirmado por el registro
Conviene saber
Un cuerpo de 6 dígitos (un número del registro mercantil anterior a 2001) se lee con su cero inicial restituido.
const re = /^[0-9]{7}-[0-9]$/
re.test('0112038-9') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
ISO 7064 MOD 11,10 sobre los 8 primeros dígitos. Orientativo: un desajuste es un aviso, no un rechazo.
Forma normalizada
080000604
También se acepta como entrada
80000604
Un error de un carácter
080000605 se acepta con un aviso
Regex (forma normalizada)
^[0-9]{9}$
API
GET /companies/search?country=HR&company_number=080000604
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El propio registro mercantil documenta algunos números antiguos con el dígito de control mal calculado. Un cero inicial perdido se restituye. No es el OIB.
const re = /^[0-9]{9}$/
re.test('080000604') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
10 dígitos que empiezan por 0 o 1; los dos últimos son 97 menos los ocho primeros dígitos mod 97.
Forma normalizada
0417.497.106
También se acepta como entrada
0417497106417497106
Un error de un carácter
0417.497.107 se rechaza
Regex (forma normalizada)
^[01][0-9]{3}\.[0-9]{3}\.[0-9]{3}$
API
GET /companies/search?country=BE&company_number=0417.497.106
Número de IVA
BE + los 10 dígitos — publicado o confirmado por el registro
Conviene saber
Se escribe 0NNN.NNN.NNN; los puntos y espacios son opcionales y un cero inicial perdido se restituye. Las empresas de personas físicas nunca se sirven.
const re = /^[01][0-9]{3}\.[0-9]{3}\.[0-9]{3}$/
re.test('0417.497.106') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
Pesos 8,7,6,5,4,3,2 sobre los 7 primeros dígitos; control = 11 menos la suma mod 11 (10 se lee 0, 11 se lee 1). Orientativo: un desajuste es un aviso.
Forma normalizada
35763469
También se acepta como entrada
151653
Un error de un carácter
35763460 se acepta con un aviso
Regex (forma normalizada)
^[0-9]{8}$
API
GET /companies/search?country=SK&company_number=35763469
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Cerca del uno por ciento de los IČO de formas no mercantiles no pasan el control. Los números de seis y siete dígitos se leen con los ceros iniciales restituidos. Solo personas jurídicas mercantiles.
const re = /^[0-9]{8}$/
re.test('35763469') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
CHE más 9 dígitos. Pesos 5,4,3,2,7,6,5,4 sobre los 8 primeros dígitos; control = 11 menos la suma mod 11 (11 se lee 0). Un resultado de 10 significa que no hay UID válido.
Forma normalizada
CHE103867266
También se acepta como entrada
CHE-103.867.266 MWSTCHE103867266
Un error de un carácter
CHE-103.867.267 se rechaza
Regex (forma normalizada)
^CHE[0-9]{9}$
API
GET /companies/search?country=CH&company_number=CHE-103.867.266
Número de IVA
el UID + MWST, TVA o IVA
Conviene saber
Se aceptan puntos, guiones y un sufijo MWST, TVA o IVA. Los empresarios individuales nunca se sirven.
const re = /^CHE[0-9]{9}$/
re.test('CHE103867266') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
De 2 a 10 dígitos sin cero inicial. El cuerpo se completa a 9 dígitos y se pondera 7,5,3,2,1,7,5,3,2; control = suma x 10 mod 11 (10 se lee 0). Orientativo: un desajuste es un aviso.
Forma normalizada
5022670
También se acepta como entrada
RO5022670
Un error de un carácter
5022671 se acepta con un aviso
Regex (forma normalizada)
^[1-9][0-9]{1,9}$
API
GET /companies/search?country=RO&company_number=5022670
Número de IVA
RO + CUI — construido a partir del identificador por regla; el alta no está confirmada
Conviene saber
Algunos CUI genuinos no pasan el control. Se acepta un prefijo RO, CUI o CIF; un número de 13 dígitos es un código personal y se rechaza.
const re = /^[1-9][0-9]{1,9}$/
re.test('5022670') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
Estado + número de registro, CIK-, LEI-SS-X{1,40} | CIK-N{10} | LEI-X{20}
Ninguno
NY-4424185
company_numbercountry=US
Cómo se comprueba, regex, código y enlaces
Control
Sin dígito de control en ningún caso: el código de estado y el número de registro, CIK- y hasta 10 dígitos (un declarante de la SEC) o LEI- y 20 caracteres. La forma es la única comprobación.
GET /companies/search?country=US&company_number=NY-4424185
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Los números de registro se repiten entre estados, por eso el prefijo del estado forma parte del identificador. La API sirve un conjunto definido de registros estatales más declarantes de la SEC y titulares de LEI, no todas las empresas de EE. UU.
const re = /^([A-Z]{2}-[0-9A-Za-z][0-9A-Za-z./-]{0,39}|CIK-[0-9]{10}|LEI-[0-9A-Z]{20})$/
re.test('NY-4424185') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
De 2 a 8 dígitos, escrito NNNNNN-N. Pesos 7,6,5,4,3,2 sobre los seis dígitos anteriores al último; control = 11 menos la suma mod 11 (10 se lee 0, 11 se lee 1). Deducido del registro, no documentado, por eso orientativo.
Forma normalizada
426160-7
También se acepta como entrada
4261607#4261607
Un error de un carácter
426160-8 se acepta con un aviso
Regex (forma normalizada)
^[0-9]{1,7}-[0-9]$
API
GET /companies/search?country=CA&company_number=426160-7
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Nueve dígitos es un número de empresa (Business Number, se busca con business_number), no un número de sociedad. Solo sociedades federales; las provinciales nunca se sirven.
const re = /^[0-9]{1,7}-[0-9]$/
re.test('426160-7') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
13 dígitos; el primero es el dígito de control de la base de 12 dígitos: 9 menos (la suma de los dígitos de la base, ponderados 1 y 2 alternativamente desde la derecha, mod 9).
Forma normalizada
1180301018771
También se acepta como entrada
T1180301018771
Un error de un carácter
1180301018772 se rechaza
Regex (forma normalizada)
^[1-9][0-9]{12}$
API
GET /companies/search?country=JP&company_number=1180301018771
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Se leen una T delante y los dígitos de ancho completo; la base de 12 dígitos sola se rechaza. Solo empresas; los organismos públicos y las asociaciones nunca se sirven.
const re = /^[1-9][0-9]{12}$/
re.test('1180301018771') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
9 dígitos que empiezan por 51, 52 o 56. La variante Luhn del documento de identidad israelí: pesos 1,2 alternados, sumas de dígitos, total divisible por 10. Orientativo: un desajuste es un aviso.
Forma normalizada
520013954
También se acepta como entrada
ח.פ. 520013954
Un error de un carácter
520013955 se acepta con un aviso
Regex (forma normalizada)
^5[126][0-9]{7}$
API
GET /companies/search?country=IL&company_number=520013954
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Un documento de identidad personal pasa la misma aritmética y se rechaza por el prefijo. Las sociedades de personas, cooperativas y asociaciones son otros registros y nunca se sirven.
const re = /^5[126][0-9]{7}$/
re.test('520013954') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
14 caracteres: 8 de raíz, 4 de orden y 2 dígitos de control. Primero: pesos 5,4,3,2,9,8,7,6,5,4,3,2 sobre 12 caracteres; segundo: pesos 6,5,4,3,2,9,8,7,6,5,4,3,2 sobre 13; cada uno es 0 si la suma mod 11 es menor que 2, y si no, 11 menos ella.
Forma normalizada
33000167000101
También se acepta como entrada
33000167000101
Un error de un carácter
33.000.167/0001-02 se rechaza
Regex (forma normalizada)
^[0-9A-Z]{12}[0-9]{2}$
API
GET /companies/search?country=BR&company_number=33.000.167/0001-01
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Desde julio de 2026 la raíz y el orden pueden llevar letras mayúsculas; los dígitos de control siguen siendo dígitos. Un CPF de 11 dígitos (una persona) se rechaza. Un registro por raíz de CNPJ: la raíz de 8 dígitos encuentra la casa matriz.
const re = /^[0-9A-Z]{12}[0-9]{2}$/
re.test('33000167000101') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
ARArgentinaARCA (CUIT), Registro Nacional de Sociedades
CUITN{2}-N{8}-C
Obligatorio
30-70308853-4
company_numbercountry=AR
Cómo se comprueba, regex, código y enlaces
Control
11 dígitos, escritos NN-NNNNNNNN-N. Pesos 5,4,3,2,7,6,5,4,3,2 sobre los diez primeros dígitos; control = 11 menos la suma mod 11, donde 11 se lee como 0 y 10 significa que el cuerpo no da un número válido (la sociedad lleva entonces el prefijo 33 en lugar de 30).
Forma normalizada
30-70308853-4
También se acepta como entrada
30703088534CUIT 30-70308853-4
Un error de un carácter
30-70308853-5 se rechaza
Regex (forma normalizada)
^(30|33|34)-[0-9]{8}-[0-9]$
API
GET /companies/search?country=AR&company_number=30-70308853-4
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El CUIT es el número fiscal que la ARCA asigna a una persona jurídica; el Registro Nacional de Sociedades se construye sobre él. Una sociedad lleva el prefijo 30 o 33 y una persona jurídica extranjera el 34; los prefijos 20, 23, 24 y 27 son el CUIT y el CUIL de personas físicas y se rechazan. Se descarta una palabra CUIT, CUIL o CDI delante. Solo sociedades comerciales: nunca se sirven asociaciones, fundaciones, cooperativas ni sociedades de hecho.
const re = /^(30|33|34)-[0-9]{8}-[0-9]$/
re.test('30-70308853-4') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
UAUcraniaUnified State Register (EDR), Ministry of Justice of Ukraine
EDRPOU codeN{8}
Orientativo
21673832
company_numbercountry=UA
Cómo se comprueba, regex, código y enlaces
Control
8 dígitos, con los ceros iniciales. El último dígito es de control (módulo 11), pero aquí es solo orientativo porque unos pocos códigos auténticos del registro no lo cumplen.
Forma normalizada
21673832
También se acepta como entrada
UA21673832
Un error de un carácter
21673833 se acepta con un aviso
Regex (forma normalizada)
^[0-9]{8}$
API
GET /companies/search?country=UA&company_number=21673832
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El código EDRPOU identifica a una persona jurídica en el Registro Estatal Unificado del Ministerio de Justicia de Ucrania. Un número más corto se lee con sus ceros restituidos y se admiten un prefijo UA, espacios y guiones. Un número de 10 dígitos es el número fiscal de una persona y se rechaza. Solo personas jurídicas mercantiles; los empresarios individuales (FOP) nunca se sirven.
const re = /^[0-9]{8}$/
re.test('21673832') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
8 dígitos, con el cero inicial; un número más corto se lee con sus ceros iniciales restituidos. Pesos 9,4,5,6,7,8,9 sobre los 7 primeros dígitos, s = suma mod 11; el dígito de control es s, y 10 se lee como 0. La regla se ajusta a los números del propio registro, no a un estándar publicado, y un desajuste se rechaza.
Forma normalizada
17204106
También se acepta como entrada
17-204-106
Un error de un carácter
17204107 se rechaza
Regex (forma normalizada)
^[0-9]{8}$
API
GET /companies/search?country=RS&company_number=17204106
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Un número de 13 dígitos es un número personal (JMBG) y se rechaza. El número fiscal (PIB) es otro número que los datos abiertos del registro no incluyen y que no se puede derivar del matični broj. Solo sociedades (d.o.o., a.d., o.d., k.d.); los empresarios, las cooperativas, las empresas públicas y las asociaciones nunca se sirven.
const re = /^[0-9]{8}$/
re.test('17204106') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
ECEcuadorServicio de Rentas Internas (SRI), Superintendencia de Compañías (SCVS)
RUCN{9} C N{3}
Orientativo
0990023549001
company_numbercountry=EC
Cómo se comprueba, regex, código y enlaces
Control
13 dígitos: provincia (01 a 24, 30 en el exterior), un tercer dígito 9 (sociedad privada) o 6 (pública), un serial, el dígito de control y 001, la propia sociedad (002 y siguientes son sus establecimientos). Módulo 11: pesos 4,3,2,7,6,5,4,3,2 sobre los nueve primeros dígitos, control = 11 menos la suma mod 11 (11 se lee 0), el décimo dígito; un RUC público (tercer dígito 6) usa los pesos 3,2,7,6,5,4,3,2 sobre ocho dígitos y el noveno dígito. Orientativo: un desajuste es un aviso, no un rechazo.
Forma normalizada
0990023549001
También se acepta como entrada
990023549001
Un error de un carácter
0990023548001 se acepta con un aviso
Regex (forma normalizada)
^(0[1-9]|1[0-9]|2[0-4]|30)[69][0-9]{7}001$
API
GET /companies/search?country=EC&company_number=0990023549001
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Un tercer dígito de 0 a 5 es el RUC de una persona natural (la cédula más 001) y se rechaza, igual que un RUC que termina en 002 o más, que es un establecimiento. Un valor de 12 dígitos se lee con el cero de la provincia restituido (una hoja de cálculo lo pierde). El dígito de control es solo una guía: los números de las Sociedades por Acciones Simplificadas son seriales simples que a menudo no lo cumplen. El RUC es el número tributario: no hay un número de IVA aparte.
const re = /^(0[1-9]|1[0-9]|2[0-4]|30)[69][0-9]{7}001$/
re.test('0990023549001') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
CLChileRegistro de Empresas y Sociedades (RES), Ministerio de Economía, Fomento y Turismo; RUT of the Servicio de Impuestos Internos (SII)
RUTN{8}-C
Obligatorio
76286049-K
company_numbercountry=CL
Cómo se comprueba, regex, código y enlaces
Control
Ocho dígitos desde 50.000.000 (el bloque de las personas jurídicas), un guion y un dígito de control (0 a 9 o K), escritos 76.286.049-K. Pesos 2,3,4,5,6,7 que se repiten desde la derecha sobre los ocho dígitos; control = 11 menos la suma mod 11, donde 11 se lee 0 y 10 se lee K. El control es estricto.
Forma normalizada
76286049-K
También se acepta como entrada
76.286.049-K76286049KRUT 76286049-k
Un error de un carácter
76286049-0 se rechaza
Regex (forma normalizada)
^[5-9][0-9]{7}-[0-9K]$
API
GET /companies/search?country=CL&company_number=76286049-K
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El RUT es el número tributario que el Servicio de Impuestos Internos (SII) asigna a una persona jurídica chilena, y no hay un número de IVA aparte. El registro sirve solo las empresas inscritas bajo el régimen simplificado de la Ley 20.659 («Empresa en un Día») desde 2013, así que un RUT válido de una empresa más antigua, o constituida ante notario, no devuelve nada. Se aceptan puntos, la palabra RUT y una k minúscula. Un RUT inferior a 50.000.000 es de una persona natural y se rechaza.
const re = /^[5-9][0-9]{7}-[0-9K]$/
re.test('76286049-K') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
9 dígitos que empiezan por 8 o 9 y el dígito de verificación (DV) tras un guion. Pesos 3,7,13,17,19,23,29,37,41 desde la derecha; DV = el resto de la suma mod 11 si es menor que 2, y si no, 11 menos él.
Forma normalizada
900843898-9
También se acepta como entrada
900843898NIT 900843898-9
Un error de un carácter
900843898-8 se rechaza
Regex (forma normalizada)
^[89][0-9]{8}-[0-9]$
API
GET /companies/search?country=CO&company_number=900843898-9
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El DV se calcula si falta y debe coincidir si se escribe. Un número que empieza por 1 a 7 es una cédula personal y se rechaza.
const re = /^[89][0-9]{8}-[0-9]$/
re.test('900843898-9') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
Sociedad local: pesos 10,8,6,4,9,7,5,3,1 sobre los 9 dígitos, la suma mod 11 elige la letra de control de Z K C M D N E R G W H. Las LLP y sucursales extranjeras (T, S o R, año, dos letras, serie) usan los pesos 4,3,5,3,10,2,2,5,7 y las letras A B C D E F G H J K L.
Forma normalizada
196800306E
También se acepta como entrada
T08LL1267L
Un error de un carácter
196800306F se rechaza
Regex (forma normalizada)
^([0-9]{9}|[TSR][0-9]{2}[A-Z]{2}[0-9]{4})[A-Z]$
API
GET /companies/search?country=SG&company_number=196800306E
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Un UEN de empresa de 8 dígitos (empresario individual, sociedad de personas) se rechaza. Solo sociedades locales, LLP y sucursales de sociedades extranjeras registradas.
const re = /^([0-9]{9}|[TSR][0-9]{2}[A-Z]{2}[0-9]{4})[A-Z]$/
re.test('196800306E') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
TWTaiwánGCIS (Ministerio de Asuntos Económicos), Ministerio de Finanzas
Número de empresa unificado (統一編號)N{7} C
Orientativo
22099131
company_numbercountry=TW
Cómo se comprueba, regex, código y enlaces
Control
8 dígitos. Pesos 1,2,1,2,1,2,4,1, cada producto tomado como cifra de decenas más cifra de unidades; el total debería ser divisible por 5 (por 10 antes del cambio de 2023-24; un séptimo dígito 7 puede contar como 0 o 1). Orientativo: un desajuste es un aviso.
Forma normalizada
22099131
También se acepta como entrada
TW22099131
Un error de un carácter
22099132 se acepta con un aviso
Regex (forma normalizada)
^[0-9]{8}$
API
GET /companies/search?country=TW&company_number=22099131
Número de IVA
el UBN de 8 dígitos, si la empresa figura en el fichero tributario del Ministerio de Finanzas — publicado o confirmado por el registro
Conviene saber
Algunos números antiguos disueltos no pasan ninguna de las dos reglas. Siete dígitos se completan con un cero. Solo sociedades y sucursales taiwanesas de sociedades extranjeras; los nombres están en chino.
const re = /^[0-9]{8}$/
re.test('22099131') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
CZRepública ChecaVeřejný rejstřík (Ministerio de Justicia), RES
IČON{7} C
Orientativo
45274649
company_numbercountry=CZ
Cómo se comprueba, regex, código y enlaces
Control
8 dígitos, los números más cortos se leen con ceros iniciales. Pesos 8,7,6,5,4,3,2 sobre los 7 primeros dígitos, r = suma mod 11; control = 1 si r es 0, 0 si r es 1, y si no, 11 menos r. Orientativo: un desajuste es un aviso.
Forma normalizada
45274649
También se acepta como entrada
CZ45274649
Un error de un carácter
45274640 se acepta con un aviso
Regex (forma normalizada)
^[0-9]{8}$
API
GET /companies/search?country=CZ&company_number=45274649
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Algunas empresas activas no pasan el control. Un número de 9 o 10 dígitos es un número de nacimiento (una persona física) y se rechaza. Los empresarios individuales nunca se sirven.
const re = /^[0-9]{8}$/
re.test('45274649') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
ISO 17442, ISO 7064 MOD 97-10: 18 letras o dígitos y 2 dígitos de control; cada letra pasa a valer de 10 a 35 y la cadena entera, leída como un entero, deja 1 módulo 97.
Forma normalizada
W38RGI023J3WT1HWRP32
También se acepta como entrada
w38r-gi02-3j3w-t1hw-rp32
Un error de un carácter
W38RGI023J3WT1HWRP33 se rechaza
Regex (forma normalizada)
^[0-9A-Z]{18}[0-9]{2}$
API
GET /companies/search?country=DE&company_number=W38RGI023J3WT1HWRP32 · lo recibe también lei=
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
Los registros alemanes son entidades con LEI (GLEIF) y empresas del registro del mercado de la energía, no un extracto del Handelsregister. Una empresa del registro del mercado de la energía se numera por su inscripción mercantil, por ejemplo HRB12653/FRANKFURT-AM-MAIN (se busca con register_number), declarada por los operadores y no comprobada con el registro.
const re = /^[0-9A-Z]{18}[0-9]{2}$/
re.test('W38RGI023J3WT1HWRP32') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
NLPaíses BajosGLEIF (LEI-registered entities); the KVK number of the Kamer van Koophandel
Número KVKN{8}
Ninguno
17085815
company_numbercountry=NL
Cómo se comprueba, regex, código y enlaces
Control
No se publica dígito de control: exactamente 8 dígitos, un cero inicial forma parte del número (04040577) y 00000000 no es un número. La forma es la única comprobación.
Forma normalizada
17085815
También se acepta como entrada
04040577
Regex (forma normalizada)
^[0-9]{8}$
API
GET /companies/search?country=NL&company_number=17085815
Número de IVA
Los datos del registro no contienen un número de IVA para este identificador.
Conviene saber
El número KVK es el de la Cámara de Comercio neerlandesa. Prometiam sirve solo las entidades jurídicas neerlandesas que tienen un LEI y cuyo número KVK registra GLEIF (BV, NV, SE, cooperativas, OWM, CV y VOF), no todas las empresas neerlandesas ni un extracto del registro mercantil neerlandés: un número KVK con buena forma de un empresario individual, una fundación o una asociación no devuelve nada. Un número de 9 dígitos es un RSIN y se rechaza. El número de IVA neerlandés (btw-nummer) es otro número y no se deduce del KVK.
const re = /^[0-9]{8}$/
re.test('17085815') // true
La regex comprueba la forma del identificador normalizado. No calcula el dígito de control: para eso pase el identificador por el validador.
Una forma y un dígito de control válidos demuestran que el número está bien formado, no que una empresa lo tenga. Eso solo lo responde una consulta al registro.
Los identificadores de Reino Unido, Irlanda, Chipre y Estados Unidos no tienen dígito de control: en esos casos la forma es la única comprobación.
En las filas marcadas como orientativas existen números genuinos que no pasan el control, así que un desajuste es un aviso y el número se acepta.
Son los formatos que acepta la API de Prometiam. Qué entidades sirve en cada país tiene sus propios límites (en muchos registros se excluyen los empresarios individuales y las personas físicas); constan en la guía de cada país.
Los números de IVA son aparte: cuando se puede construir uno a partir del identificador la fila dice cómo y si el alta está confirmada. Compruebe un número de IVA en el verificador de números de IVA.
En su propio código
Cada fila abre una regex que puede pegar en JavaScript, Python o PostgreSQL. Los validadores de muchos de estos países (no de todos) se publican también como el paquete company-id-validators, en PyPI y en npm.
¿Qué identificadores de empresa tienen dígito de control? La mayoría: la columna Dígito de control indica Obligatorio, Orientativo o Ninguno en cada fila. Reino Unido, Irlanda, Chipre y Estados Unidos no publican ninguno, así que solo se puede comprobar la forma. Las filas orientativas tienen un control que un número genuino puede no cumplir, por lo que un desajuste es solo un aviso.
¿Un dígito de control válido significa que la empresa existe? No. Demuestra que el número es coherente consigo mismo, no que se haya emitido nunca. Para saber si la empresa existe hay que consultarla en el registro o por una API.
¿Cómo normalizo un identificador antes de guardarlo? Quite espacios, puntos, guiones y barras, ponga las letras en mayúsculas y restituya los ceros iniciales perdidos donde el registro los usa. La columna Forma normalizada muestra lo que devuelve cada validador; la API acepta también las formas escritas.
¿Puedo usar la tabla en mi proyecto? Sí. Las descargas JSON y CSV llevan las mismas filas. Se pueden citar libremente con atribución a Prometiam y un enlace a esta página.
Valide un número en su navegador o consulte la empresa.