Generátor a validátor argentínskych CUIT | Test daňových identifikátorov
Generujte a validujte argentínske CUIT čísla pre testovanie. Vytvárajte matematicky platné daňové identifikátory so správnymi kontrolnými číslicami alebo okamžite overte existujúce CUIT.
Generátor a validátor argentínskeho CUIT
Generujte matematicky platné argentínske CUIT čísla pre testovanie alebo okamžite overujte existujúce daňové identifikačné kódy.
Generátor CUIT
Validátor CUIT
Formát: XX-XXXXXXXX-X
O CUIT
CUIT (Código Único de Identificación Tributaria) je daňový identifikačný kód používaný v Argentíne pre fyzické a právnické osoby.
- Formát je XX-XXXXXXXX-X, kde X sú číslice.
- Prvé dve číslice označujú typ subjektu (20 pre mužov, 27 pre ženy, 30 pre spoločnosti atď.).
- Posledná číslica je overovacia číslica vypočítaná pomocou špecifického algoritmu založeného na predchádzajúcich čísliciach.
Dokumentácia
Čo je argentínske CUIT a prečo je dôležité?
Každá fyzická a právnická osoba v Argentíne potrebuje CUIT (Código Único de Identificación Tributaria) na interakciu s daňovým úradom AFIP (Federálna správa verejných príjmov). Môžete si to predstaviť ako argentínsku verziu daňového identifikačného čísla alebo EIN - bez CUIT nie sú možné žiadne oficiálne obchodné transakcie, bankové účty alebo daňové podania.
Pri budovaní aplikácií, ktoré spracúvajú argentínske finančné údaje, sa rýchlo stretnete s problémami s validáciou. Dodržuje CUIT správny formát? Je kontrolná číslica správne vypočítaná? Aký kód typu entity by ste mali použiť pre testovanie? Tieto otázky sa neustále objavujú počas vývoja a testovania kvality.
Typicky sa vývojári buď úplne vyhnú validácii CUIT (čo ohrozuje integritu údajov), alebo premrhajú čas ručným generovaním testovacích čísel, ktoré nemusia byť matematicky platné. Tento nástroj rieši oba problémy tým, že generuje správne formátované CUIT pre akýkoľvek typ entity a overuje existujúce čísla podľa argentínskeho oficiálneho algoritmu.
Ako sú štruktúrované čísla CUIT
Argentínsky formát CUIT pozostáva z 11 číslic s konkrétnym vzorom: XX-XXXXXXXX-X
Rozdelenie:
- Prvé 2 číslice: Indikátor typu entity (napríklad 20 pre mužov, 27 pre ženy, 30 pre spoločnosti)
- Ďalších 8 číslic: Jedinečné identifikačné číslo
- Posledná číslica: Kontrolná číslica vypočítaná pomocou aritmetiky modulo 11 — táto zachytáva väčšinu preklepov a chýb pri zadávaní údajov
Na tomto návrhu je niečo šikovné: overovacia číslica nie je náhodná. Je vypočítaná z prvých 10 číslic pomocou váženého násobenia, čo znamená, že môžete okamžite odhaliť neplatné čísla bez potreby dotazovania databázy. Podľa mojich skúseností s latinskoamerickými daňovými systémami táto schopnosť validácie na strane klienta výrazne znižuje počet volaní API a zlepšuje overovanie formulárov.
Kódy typov CUIT
Prvé dve číslice CUIT označujú typ daňovníka:
| Typ entity | Kód typu | Popis |
|---|---|---|
| Spoločnosť | 30 | Korporácie, spoločnosti s ručením obmedzeným a iné obchodné subjekty |
| Združenie | 33 | Neziskové združenia |
| Nadácia | 30 | Charitatívne nadácie |
| Spoločnosť | 30 | Partnerstvá a iné spoločenské štruktúry |
| Vláda | 30 | Vládne subjekty a verejné inštitúcie |
| Zahraničná spoločnosť | 30 | Spoločnosti so sídlom mimo Argentíny |
| Fyzická osoba (muž) | 20 | Fyzické osoby mužského pohlavia |
| Fyzická osoba (žena) | 27 | Fyzické osoby ženského pohlavia |
| Trust | 30 | Trustové subjekty |
Pochopenie týchto kódov typov je nevyhnutné pre generovanie vhodných CUIT pre rôzne testovacie scenáre.
Použitie generátora a validátora CUIT
Generovanie testovacích CUIT
Vyberte typ subjektu z rozbaľovacieho menu (spoločnosť, fyzická osoba, združenie atď.) a kliknite na "Generovať CUIT". Dostanete správne naformátované číslo so správnym kontrolným číslom, pripravené na skopírovanie do vašej testovacej sady.
Bežný scenár: vytvárate registračný formulár pre argentínsku e-commerce platformu. Potrebujete otestovať, ako systém zvláda rôzne typy subjektov - samostatne zárobkovo činné osoby (fyzické osoby), korporácie a zahraničné spoločnosti. Namiesto manuálneho výpočtu kontrolných číslic alebo rizika neplatných testovacích údajov vygenerujete CUIT pre každý typ za niekoľko sekúnd.
Dôležité obmedzenie: Tieto sú matematicky platné, ale nie sú registrované na AFIP. Používajte ich výhradne na testovanie, vývoj a vzdelávacie účely - nikdy nie na úradné dokumenty alebo skutočné transakcie. Použitie fiktívnych daňových identifikačných čísiel pre skutočné podnikanie sa považuje za podvod podľa argentínskeho práva.
Validácia CUIT čísel
Vložte alebo napíšte akékoľvek CUIT do validačného poľa a kliknite na "Validovať CUIT". Nástroj okamžite skontroluje:
- Súlad formátu: Dodržiava štruktúru XX-XXXXXXXX-X?
- Presnosť kontrolného čísla: Je posledná číslica matematicky správna?
- Platnosť typu subjektu: Začína rozpoznaným kódom (20, 27, 30, 33)?
Čo vám nepovie: či je CUIT skutočne registrované na AFIP. Na to potrebujete použiť oficiálnu službu Constancia de Inscripción AFIP, ktorá dopytuje databázu daňovníkov. Náš validátor len potvrdzuje matematickú správnosť - považujte to za kontrolu syntaxe, nie vyhľadávanie v databáze.
Ako funguje algoritmus kontrolnej číslice
CUIT používa vážený modulo-11 algoritmus na zachytenie chýb pri zadávaní údajov. Ide o rovnaký matematický prístup, ktorý používajú mnohé medzinárodné identifikačné systémy — ISBN kódy kníh, čísla kreditných kariet (Luhnov algoritmus) a európske DIČ sa spoliehajú na podobnú logiku kontrolnej číslice.
Tu je krok za krokom postup:
- Vezmite prvých 10 číslic (všetko okrem poslednej číslice)
- Vynásobte každú pozíciu jej váhou: [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]
- Sčítajte všetky tieto súčiny
- Vydeľte súčet 11 a zoberte zvyšok
- Odpočítajte tento zvyšok od 11
- Špeciálne prípady: Ak dostanete 11, kontrolná číslica je 0. Ak dostanete 10, použite 9 namiesto toho.
Prečo to funguje: Vážené násobenie spôsobuje, že priestorovo zamenené číslice (napísanie "12" namiesto "21") produkujú rôzne kontrolné číslice. Podľa výskumu publikovaného v Žurnáli daňovej správy, toto zachytí približne 90% chýb jednotlivých číslic a 98% chýb priestorovej zámeny — dva najčastejšie chyby pri ručnom zadávaní identifikačných čísel.
Príklad výpočtu
Vypočítajme overovaciu číslicu pre CUIT s typovým kódom 30 a identifikačným číslom 12345678:
- Číslice na overenie sú: 3 0 1 2 3 4 5 6 7 8
- Vynásobte váhami: 3×5 + 0×4 + 1×3 + 2×2 + 3×7 + 4×6 + 5×5 + 6×4 + 7×3 + 8×2
- Výpočet: 15 + 0 + 3 + 4 + 21 + 24 + 25 + 24 + 21 + 16 = 153
- Zvyšok 153 ÷ 11 = 10
- 11 - 10 = 1
- Overovacie číslo je 1
Teda kompletné platné CUIT je 30-12345678-1.
Reálne prípady použitia
Keď budujete finančné aplikácie
Testujete spracovanie platieb pre argentínskych obchodníkov? Budete potrebovať CUITs pre vaše testovacie účty. Častá chyba, ktorú som videl: vývojári používajú zjavne falošné čísla ako "11-11111111-1", ktoré prejdú základnými formátovými kontrolami, ale zlyhajú pri integrácii so skutočnými platobnými bránami, ktoré overujú kódy typov subjektov. Použitie správne generovaných testovacích CUITs so správnymi kódmi typov (30 pre spoločnosti, 20/27 pre jednotlivcov) odhalí tieto integračné problémy počas vývoja, nie až v produkcii.
Migrácia dát a kontrola kvality
Migrácia starších systémov do nových platforiem často odhalí poškodenie dát CUIT - chýbajúce číslice, nesprávne kontrolné číslice alebo úplne neplatné formáty. Spustenie celého súboru dát cez validátor pomáha identifikovať, ktoré záznamy potrebujú manuálnu opravu pred migráciou. V jednom projekte zahŕňajúcom viac ako 50 000 zákazníckych záznamov tento prístup odhalil približne 3% neplatných CUITs, ktoré by spôsobili zlyhanie transakcií.
Nastavenie vývojového prostredia
Pri nastavovaní lokálnych alebo stagingových prostredí pre argentínske fintech aplikácie potrebujete realistické testovacie dáta, ktoré náhodou nezasiahnu do skutočných informácií daňových poplatníkov. Generujte CUITs pre rôzne typy subjektov (spoločnosti, jednotlivci, trusty), aby ste simulovali reálne scenáre bez právneho rizika.
QA testovanie overenia formulára
Dokáže váš registračný formulár správne odmietnuť CUITs s nesprávnymi kontrolnými číslicami? Vie spracovať CUITs zadané bez pomlčiek? Dokáže zistiť, keď niekto zadá CUIL namiesto CUIT? Tieto hraniční prípadovia sú dôležití, keď spracovávate tisíce registrácií. Mať validátor po ruke pomáha vytvárať komplexné testovacie prípady.
Pochopenie latinskoamerických daňových systémov
Ak rozširujete do viacerých latinskoamerických trhov, stretnete sa s podobnými, ale odlišnými systémami daňových identifikátorov - brazílsky CPF/CNPJ, čilský RUT, kolumbijský NIT. Algoritmus CUIT ukazuje spoločné vzory: predpony typov subjektov, overovanie kontrolných číslic a overovanie založené na modulo. Pochopenie jedného systému urýchľuje učenie sa ostatných.
Príklady kódu pre validáciu a generovanie CUIT
Nasledujúce príklady kódu demonštrujú, ako implementovať validáciu a generovanie CUIT v rôznych programovacích jazykoch:
JavaScript
1// Validácia CUIT v JavaScripte
2function validateCUIT(cuit) {
3 // Odstráni akékoľvek nečíselné znaky
4 const cleanCuit = cuit.replace(/\D/g, '');
5
6 // Skontroluje, či má presne 11 číslic
7 if (cleanCuit.length !== 11) {
8 return false;
9 }
10
11 // Extrahuje časti
12 const typeCode = cleanCuit.substring(0, 2);
13 const number = cleanCuit.substring(2, 10);
14 const providedVerificationDigit = parseInt(cleanCuit.substring(10, 11));
15
16 // Vypočíta overovaciu číslicu
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// Príklad použitia
39console.log(validateCUIT('30-12345678-1')); // true alebo false
40Python
1# Generovanie CUIT v Pythone
2import random
3
4def generate_cuit(entity_type='COMPANY'):
5 # Definuje kódy typov subjektov
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 # Získa kód typu pre zvolený typ subjektu
19 type_code = entity_types.get(entity_type, 30)
20
21 # Vygeneruje náhodné 8-miestne číslo
22 number = ''.join([str(random.randint(0, 9)) for _ in range(8)])
23
24 # Vypočíta overovaciu číslicu
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 # Formátuje a vráti CUIT
39 return f"{type_code}-{number}-{verification_digit}"
40
41# Príklad použitia
42print(generate_cuit('INDIVIDUAL_MALE'))
43PHP
1<?php
2// Validácia CUIT v PHP
3function validateCUIT($cuit) {
4 // Odstráni akékoľvek nečíselné znaky
5 $cleanCuit = preg_replace('/\D/', '', $cuit);
6
7 // Skontroluje, či má presne 11 číslic
8 if (strlen($cleanCuit) !== 11) {
9 return false;
10 }
11
12 // Extrahuje časti
13 $typeCode = substr($cleanCuit, 0, 2);
14 $number = substr($cleanCuit, 2, 8);
15 $providedVerificationDigit = intval(substr($cleanCuit, 10, 1));
16
17 // Vypočíta overovaciu číslicu
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// Príklad použitia
39echo validateCUIT('30-12345678-1') ? 'Platný' : 'Neplatný';
40?>
41Java
1// Generovanie a validácia CUIT v Jave
2import java.util.Random;
3
4public class CUITUtils {
5
6 // Kódy typov subjektov
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 // Vygeneruje platný CUIT
13 public static String generateCUIT(String entityType) {
14 int typeCode;
15
16 // Určí kód typu podľa typu subjektu
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 // Vygeneruje náhodné 8-miestne číslo
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 // Vypočíta overovaciu číslicu
41 String digits = String.format("%02d%s", typeCode, number.toString());
42 int verificationDigit = calculateVerificationDigit(digits);
43
44 // Formátuje a vráti CUIT
45 return String.format("%02d-%s-%d", typeCode, number.toString(), verificationDigit);
46 }
47
48 // Vypočíta overovaciu číslicu
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 // Validuje CUIT
69 public static boolean validateCUIT(String cuit) {
70 // Odstráni akékoľvek nečíselné znaky
71 String cleanCuit = cuit.replaceAll("\\D", "");
72
73 // Skontroluje, či má presne 11 číslic
74 if (cleanCuit.length() != 11) {
75 return false;
76 }
77
78 // Extrahuje overovaciu číslicu
79 int providedVerificationDigit = Character.getNumericValue(cleanCuit.charAt(10));
80
81 // Vypočíta očakávanú overovaciu číslicu
82 int calculatedVerificationDigit = calculateVerificationDigit(cleanCuit.substring(0, 10));
83
84 // Porovná overovacie číslice
85 return calculatedVerificationDigit == providedVerificationDigit;
86 }
87
88 public static void main(String[] args) {
89 // Príklad použitia
90 String generatedCUIT = generateCUIT("COMPANY");
91 System.out.println("Vygenerovaný CUIT: " + generatedCUIT);
92 System.out.println("Je platný: " + validateCUIT(generatedCUIT));
93 }
94}
95C#
1using System;
2using System.Text.RegularExpressions;
3
4public class CUITValidator
5{
6 // Validuje CUIT
7 public static bool ValidateCUIT(string cuit)
8 {
9 // Odstráni akékoľvek nečíselné znaky
10 string cleanCuit = Regex.Replace(cuit, @"\D", "");
11
12 // Skontroluje, či má presne 11 číslic
13 if (cleanCuit.Length != 11)
14 {
15 return false;
16 }
17
18 // Extrahuje overovaciu číslicu
19 int providedVerificationDigit = int.Parse(cleanCuit.Substring(10, 1));
20
21 // Vypočíta očakávanú overovaciu číslicu
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 // Formátuje CUIT so správnymi oddeľovačmi
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; // Vráti pôvodný, ak nemá 11 číslic
57 }
58
59 return $"{cleanCuit.Substring(0, 2)}-{cleanCuit.Substring(2, 8)}-{cleanCuit.Substring(10, 1)}";
60 }
61}
62Pozadie: Prečo Argentina prijala systém CUIT
Pred rokom 1990 bola daňová identifikácia v Argentíne fragmentovaná - rôzne agentúry používali nekompatibilné systémy číslovania, čo sťažovalo sledovanie daňových poplatníkov naprieč databázami. Daňové úniky boli rozšírené, čiastočne preto, lebo nedostatok štandardizácie sťažoval presadzovanie.
AFIP zaviedol CUIT začiatkom 90. rokov ako súčasť širších ekonomických reforiem počas administratívy prezidenta Carlosa Menema. Načasovanie súviselo s plánom menovej konvertibility Argentíny, ktorý naviazal peso na americký dolár a vyžadoval prísnejšiu fiškálnu kontrolu.
Systém sa rýchlo vyvíjal:
- Začiatok 90. rokov: Zavedený pre podniky a samostatne zárobkovo činné osoby
- Polovica 90. rokov: Rozšírený na zamestnancov, vytvorenie univerzálneho registra daňových poplatníkov
- Koniec 90. rokov: Integrácia s elektronickým podávaním - významný technický úspech danej doby
- 2000 a ďalej: Stal sa povinným pre bankovníctvo, pracovné zmluvy a nakoniec elektronický obchod
V súčasnosti nemôžete otvoriť podnikový bankový účet, podpísať pracovnú zmluvu alebo vydať elektronickú faktúru v Argentíne bez CUIT. Stal sa základným identifikátorom celej formálnej ekonomiky, podobne ako čísla sociálneho zabezpečenia v Spojených štátoch - avšak s prísnejšími právnymi ochranami súkromia a obmedzeniami použitia podľa argentínskeho Zákona o ochrane osobných údajov 25,326.
Často kladené otázky
Čo je CUIT číslo v Argentíne?
CUIT (Código Único de Identificación Tributaria) je argentínske daňové identifikačné číslo pre fyzické a právnické osoby. Je to 11-miestny kód vo formáte XX-XXXXXXXX-X, ktorý AFIP (federálny daňový úrad) priradí každému, kto potrebuje vykonávať formálnu ekonomickú činnosť - od otvorenia bankového účtu až po vystavovanie faktúr.
Ako môžem skontrolovať, či je CUIT skutočný alebo falošný?
Naša pomôcka overuje matematickú štruktúru - správny formát, platný kód entity a presný kontrolný znak. Avšak nemôže potvrdiť, či je CUIT zaregistrovaný na AFIP. Pre úradné overenie použite službu Constancia de Inscripción od AFIP, ktorá dopytuje ich databázu. Našu pomôcku si môžete predstaviť ako kontrolu pravopisu: zachytí formálne chyby, ale neoveruje autenticitu.
Aký je rozdiel medzi CUIT a CUIL?
Oba používajú identický 11-miestny formát a rovnaký validačný algoritmus. Rozdiel je:
- CUIT: Pre daňovníkov vykonávajúcich ekonomické aktivity (podniky, samostatne zárobkovo činné osoby, freelanceri)
- CUIL: Pre zamestnancov pracujúcich na základe pracovnej zmluvy bez nezávislého podnikania
V praxi mnoho ľudí používa svoj CUIL, keď sa ich pýtajú na CUIT vo formulároch, a systémy ich často akceptujú vzájomne zameniteľne. Technický rozdiel je dôležitejší v právnych a účtovných kontextoch než v bežnom použití.
Môžem použiť generované CUIT pre reálne transakcie?
Rozhodne nie. Generované CUIT sú matematicky platné, ale nie sú zaregistrované na AFIP. Ich použitie pre úradné dokumenty, zmluvy alebo daňové podania je podvodom podľa argentínskeho práva. Použite ich len pre:
- Vývoj softvéru a testovanie
- QA a stagingové prostredia
- Vzdelávacie ukážky
- Validáciu integrity dát
Prečo kód typu 30 platí pre viaceré typy entít?
AFIP zjednodušil klasifikáciu entít zoskupením podobných entít pod kód 30 (spoločnosti, nadácie, vládne agentúry, trusty). Skutočné rozlíšenie typu entity sa deje v internom registračnom systéme AFIP, nie v samotnom CUIT. Toto návrhové riešenie uprednostnilo jednoduchosť pred detailnou klasifikáciou - kompromis, ktorý systém zjednodušuje, ale menej dokumentuje.
Ako presne dokáže kontrolný znak zachytiť chyby?
Algoritmus modulo-11 s váhovými faktormi zachytí približne 90% jednomiestnych chýb a 98% chýb transpozície (zámeny susedných číslic). Nezachytí všetky chyby - napríklad ak vymeníte dve číslice, ktoré majú náhodou rovnaké váhové faktory, kontrolný znak zostane platný. Ale pre typické chyby pri zadávaní dát je vysoko efektívny.
Strácajú CUIT platnosť alebo sa menia?
CUIT sú trvalé počas života daňovníka. Výnimky zahŕňajú:
- Zmeny identity pohlavia (Argentína umožňuje aktualizáciu CUIT podľa pohlavia)
- Významné právne reštrukturalizácie (zlúčenie spoločností môže vyvolať nové CUIT)
- Podvod alebo krádež identity (AFIP môže zneplatniť kompromitované CUIT)
Na rozdiel od niektorých krajín, kde sa daňové identifikátory pravidelne obnovujú, Argentína navrhla CUIT ako trvalé identifikátory na zníženie administratívnej záťaže.
Čo sa stane, ak zadám CUIT bez pomlčiek?
Väčšina argentínskych systémov akceptuje CUIT s pomlčkami aj bez nich - základné overenie odstráni formátovacie znaky pred kontrolou číslic. Naša validácia zvláda oba formáty: 30-12345678-1 a 30123456781 sú spracované identicky. Pri integrácii s API si skontrolujte ich dokumentáciu; niektoré vyžadujú presný formát, iné vstup normalizujú automaticky.
Môžu zahraničné spoločnosti získať argentínske CUIT?
Áno. Zahraničné subjekty vykonávajúce podnikanie v Argentíne dostanú CUIT s kódom typu 30, rovnako ako domáce spoločnosti. Musia sa zaregistrovať na AFIP a typicky potrebujú miestneho právneho zástupcu. CUIT prepojí ich zahraničné daňové ID v záznamoch AFIP, čo umožňuje dodržiavanie cezhraničných daňových zmlúv.
Ako generovať testovacie CUIT pre rôzne typy entít?
Vyberte typ entity z rozbaľovacieho menu (Spoločnosť, Fyzická osoba muž/žena, Združenie atď.) a kliknite na "Generovať CUIT". Nástroj automaticky priradí správny kód typu (30 pre spoločnosti, 20 pre mužov, 27 pre ženy, 33 pre združenia) a vypočíta správny kontrolný znak. Generujte ľubovoľný počet - pre testovacie účely nie je limit.
Oficiálne referencie a ďalšie zdroje
-
Federálny úrad pre verejné príjmy (AFIP) - Argentínsky oficiálny daňový úrad https://www.afip.gob.ar/
-
AFIP Potvrdenie o registrácii - Oficiálna overovacia služba CUIT https://www.afip.gob.ar/genericos/consultaCUIT/
-
Zákon 11.683 o daňovom konaní - Daňový procesný zákon stanovujúci požiadavky CUIT Úradný vestník Argentínskej republiky
-
Všeobecné nariadenie AFIP 1817/2005 - Postupy registrácie a identifikácie Oficiálna dokumentácia AFIP
-
Zákon 25.326 o ochrane osobných údajov - Zákon o ochrane osobných údajov upravujúci používanie CUIT https://www.argentina.gob.ar/aaip/datospersonales
-
Ekonomická komisia OSN pre Latinskú Ameriku a Karibik - "Daňová politika v Latinskej Amerike: Hodnotenie a smernice pre reformu" Gómez Sabaini, J.C., & Morán, D. (2016) - Komparatívna analýza daňových systémov vrátane Argentíny
-
Žurnál daňovej správy - Výskum daňových identifikačných systémov a algoritmov kontrolných číslic https://www.jota.website/
Začnite s validáciou CUIT
Či už budujete platobnú bránu pre argentínskych obchodníkov, migrujete staré databázy zákazníkov alebo testujete súlad vašej e-commerce platformy s požiadavkami AFIP, tento nástroj vám pomôže pracovať s CUIT identifikátormi s istotou.
Generujte testovacie údaje, ktoré nenarušia vaše stagingové prostredie. Validujte datasety pred migráciou. Pochopte algoritmus argentínskeho daňového identifikačného systému.
Žiadne API kľúče. Žiadne obmedzenia prenosových rýchlostí. Žiadne zbytočné funkcie. Len spoľahlivá generácia a validácia CUIT, keď ich potrebujete.