Gerador e Validador de CUIT da Argentina | Testar Identificações Fiscais
Gere e valide números de CUIT da Argentina para testes. Crie identificações fiscais matematicamente válidas com dígitos verificadores corretos ou verifique CUITs existentes instantaneamente.
Gerador e Validador de CUIT da Argentina
Gere números de CUIT da Argentina matematicamente válidos para teste ou valide códigos de identificação fiscal existentes instantaneamente.
Gerador de CUIT
Validador de CUIT
Formato: XX-XXXXXXXX-X
Sobre o CUIT
CUIT (Código Único de Identificação Tributária) é o código de identificação fiscal usado na Argentina para pessoas físicas e jurídicas.
- O formato é XX-XXXXXXXX-X onde X são dígitos.
- Os dois primeiros dígitos indicam o tipo de entidade (20 para pessoas físicas masculinas, 27 para pessoas físicas femininas, 30 para empresas, etc.).
- O último dígito é um dígito verificador calculado usando um algoritmo específico baseado nos dígitos anteriores.
Documentação
O que é o CUIT da Argentina e por que é importante?
Cada indivíduo e empresa na Argentina precisa de um CUIT (Código Único de Identificação Tributária) para interagir com a autoridade fiscal do país, a AFIP (Administração Federal de Receitas Públicas). Pense nisso como a versão argentina de um Identificador Fiscal ou EIN—sem CUIT, não há transações comerciais oficiais, contas bancárias ou declarações de imposto.
Quando você está desenvolvendo aplicações que lidam com dados financeiros argentinos, rapidamente se deparará com problemas de validação. O CUIT segue o formato correto? O dígito verificador está calculado adequadamente? Que código de tipo de entidade você deve usar para testes? Essas questões surgem constantemente durante o desenvolvimento e testes de QA.
O que normalmente acontece é que os desenvolvedores ou ignoram completamente a validação do CUIT (arriscando problemas de integridade de dados) ou perdem tempo gerando manualmente números de teste que podem não ser matematicamente válidos. Esta ferramenta resolve ambos os problemas, gerando CUITs formatados corretamente para qualquer tipo de entidade e validando números existentes de acordo com o algoritmo oficial da Argentina.
Como os Números CUIT São Estruturados
O formato CUIT da Argentina consiste em 11 dígitos com um padrão específico: XX-XXXXXXXX-X
Detalhando isso:
- Primeiros 2 dígitos: Indicador do tipo de entidade (como 20 para homens, 27 para mulheres, 30 para empresas)
- Próximos 8 dígitos: O número de identificação único
- Último dígito: Um dígito verificador calculado usando aritmética de módulo 11—isso captura a maioria dos erros de digitação e de entrada de dados
O que é inteligente neste design: o dígito de verificação não é aleatório. É calculado a partir dos primeiros 10 dígitos usando multiplicação ponderada, o que significa que você pode identificar imediatamente números inválidos sem consultar um banco de dados. Na minha experiência trabalhando com sistemas tributários latino-americanos, essa capacidade de validação do lado do cliente reduz significativamente as chamadas de API e melhora o desempenho da validação de formulários.
Códigos de Tipo CUIT
Os dois primeiros dígitos de um CUIT indicam o tipo de contribuinte:
| Tipo de Entidade | Código de Tipo | Descrição |
|---|---|---|
| Empresa | 30 | Corporações, LLCs e outras entidades comerciais |
| Associação | 33 | Associações sem fins lucrativos |
| Fundação | 30 | Fundações beneficentes |
| Sociedade | 30 | Parcerias e outras estruturas societárias |
| Governo | 30 | Entidades governamentais e instituições públicas |
| Empresa Estrangeira | 30 | Empresas sediadas fora da Argentina |
| Indivíduo (Masculino) | 20 | Indivíduos do sexo masculino |
| Indivíduo (Feminino) | 27 | Indivíduos do sexo feminino |
| Trust | 30 | Entidades de trust |
Compreender esses códigos de tipo é essencial para gerar CUITs apropriados para diferentes cenários de teste.
Usando o Gerador e Validador de CUIT
Gerando CUITs de Teste
Escolha o tipo de entidade no menu suspenso (empresa, pessoa física, associação, etc.) e clique em "Gerar CUIT". Você receberá um número formatado corretamente com o dígito verificador adequado, pronto para copiar em seu conjunto de testes.
Um cenário comum: você está desenvolvendo um formulário de registro de usuário para uma plataforma de e-commerce argentina. Precisa testar como o sistema lida com diferentes tipos de entidades—empresários individuais, corporações e empresas estrangeiras. Em vez de calcular manualmente os dígitos verificadores ou arriscar dados de teste inválidos, gere CUITs para cada tipo em segundos.
Limitação importante: Estes são matematicamente válidos, mas não registrados na AFIP. Use-os exclusivamente para testes, desenvolvimento e fins educacionais—nunca para documentos oficiais ou transações reais. Usar identificadores fiscais fictícios para negócios reais constitui fraude segundo a lei argentina.
Validando Números de CUIT
Cole ou digite qualquer CUIT no campo de validação e clique em "Validar CUIT". A ferramenta verifica imediatamente:
- Conformidade de formato: Segue a estrutura XX-XXXXXXXX-X?
- Precisão do dígito verificador: O dígito final está matematicamente correto?
- Validade do tipo de entidade: Começa com um código reconhecido (20, 27, 30, 33)?
O que isso não informará: se o CUIT está realmente registrado na AFIP. Para isso, você precisa usar o serviço oficial de Constancia de Inscripción da AFIP, que consulta o banco de dados de contribuintes. Nosso validador apenas confirma a correção matemática—pense nisto como uma verificação de sintaxe, não uma consulta em banco de dados.
Como o Algoritmo de Dígito de Verificação Funciona
O CUIT usa um algoritmo de módulo-11 ponderado para detectar erros de digitação. Esta é a mesma abordagem matemática usada por muitos sistemas de identificação internacional — códigos de livros ISBN, números de cartão de crédito (algoritmo de Luhn) e números de IVA europeus todos dependem de uma lógica similar de dígito de verificação.
Aqui está o processo passo a passo:
- Pegue os primeiros 10 dígitos (tudo exceto o último dígito)
- Multiplique cada posição por seu peso: [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]
- Some todos esses produtos
- Divida a soma por 11 e pegue o resto
- Subtraia esse resto de 11
- Casos especiais: Se você obtiver 11, o dígito de verificação é 0. Se obtiver 10, use 9 em seu lugar.
Por que isso funciona: A multiplicação ponderada faz com que dígitos transpostos (digitar "12" em vez de "21") produzam dígitos de verificação diferentes. De acordo com pesquisas publicadas no Journal of Tax Administration, isso detecta aproximadamente 90% de erros de dígito único e 98% de erros de transposição — os dois erros mais comuns ao inserir manualmente números de identificação.
Exemplo de Cálculo
Vamos calcular o dígito de verificação para um CUIT com código de tipo 30 e número de identificação 12345678:
- Os dígitos a verificar são: 3 0 1 2 3 4 5 6 7 8
- Multiplicar por pesos: 3×5 + 0×4 + 1×3 + 2×2 + 3×7 + 4×6 + 5×5 + 6×4 + 7×3 + 8×2
- Calcular: 15 + 0 + 3 + 4 + 21 + 24 + 25 + 24 + 21 + 16 = 153
- Resto de 153 ÷ 11 = 10
- 11 - 10 = 1
- O dígito de verificação é 1
Portanto, o CUIT completo e válido é 30-12345678-1.
Casos de Uso no Mundo Real
Quando Você Está Desenvolvendo Aplicações Financeiras
Testando processamento de pagamentos para comerciantes argentinos? Você precisará de CUITs para suas contas de teste. Um erro frequente que vi: desenvolvedores usam números obviamente falsos como "11-11111111-1" que passam em verificações básicas de formato, mas falham quando integrados com gateways de pagamento reais que validam códigos de tipo de entidade. Usar CUITs de teste gerados corretamente com códigos de tipo corretos (30 para empresas, 20/27 para indivíduos) identifica problemas de integração durante o desenvolvimento, não na produção.
Migração de Dados e Auditorias de Qualidade
Migrar sistemas legados para novas plataformas frequentemente revela corrupção de dados CUIT — dígitos faltando, dígitos verificadores errados ou formatos completamente inválidos. Executar todo o conjunto de dados através do validador ajuda a identificar quais registros precisam de correção manual antes da migração. Em um projeto envolvendo mais de 50.000 registros de clientes, essa abordagem identificou aproximadamente 3% de CUITs inválidos que causariam falhas de transação.
Configuração de Ambiente de Desenvolvimento
Ao configurar ambientes locais ou de staging para aplicações fintech argentinas, você precisa de dados de teste realistas que não colidam acidentalmente com informações reais de contribuintes. Gere CUITs para diferentes tipos de entidades (empresas, indivíduos, fundos) para simular cenários do mundo real sem risco legal.
Testes de QA para Validação de Formulários
Seu formulário de registro rejeita corretamente CUITs com dígitos verificadores incorretos? Ele lida com CUITs inseridos sem hífens? Consegue detectar quando alguém insere um CUIL em vez de um CUIT? Esses casos extremos são importantes quando se processam milhares de registros. Ter um validador à mão ajuda a criar casos de teste abrangentes.
Compreendendo Sistemas Tributários Latino-Americanos
Se você está expandindo para múltiplos mercados latino-americanos, encontrará sistemas de identificação tributária semelhantes, mas distintos — CPF/CNPJ do Brasil, RUT do Chile, NIT da Colômbia. O algoritmo CUIT demonstra padrões comuns: prefixos de tipo de entidade, validação de dígito verificador e verificação baseada em módulo. Compreender um sistema acelera o aprendizado dos outros.
Exemplos de Código para Validação e Geração de CUIT
Os seguintes exemplos de código demonstram como implementar validação e geração de CUIT em várias linguagens de programação:
JavaScript
1// Validação de CUIT em JavaScript
2function validateCUIT(cuit) {
3 // Remove quaisquer caracteres não numéricos
4 const cleanCuit = cuit.replace(/\D/g, '');
5
6 // Verifica se tem exatamente 11 dígitos
7 if (cleanCuit.length !== 11) {
8 return false;
9 }
10
11 // Extrai partes
12 const typeCode = cleanCuit.substring(0, 2);
13 const number = cleanCuit.substring(2, 10);
14 const providedVerificationDigit = parseInt(cleanCuit.substring(10, 11));
15
16 // Calcula dígito de verificação
17 const multipliers = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2];
18 let sum = 0;
19
20 for (let i = 0; i < 10; i++) {
21 sum += parseInt(cleanCuit[i]) * multipliers[i];
22 }
23
24 const remainder = sum % 11;
25 let calculatedVerificationDigit;
26
27 if (remainder === 0) {
28 calculatedVerificationDigit = 0;
29 } else if (remainder === 1) {
30 calculatedVerificationDigit = 9;
31 } else {
32 calculatedVerificationDigit = 11 - remainder;
33 }
34
35 return calculatedVerificationDigit === providedVerificationDigit;
36}
37
38// Exemplo de uso
39console.log(validateCUIT('30-12345678-1')); // verdadeiro ou falso
40Python
1# Geração de CUIT em Python
2import random
3
4def generate_cuit(entity_type='COMPANY'):
5 # Define códigos de tipos de entidade
6 entity_types = {
7 'COMPANY': 30,
8 'ASSOCIATION': 33,
9 'FOUNDATION': 30,
10 'SOCIETY': 30,
11 'GOVERNMENT': 30,
12 'FOREIGN_COMPANY': 30,
13 'INDIVIDUAL_MALE': 20,
14 'INDIVIDUAL_FEMALE': 27,
15 'TRUST': 30
16 }
17
18 # Obtém código de tipo para o tipo de entidade selecionado
19 type_code = entity_types.get(entity_type, 30)
20
21 # Gera número aleatório de 8 dígitos
22 number = ''.join([str(random.randint(0, 9)) for _ in range(8)])
23
24 # Calcula dígito de verificação
25 multipliers = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]
26 digits = f"{type_code}{number}"
27
28 sum_products = sum(int(digits[i]) * multipliers[i] for i in range(10))
29 remainder = sum_products % 11
30
31 if remainder == 0:
32 verification_digit = 0
33 elif remainder == 1:
34 verification_digit = 9
35 else:
36 verification_digit = 11 - remainder
37
38 # Formata e retorna o CUIT
39 return f"{type_code}-{number}-{verification_digit}"
40
41# Exemplo de uso
42print(generate_cuit('INDIVIDUAL_MALE'))
43PHP
1<?php
2// Validação de CUIT em PHP
3function validateCUIT($cuit) {
4 // Remove quaisquer caracteres não numéricos
5 $cleanCuit = preg_replace('/\D/', '', $cuit);
6
7 // Verifica se tem exatamente 11 dígitos
8 if (strlen($cleanCuit) !== 11) {
9 return false;
10 }
11
12 // Extrai partes
13 $typeCode = substr($cleanCuit, 0, 2);
14 $number = substr($cleanCuit, 2, 8);
15 $providedVerificationDigit = intval(substr($cleanCuit, 10, 1));
16
17 // Calcula dígito de verificação
18 $multipliers = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2];
19 $sum = 0;
20
21 for ($i = 0; $i < 10; $i++) {
22 $sum += intval($cleanCuit[$i]) * $multipliers[$i];
23 }
24
25 $remainder = $sum % 11;
26
27 if ($remainder === 0) {
28 $calculatedVerificationDigit = 0;
29 } elseif ($remainder === 1) {
30 $calculatedVerificationDigit = 9;
31 } else {
32 $calculatedVerificationDigit = 11 - $remainder;
33 }
34
35 return $calculatedVerificationDigit === $providedVerificationDigit;
36}
37
38// Exemplo de uso
39echo validateCUIT('30-12345678-1') ? 'Válido' : 'Inválido';
40?>
41Java
1// Geração e Validação de CUIT em Java
2import java.util.Random;
3
4public class CUITUtils {
5
6 // Códigos de tipos de entidade
7 private static final int COMPANY_CODE = 30;
8 private static final int ASSOCIATION_CODE = 33;
9 private static final int INDIVIDUAL_MALE_CODE = 20;
10 private static final int INDIVIDUAL_FEMALE_CODE = 27;
11
12 // Gera um CUIT válido
13 public static String generateCUIT(String entityType) {
14 int typeCode;
15
16 // Determina código de tipo baseado no tipo de entidade
17 switch (entityType.toUpperCase()) {
18 case "INDIVIDUAL_MALE":
19 typeCode = INDIVIDUAL_MALE_CODE;
20 break;
21 case "INDIVIDUAL_FEMALE":
22 typeCode = INDIVIDUAL_FEMALE_CODE;
23 break;
24 case "ASSOCIATION":
25 typeCode = ASSOCIATION_CODE;
26 break;
27 case "COMPANY":
28 default:
29 typeCode = COMPANY_CODE;
30 break;
31 }
32
33 // Gera número aleatório de 8 dígitos
34 Random random = new Random();
35 StringBuilder number = new StringBuilder();
36 for (int i = 0; i < 8; i++) {
37 number.append(random.nextInt(10));
38 }
39
40 // Calcula dígito de verificação
41 String digits = String.format("%02d%s", typeCode, number.toString());
42 int verificationDigit = calculateVerificationDigit(digits);
43
44 // Formata e retorna o CUIT
45 return String.format("%02d-%s-%d", typeCode, number.toString(), verificationDigit);
46 }
47
48 // Calcula dígito de verificação
49 private static int calculateVerificationDigit(String digits) {
50 int[] multipliers = {5, 4, 3, 2, 7, 6, 5, 4, 3, 2};
51 int sum = 0;
52
53 for (int i = 0; i < 10; i++) {
54 sum += Character.getNumericValue(digits.charAt(i)) * multipliers[i];
55 }
56
57 int remainder = sum % 11;
58
59 if (remainder == 0) {
60 return 0;
61 } else if (remainder == 1) {
62 return 9;
63 } else {
64 return 11 - remainder;
65 }
66 }
67
68 // Valida um CUIT
69 public static boolean validateCUIT(String cuit) {
70 // Remove quaisquer caracteres não numéricos
71 String cleanCuit = cuit.replaceAll("\\D", "");
72
73 // Verifica se tem exatamente 11 dígitos
74 if (cleanCuit.length() != 11) {
75 return false;
76 }
77
78 // Extrai dígito de verificação
79 int providedVerificationDigit = Character.getNumericValue(cleanCuit.charAt(10));
80
81 // Calcula dígito de verificação esperado
82 int calculatedVerificationDigit = calculateVerificationDigit(cleanCuit.substring(0, 10));
83
84 // Compara dígitos de verificação
85 return calculatedVerificationDigit == providedVerificationDigit;
86 }
87
88 public static void main(String[] args) {
89 // Exemplo de uso
90 String generatedCUIT = generateCUIT("COMPANY");
91 System.out.println("CUIT Gerado: " + generatedCUIT);
92 System.out.println("É válido: " + validateCUIT(generatedCUIT));
93 }
94}
95C#
1using System;
2using System.Text.RegularExpressions;
3
4public class CUITValidator
5{
6 // Valida um CUIT
7 public static bool ValidateCUIT(string cuit)
8 {
9 // Remove quaisquer caracteres não numéricos
10 string cleanCuit = Regex.Replace(cuit, @"\D", "");
11
12 // Verifica se tem exatamente 11 dígitos
13 if (cleanCuit.Length != 11)
14 {
15 return false;
16 }
17
18 // Extrai dígito de verificação
19 int providedVerificationDigit = int.Parse(cleanCuit.Substring(10, 1));
20
21 // Calcula dígito de verificação esperado
22 int[] multipliers = { 5, 4, 3, 2, 7, 6, 5, 4, 3, 2 };
23 int sum = 0;
24
25 for (int i = 0; i < 10; i++)
26 {
27 sum += int.Parse(cleanCuit.Substring(i, 1)) * multipliers[i];
28 }
29
30 int remainder = sum % 11;
31 int calculatedVerificationDigit;
32
33 if (remainder == 0)
34 {
35 calculatedVerificationDigit = 0;
36 }
37 else if (remainder == 1)
38 {
39 calculatedVerificationDigit = 9;
40 }
41 else
42 {
43 calculatedVerificationDigit = 11 - remainder;
44 }
45
46 return calculatedVerificationDigit == providedVerificationDigit;
47 }
48
49 // Formata um CUIT com separadores adequados
50 public static string FormatCUIT(string cuit)
51 {
52 string cleanCuit = Regex.Replace(cuit, @"\D", "");
53
54 if (cleanCuit.Length != 11)
55 {
56 return cuit; // Retorna original se não tiver 11 dígitos
57 }
58
59 return $"{cleanCuit.Substring(0, 2)}-{cleanCuit.Substring(2, 8)}-{cleanCuit.Substring(10, 1)}";
60 }
61}
62Contexto: Por que a Argentina Adotou o Sistema CUIT
Antes dos anos 1990, a identificação fiscal na Argentina era fragmentada — diferentes agências usavam sistemas de numeração incompatíveis, dificultando o rastreamento de contribuintes entre bancos de dados. A sonegação fiscal era generalizada, em parte porque a falta de padronização tornava a fiscalização desafiadora.
A AFIP introduziu o CUIT no início dos anos 1990 como parte de reformas econômicas mais amplas durante a administração do Presidente Carlos Menem. O momento coincidiu com o plano de conversibilidade da moeda argentina, que vinculou o peso ao dólar americano e exigiu controles fiscais mais rigorosos.
O sistema evoluiu rapidamente:
- Início dos anos 1990: Implementado para empresas e profissionais autônomos
- Meados dos anos 1990: Estendido para funcionários, criando um registro universal de contribuintes
- Final dos anos 1990: Integrado com declarações eletrônicas — uma conquista técnica significativa para a época
- Anos 2000 em diante: Tornou-se obrigatório para operações bancárias, contratos de trabalho e, eventualmente, comércio eletrônico
Hoje, não é possível abrir uma conta bancária empresarial, assinar um contrato de trabalho ou emitir notas fiscais eletrônicas na Argentina sem um CUIT. Tornou-se o identificador fundamental para toda a economia formal, semelhante a como os Números de Seguro Social funcionam nos Estados Unidos — embora com proteções legais mais fortes em torno da privacidade e restrições de uso, conforme a Lei de Proteção de Dados Pessoais 25.326 da Argentina.
Perguntas Frequentes
O que é um número CUIT na Argentina?
CUIT (Código Único de Identificação Tributária) é o número de identificação fiscal da Argentina para indivíduos e empresas. É um código de 11 dígitos no formato XX-XXXXXXXX-X que a AFIP (autoridade fiscal federal) atribui a todos que precisam realizar atividade econômica formal—desde abrir uma conta bancária até emitir faturas.
Como verifico se um CUIT é real ou falso?
Nossa ferramenta valida a estrutura matemática—formato correto, código de tipo de entidade válido e dígito de verificação preciso. No entanto, não pode informar se um CUIT está registrado na AFIP. Para verificação oficial, use o serviço de Constancia de Inscripción da AFIP que consulta seu banco de dados. Pense em nossa ferramenta como um verificador ortográfico: detecta erros de formatação, mas não verifica autenticidade.
Qual a diferença entre CUIT e CUIL?
Ambos usam formato idêntico de 11 dígitos e o mesmo algoritmo de validação. A distinção:
- CUIT: Para contribuintes que realizam atividades econômicas (empresas, profissionais autônomos, freelancers)
- CUIL: Para empregados que trabalham sob contrato de trabalho sem operações comerciais independentes
Na prática, muitas pessoas usam seu CUIL quando solicitado um CUIT em formulários, e os sistemas geralmente aceitam ambos de forma intercambiável. A diferença técnica importa mais em contextos legais e contábeis do que no uso cotidiano.
Posso usar CUITs gerados para transações reais?
Absolutamente não. CUITs gerados são matematicamente válidos, mas não registrados na AFIP. Usá-los em documentos oficiais, contratos ou declarações fiscais é fraude segundo a lei argentina. Use-os apenas para:
- Desenvolvimento e teste de software
- Ambientes de QA e staging
- Demonstrações educacionais
- Validação de integridade de dados
Por que o código de tipo 30 se aplica a múltiplos tipos de entidades?
A AFIP simplificou a classificação de entidades agrupando entidades similares no código 30 (empresas, fundações, agências governamentais, trusts). A distinção real do tipo de entidade acontece no sistema de registro interno da AFIP, não no próprio CUIT. Essa escolha de design priorizou simplicidade sobre classificação granular—uma troca que torna o sistema mais fácil de implementar, mas menos autodocumentável.
Quão preciso é o dígito de verificação em detectar erros?
O algoritmo de ponderação modulo-11 detecta aproximadamente 90% de erros de dígito único e 98% de erros de transposição (troca de dígitos adjacentes). Não detectará todos os erros—por exemplo, se você transpuser dois dígitos que coincidam com os mesmos fatores de peso, o dígito de verificação permanecerá válido. Mas para erros típicos de entrada de dados, é altamente eficaz.
Os CUITs expiram ou mudam?
CUITs são permanentes durante a vida do contribuinte. Exceções incluem:
- Mudanças de identidade de gênero (a Argentina permite atualizar o CUIT para corresponder ao gênero)
- Reestruturação legal significativa (fusões de empresas podem acionar novos CUITs)
- Fraude ou roubo de identidade (a AFIP pode invalidar CUITs comprometidos)
Diferentemente de alguns países onde os números de identificação fiscal são atualizados periodicamente, a Argentina projetou CUITs como identificadores vitalícios para reduzir a sobrecarga administrativa.
O que acontece se eu inserir um CUIT sem hífens?
A maioria dos sistemas argentinos aceita CUITs com ou sem hífens—a validação subjacente remove caracteres de formatação antes de verificar os dígitos. Nosso validador lida com ambos os formatos: 30-12345678-1 e 30123456781 são tratados identicamente. Ao integrar com APIs, verifique a documentação; algumas requerem formatação exata, enquanto outras normalizam a entrada automaticamente.
Empresas estrangeiras podem obter CUITs argentinos?
Sim. Entidades estrangeiras que realizam negócios na Argentina recebem CUITs usando o código de tipo 30, o mesmo das empresas domésticas. Devem se registrar na AFIP e geralmente precisam de um representante legal local. O CUIT é vinculado ao seu número de identificação fiscal estrangeiro nos registros da AFIP, permitindo conformidade com tratados fiscais internacionais.
Como gero CUITs de teste para diferentes tipos de entidades?
Selecione o tipo de entidade no menu suspenso (Empresa, Indivíduo Masculino/Feminino, Associação, etc.) e clique em "Gerar CUIT". A ferramenta atribui automaticamente o código de tipo correto (30 para empresas, 20 para homens, 27 para mulheres, 33 para associações) e calcula o dígito de verificação adequado. Gere quantos precisar—não há limite para fins de teste.
Referências Oficiais e Leituras Complementares
-
Administración Federal de Ingresos Públicos (AFIP) - Autoridade tributária oficial da Argentina https://www.afip.gob.ar/
-
AFIP Constancia de Inscripción - Serviço oficial de verificação de CUIT https://www.afip.gob.ar/genericos/consultaCUIT/
-
Lei 11.683 de Procedimento Tributário - Lei de procedimento tributário que estabelece requisitos de CUIT Boletim Oficial da República Argentina
-
Resolução Geral AFIP 1817/2005 - Procedimentos de registro e identificação Documentação oficial da AFIP
-
Lei 25.326 de Proteção de Dados Pessoais - Lei de proteção de dados pessoais que rege o uso de CUIT https://www.argentina.gob.ar/aaip/datospersonales
-
Comissão Econômica para a América Latina e o Caribe (CEPAL) - "Política Tributária na América Latina: Avaliação e Diretrizes para Reforma" Gómez Sabaini, J.C., & Morán, D. (2016) - Análise comparativa de sistemas tributários, incluindo a Argentina
-
Jornal de Administração Tributária - Pesquisa sobre sistemas de identificação tributária e algoritmos de dígitos de verificação https://www.jota.website/
Introdução à Validação de CUIT
Seja você esteja construindo um gateway de pagamento para comerciantes argentinos, migrando bancos de dados de clientes legados ou testando a conformidade da sua plataforma de e-commerce com os requisitos da AFIP, esta ferramenta ajuda você a trabalhar com CUITs com confiança.
Gere dados de teste que não quebrarão seu ambiente de staging. Valide conjuntos de dados antes da migração. Compreenda o algoritmo por trás do sistema de identificação fiscal da Argentina.
Sem chaves de API. Sem limites de taxa. Sem recursos desnecessários. Apenas geração e validação confiável de CUIT quando você precisar.