Validador de ISIN
Valida ISINs (International Securities Identification Number) de 12 caracteres com dígito verificador (Luhn estendido).
ISIN: o identificador global de valores mobiliarios pela ISO 6166
O ISIN (International Securities Identification Number) e o código de 12 caracteres definido pela norma ISO 6166 para identificar de forma única qualquer instrumento financeiro negociavel entre fronteiras: ações, debentures, titulos públicos, ETFs, BDRs, opções, futuros e produtos estruturados. Seu objetivo e eliminar a ambiguidade dos tickers locais como PETR4 ou AAPL, que podem colidir entre bolsas, mudar após eventos corporativos ou até ser reutilizados por outro emissor.
Cada ISIN e alocado por uma National Numbering Agency (NNA), o órgão nacional autorizado pela Association of National Numbering Agencies (ANNA). No Brasil a NNA e a B3 (B3 S.A. – Brasil, Bolsa, Balcao); nos EUA, a CUSIP Global Services; na Alemanha, a WM Datenservice; no Reino Unido, a London Stock Exchange. A própria ANNA mantém a base global de ISINs e o serviço público ANNA Service Bureau para consulta gratuita.
Exemplos conhecidos: US0378331005 (ação ordinaria da Apple Inc.), BRPETR3ACNOR9 da família BRPETR3 para Petrobras ON, DE000BASF111 (BASF SE), GB0002374006 (Diageo plc), FR0000131104 (BNP Paribas).
Anatomia dos 12 caracteres
- Posições 1-2: prefixo de duas letras do pais segundo ISO 3166-1 alpha-2 (US, BR, DE, FR, JP). Emissões supranacionais usam
XS(Euroclear/Clearstream),EUouXF. - Posições 3-11: NSIN (National Securities Identifying Number) alfanumérico de nove caracteres, atribuído pela NNA local. Nos EUA o NSIN e o CUSIP de 9 caracteres; no Reino Unido o SEDOL de 7 caracteres preenchido com zeros a esquerda.
- Posição 12: um único dígito verificador decimal calculado por uma variante do algoritmo de Luhn.
Algoritmo do dígito verificador passo a passo
O DV usa Luhn modulo 10 após converter letras em números. Cada letra e substituida pela sua posição no alfabeto somada de 9 (A=10, B=11, ..., Z=35). A string resultante e percorrida da direita para a esquerda; a partir do dígito anterior ao DV, cada segundo dígito e dobrado e, quando o dobro excede 9, somam-se os algarismos. Soma-se tudo; o DV e o valor que completa o próximo múltiplo de 10.
US0378331005
U=30, S=28 -> 3 0 2 8 0 3 7 8 3 3 1 0 0 5
dobrar posicoes impares a partir da direita; somar; DV = (10 - soma mod 10) mod 10
ISIN versus ticker, CUSIP, SEDOL, FIGI e CFI
Um ticker como PETR4 ou TSLA e específico de cada bolsa, pode colidir entre mercados e ser reaproveitado após delisting. O ISIN e global e identifica o ativo em si, mas não informa onde ele negocia. Para fixar o local, combina-se o ISIN com o MIC (Market Identifier Code, ISO 10383) da bolsa, como XNAS para a Nasdaq ou BVMF para a B3.
- CUSIP: identificador EUA/Canada de 9 caracteres; vira o NSIN dentro de um ISIN US/CA.
- SEDOL: identificador britanico de 7 caracteres; preenchido com zeros dentro de um ISIN GB.
- FIGI (Financial Instrument Global Identifier): padrão aberto de 12 caracteres liderado pela Bloomberg, sensível a maiúsculas e gratuito via OpenFIGI.
- CFI (ISO 10962): código complementar de 6 letras que descreve o tipo (renda variável, renda fixa, derivativo), direito de voto e forma.
Casos de uso no mercado moderno
- Relatórios de carteira: custodiantes e gestoras consolidam posições em múltiplos mercados usando o ISIN como chave.
- MiFID II na UE e EMIR de derivativos exigem ISIN em todas as operações reportadas.
- KYC e AML: ISINs trafegam em mensagens SWIFT MT e ISO 20022 de liquidacao.
- ETFs e fundos: cada classe de cota recebe um ISIN próprio, mesmo seguindo a mesma estratégia.
- Fintechs brasileiras (XP Investimentos, Rico, Nubank Invest, Inter) usam ISINs internamente para rotear ordens internacionais e consolidar custodias offshore.
Pegadinhas e limitacoes
Um ISIN que passe no teste de Luhn esta apenas bem formado. A aritmética não prova que o papel existe, ainda esta emitido ou esta listado. Alguns pontos específicos:
- Delisting e reuso: o ISIN de um papel descontinuado pode, em tese, ser reaproveitado, embora as NNAs evitem. Combine sempre com data de emissão.
- Mesmo emissor, vários ISINs: ON, PN, ADR, GDR e classes de ETF tem ISINs distintos.
- Consulta gratuita vs paga: ANNA Service Bureau e OpenFIGI são gratuitos; Bloomberg, Refinitiv Eikon e S&P Capital IQ cobram por metadados ricos.
- Sensibilidade a maiúsculas: ISIN e sempre maiusculo; FIGI distingue caixa — não misture os dois no banco de dados.
FAQ
Qual a diferença entre ticker e ISIN?
O ticker e local de uma bolsa e ambiguo globalmente; o ISIN e único no mundo e fica preso ao ativo, independentemente de onde ele negocia.
A consulta de ISIN e gratuita?
O ANNA Service Bureau oferece consulta gratuita com limite. O OpenFIGI, da Bloomberg, expõe API publica gratuita mapeando ISIN para FIGI e tickers. Dados premium continuam exigindo Bloomberg, Refinitiv ou S&P.
Um exemplo brasileiro?
BRPETR3 e a família de ações ordinarias da Petrobras alocada pela B3 (prefixo BR, NSIN PETR3ACNOR, DV calculado por Luhn).
Este validador consulta a bolsa em tempo real?
Não. Executa o teste de Luhn da ISO 6166 no seu navegador. Nada sai da sua máquina e o resultado confirma apenas que os 12 caracteres formam sequência aritmeticamente valida.
Dois papéis podem ter o mesmo ISIN?
Não — por definição o ISIN e globalmente único. Mas o mesmo ativo pode negociar em mais de uma bolsa; o ISIN se mantém e o MIC diferencia o local.
Ferramentas Relacionadas
Validador de CUSIP
Valida CUSIPs (Committee on Uniform Securities Identification Procedures) — IDs de 9 caracteres usados em mercados americanos.
Validador de Título de Eleitor
Valide títulos de eleitor pelo algoritmo oficial do TSE, sem enviar dados para servidores. Gratuito e sem cadastro.
Validador FIGI (instrumento financeiro)
Valide um código FIGI (Financial Instrument Global Identifier) de 12 caracteres pelo dígito verificador. Identificador global de ativos do mercado financeiro.
Validador CAS Number (Químico)
Valida CAS Registry Number (formato xxxxxxx-xx-x) com checksum oficial usado para identificar substâncias químicas.
Validador client_id / client_secret
Valide o formato de um client_id e client_secret de OAuth (caracteres válidos e comprimento mínimo). Útil para depurar integrações de autenticação e APIs.
Validador de Código de Município IBGE
Valida o formato do código IBGE de município (7 dígitos: UF + 5 internos). Verifica se os 2 primeiros são UF válida.