Alat Penjana dan Pengesah CUIT/CUIL Argentina
Hasilkan nombor CUIT/CUIL Argentina yang sah untuk ujian atau sahkan yang sedia ada. Alat mudah untuk pemaju yang bekerja dengan nombor pengenalan cukai dan buruh Argentina.
Penjana CUIT/CUIL
Masukkan nombor DNI 8 digit atau gunakan penjana rawak
CUIT/CUIL yang Dihasilkan
Dokumentasi
Penjana dan Pengesah CUIT/CUIL Argentina
Pengenalan
CUIT (Clave Única de Identificación Tributaria) dan CUIL (Clave Única de Identificación Laboral) Argentina adalah nombor pengenalan unik yang digunakan di Argentina untuk tujuan cukai dan pekerjaan, masing-masing. Kod 11-digit ini adalah penting bagi individu dan perniagaan untuk beroperasi secara sah dalam sistem ekonomi Argentina. Alat Penjana dan Pengesah CUIT/CUIL kami menyediakan cara yang mudah dan berkesan untuk menjana nombor CUIT/CUIL yang sah untuk tujuan ujian dan mengesahkan nombor yang sedia ada untuk memastikan mereka mematuhi format rasmi dan algoritma pengesahan.
Sama ada anda seorang pemaju yang menguji aplikasi yang mengendalikan ID cukai Argentina, seorang pakar QA yang mengesahkan fungsi sistem, atau sekadar perlu memahami cara nombor pengenalan ini berfungsi, alat ini menawarkan penyelesaian yang mudah tanpa kerumitan yang tidak perlu. Alat ini mempunyai dua fungsi utama: penjana yang mencipta nombor CUIT/CUIL yang sah secara rawak atau berdasarkan parameter tertentu, dan pengesah yang mengesahkan sama ada nombor CUIT/CUIL yang diberikan mengikuti format dan peraturan pengiraan yang betul.
Struktur dan Pengiraan CUIT/CUIL
Memahami Format
Nombor CUIT/CUIL yang sah terdiri daripada 11 digit yang biasanya dipaparkan dalam format XX-XXXXXXXX-X:
-
Kod Jenis (2 digit pertama): Menunjukkan jenis entiti
- 20, 23, 24: Individu lelaki (CUIL)
- 27: Individu perempuan (CUIL)
- 30, 33, 34: Syarikat dan organisasi (CUIT)
-
Nombor DNI (8 digit tengah): Untuk individu, ini adalah nombor dokumen pengenalan nasional mereka (DNI), ditambah dengan sifar di hadapan jika perlu untuk mencapai 8 digit. Untuk syarikat, ini adalah nombor unik yang ditetapkan.
-
Digit Pengesahan (digit terakhir): Digit semak yang dikira menggunakan algoritma tertentu untuk mengesahkan keseluruhan nombor.
Pengiraan Digit Pengesahan
Digit pengesahan dikira menggunakan algoritma berikut:
- Ambil 10 digit pertama CUIT/CUIL (kod jenis + DNI)
- Kalikan setiap digit dengan berat yang sepadan dari urutan ini: 5, 4, 3, 2, 7, 6, 5, 4, 3, 2
- Jumlahkan semua produk yang terhasil
- Kira 11 tolak baki jumlah dibahagi dengan 11
- Jika hasilnya 11, digit pengesahan adalah 0
- Jika hasilnya 10, digit pengesahan adalah 9
- Jika tidak, hasilnya adalah digit pengesahan
Secara matematik, ini boleh dinyatakan sebagai:
Di mana:
- adalah digit pengesahan
- adalah digit ke- dari 10 digit pertama
- adalah berat yang sepadan dari urutan [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]
- Kes khas: jika maka , jika maka
Panduan Langkah demi Langkah
Menggunakan Penjana
-
Pilih tab "Penjana" di bahagian atas antara muka alat.
-
Pilih Kod Jenis dari menu dropdown:
- 20: Lelaki (CUIL)
- 23: Perniagaan (CUIT)
- 24: Perniagaan Sementara (CUIT)
- 27: Perempuan (CUIL)
- 30: Korporasi (CUIT)
- 33: Persatuan Sivil (CUIT)
- 34: Yayasan (CUIT)
-
Masukkan Nombor DNI (pilihan):
- Masukkan nombor DNI 8 digit dalam medan yang disediakan
- Jika dibiarkan kosong, alat akan menggunakan DNI yang dijana secara rawak
- Jika anda memasukkan kurang dari 8 digit, sistem akan menambah dengan sifar di hadapan
-
Jana DNI Rawak (pilihan):
- Klik butang "Rawak" untuk menjana nombor DNI 8 digit secara rawak
-
Lihat CUIT/CUIL yang Dihasilkan:
- Alat secara automatik memaparkan CUIT/CUIL yang sah berdasarkan input anda
- Format akan menjadi XX-XXXXXXXX-X dengan digit pengesahan yang betul
-
Salin Hasil:
- Klik ikon salin untuk menyalin CUIT/CUIL yang dihasilkan ke papan klip anda
- Mesej pengesahan akan muncul apabila disalin dengan berjaya
Menggunakan Pengesah
-
Pilih tab "Pengesah" di bahagian atas antara muka alat.
-
Masukkan CUIT/CUIL untuk Disahkan:
- Masukkan CUIT/CUIL dalam format XX-XXXXXXXX-X
- Alat akan secara automatik memformat input anda dengan tanda sempang semasa anda menaip
- Anda juga boleh memasukkan nombor tanpa tanda sempang (XXXXXXXXXXX)
-
Klik Butang "Sahkan":
- Alat akan memeriksa format, kod jenis, dan digit pengesahan
-
Lihat Hasil Pengesahan:
- Untuk nombor CUIT/CUIL yang sah, mesej kejayaan berwarna hijau akan muncul
- Untuk nombor yang tidak sah, mesej ralat berwarna merah akan menerangkan isu tersebut:
- Format tidak sah (mestilah XX-XXXXXXXX-X)
- Kod jenis tidak sah (mestilah salah satu: 20, 23, 24, 27, 30, 33, 34)
- Digit pengesahan tidak sah
-
Maklumat Tambahan:
- Untuk nombor yang sah, alat memaparkan pecahan komponen:
- Kod jenis dan maksudnya
- Nombor DNI
- Digit pengesahan
- Untuk nombor yang sah, alat memaparkan pecahan komponen:
Kes Penggunaan
Pembangunan dan Ujian
-
Pembangunan Perisian: Jana nombor CUIT/CUIL yang sah untuk menguji aplikasi yang mengendalikan pengenalan cukai Argentina, seperti:
- Platform e-dagang
- Perisian perakaunan
- Sistem pengurusan HR
- Portal perkhidmatan kerajaan
- Aplikasi perbankan
-
Pengisian Pangkalan Data: Cipta data ujian yang realistik untuk sistem yang menyimpan maklumat pengguna Argentina, memastikan bahawa sekatan dan peraturan pengesahan pangkalan data berfungsi dengan betul.
-
Ujian Pengesahan Borang: Uji pengesahan input untuk borang web yang mengumpul maklumat CUIT/CUIL, mengesahkan bahawa mesej ralat yang betul muncul untuk entri yang tidak sah.
-
Ujian API: Jana payload yang sah untuk titik akhir API yang memerlukan nombor CUIT/CUIL, memastikan bahawa ujian integrasi anda menggunakan data yang sah.
-
Automasi QA: Sertakan penjanaan CUIT/CUIL ke dalam skrip ujian automatik untuk mencipta kes ujian dinamik daripada menggunakan data ujian statik.
Tujuan Pendidikan
-
Belajar Algoritma Pengesahan: Fahami cara algoritma digit semak berfungsi dalam amalan dengan melihat proses pengesahan CUIT/CUIL dalam tindakan.
-
Mengajar Pengesahan Data: Gunakan sebagai contoh pendidikan apabila mengajar teknik pengesahan borang kepada pemaju baru.
-
Memahami Keperluan Perniagaan Argentina: Pelajari tentang sistem pengenalan yang digunakan di Argentina untuk pembangunan perniagaan antarabangsa.
Alternatif
Walaupun alat kami menyediakan cara yang mudah untuk menjana dan mengesahkan nombor CUIT/CUIL, terdapat pendekatan alternatif yang mungkin anda pertimbangkan:
-
Pengesahan Kerajaan Rasmi: Untuk persekitaran pengeluaran, sentiasa sahkan nombor CUIT/CUIL terhadap pangkalan data rasmi AFIP (Administración Federal de Ingresos Públicos) apabila mungkin.
-
Pustaka dan Pakej: Beberapa bahasa pengaturcaraan mempunyai pustaka yang direka khusus untuk pengesahan ID cukai Argentina:
- JavaScript: pakej npm
validar-cuit
- PHP: pustaka
afip-php
- Python: pakej
py-cuit
- JavaScript: pakej npm
-
Pengiraan Manual: Untuk tujuan pendidikan, anda mungkin mengira digit pengesahan secara manual menggunakan algoritma yang diterangkan sebelum ini.
-
Perkhidmatan Pengesahan Perniagaan yang Komprehensif: Untuk aplikasi perusahaan, pertimbangkan untuk menggunakan perkhidmatan pengesahan komprehensif yang bukan sahaja memeriksa format tetapi juga mengesahkan kewujudan dan status entiti yang berkaitan dengan CUIT/CUIL.
Sejarah Sistem CUIT/CUIL
Sistem pengenalan CUIT/CUIL di Argentina telah berkembang dengan ketara sejak penubuhannya:
Asal Usul dan Pelaksanaan
CUIT (Clave Única de Identificación Tributaria) pertama kali diperkenalkan di Argentina pada tahun 1970-an sebagai sebahagian daripada usaha untuk memodenkan sistem pengumpulan cukai. Pentadbiran Persekutuan Hasil Awam (AFIP) melaksanakan pengenalan unik ini untuk mengesan pembayar cukai dengan lebih berkesan dan mengurangkan pengelakan cukai.
CUIL (Clave Única de Identificación Laboral) kemudian diperkenalkan untuk mengenal pasti pekerja dalam sistem keselamatan sosial, mewujudkan perbezaan antara pengenalan cukai dan pengenalan buruh sambil mengekalkan format yang konsisten.
Evolusi dan Digitalisasi
Pada tahun 1990-an, ketika Argentina mengalami reformasi ekonomi yang ketara, sistem CUIT/CUIL menjadi semakin penting untuk mengesan aktiviti ekonomi. Sistem ini telah didigitalisasi dengan lebih lanjut, dan sistem pengesahan dalam talian telah dilaksanakan.
Awal tahun 2000-an menyaksikan pengintegrasian sistem CUIT/CUIL dengan pelbagai perkhidmatan kerajaan digital, menjadikannya komponen penting dalam inisiatif e-kerajaan Argentina. Tempoh ini juga menyaksikan penstandardan algoritma pengesahan dan format yang kekal digunakan hingga hari ini.
Perkembangan Terkini
Dalam beberapa tahun kebelakangan ini, AFIP telah meningkatkan proses keselamatan dan pengesahan untuk nombor CUIT/CUIL, melaksanakan sistem pengesahan yang lebih canggih dan mengintegrasikannya dengan pangkalan data kerajaan lain. Sistem ini kini memainkan peranan penting dalam usaha Argentina untuk memerangi pengelakan cukai dan memformalkan ekonomi.
Hari ini, CUIT/CUIL digunakan bukan sahaja untuk tujuan cukai dan pekerjaan tetapi juga untuk pelbagai aktiviti termasuk perbankan, transaksi hartanah, perkhidmatan utiliti, dan pembelian dalam talian, menjadikannya pengenalan penting bagi individu dan perniagaan yang beroperasi di Argentina.
Contoh Kod
Python
1def calculate_verification_digit(type_code, dni):
2 # Tukar kepada string dan pastikan DNI adalah 8 digit dengan sifar di hadapan
3 type_code_str = str(type_code)
4 dni_str = str(dni).zfill(8)
5
6 # Gabungkan kod jenis dan DNI
7 digits = type_code_str + dni_str
8
9 # Berat untuk setiap posisi
10 weights = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]
11
12 # Kira jumlah produk
13 sum_products = sum(int(digits[i]) * weights[i] for i in range(10))
14
15 # Kira digit pengesahan
16 verification_digit = 11 - (sum_products % 11)
17
18 # Kes khas
19 if verification_digit == 11:
20 verification_digit = 0
21 elif verification_digit == 10:
22 verification_digit = 9
23
24 return verification_digit
25
26def generate_cuit_cuil(type_code, dni=None):
27 import random
28
29 # Kod jenis yang sah
30 valid_type_codes = [20, 23, 24, 27, 30, 33, 34]
31
32 if type_code not in valid_type_codes:
33 raise ValueError(f"Invalid type code. Must be one of: {valid_type_codes}")
34
35 # Jana DNI rawak jika tidak diberikan
36 if dni is None:
37 dni = random.randint(10000000, 99999999)
38
39 # Kira digit pengesahan
40 verification_digit = calculate_verification_digit(type_code, dni)
41
42 # Format CUIT/CUIL
43 return f"{type_code}-{str(dni).zfill(8)}-{verification_digit}"
44
45def validate_cuit_cuil(cuit_cuil):
46 # Buang tanda sempang jika ada
47 cuit_cuil_clean = cuit_cuil.replace("-", "")
48
49 # Semak format asas
50 if not cuit_cuil_clean.isdigit() or len(cuit_cuil_clean) != 11:
51 return False, "Invalid format"
52
53 # Ekstrak bahagian
54 type_code = int(cuit_cuil_clean[0:2])
55 dni = int(cuit_cuil_clean[2:10])
56 verification_digit = int(cuit_cuil_clean[10])
57
58 # Sahkan kod jenis
59 valid_type_codes = [20, 23, 24, 27, 30, 33, 34]
60 if type_code not in valid_type_codes:
61 return False, "Invalid type code"
62
63 # Kira dan bandingkan digit pengesahan
64 calculated_digit = calculate_verification_digit(type_code, dni)
65 if calculated_digit != verification_digit:
66 return False, "Invalid verification digit"
67
68 return True, "Valid CUIT/CUIL"
69
70# Contoh penggunaan
71print(generate_cuit_cuil(20, 12345678)) # Jana untuk DNI tertentu
72print(generate_cuit_cuil(27)) # Jana dengan DNI rawak
73print(validate_cuit_cuil("20-12345678-9")) # Sahkan CUIT/CUIL
74
JavaScript
1function calculateVerificationDigit(typeCode, dni) {
2 // Tukar kepada string dan pastikan DNI adalah 8 digit dengan sifar di hadapan
3 const typeCodeStr = typeCode.toString();
4 const dniStr = dni.toString().padStart(8, '0');
5
6 // Gabungkan kod jenis dan DNI
7 const digits = typeCodeStr + dniStr;
8
9 // Berat untuk setiap posisi
10 const weights = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2];
11
12 // Kira jumlah produk
13 let sumProducts = 0;
14 for (let i = 0; i < 10; i++) {
15 sumProducts += parseInt(digits[i]) * weights[i];
16 }
17
18 // Kira digit pengesahan
19 let verificationDigit = 11 - (sumProducts % 11);
20
21 // Kes khas
22 if (verificationDigit === 11) {
23 verificationDigit = 0;
24 } else if (verificationDigit === 10) {
25 verificationDigit = 9;
26 }
27
28 return verificationDigit;
29}
30
31function generateCuitCuil(typeCode, dni) {
32 // Kod jenis yang sah
33 const validTypeCodes = [20, 23, 24, 27, 30, 33, 34];
34
35 if (!validTypeCodes.includes(typeCode)) {
36 throw new Error(`Invalid type code. Must be one of: ${validTypeCodes.join(', ')}`);
37 }
38
39 // Jana DNI rawak jika tidak diberikan
40 if (dni === undefined) {
41 dni = Math.floor(Math.random() * 90000000) + 10000000;
42 }
43
44 // Kira digit pengesahan
45 const verificationDigit = calculateVerificationDigit(typeCode, dni);
46
47 // Format CUIT/CUIL
48 return `${typeCode}-${dni.toString().padStart(8, '0')}-${verificationDigit}`;
49}
50
51function validateCuitCuil(cuitCuil) {
52 // Buang tanda sempang jika ada
53 const cuitCuilClean = cuitCuil.replace(/-/g, '');
54
55 // Semak format asas
56 if (!/^\d{11}$/.test(cuitCuilClean)) {
57 return { isValid: false, errorMessage: 'Invalid format' };
58 }
59
60 // Ekstrak bahagian
61 const typeCode = parseInt(cuitCuilClean.substring(0, 2));
62 const dni = parseInt(cuitCuilClean.substring(2, 10));
63 const verificationDigit = parseInt(cuitCuilClean.substring(10, 11));
64
65 // Sahkan kod jenis
66 const validTypeCodes = [20, 23, 24, 27, 30, 33, 34];
67 if (!validTypeCodes.includes(typeCode)) {
68 return { isValid: false, errorMessage: 'Invalid type code' };
69 }
70
71 // Kira dan bandingkan digit pengesahan
72 const calculatedDigit = calculateVerificationDigit(typeCode, dni);
73 if (calculatedDigit !== verificationDigit) {
74 return { isValid: false, errorMessage: 'Invalid verification digit' };
75 }
76
77 return { isValid: true };
78}
79
80// Contoh penggunaan
81console.log(generateCuitCuil(20, 12345678)); // Jana untuk DNI tertentu
82console.log(generateCuitCuil(27)); // Jana dengan DNI rawak
83console.log(validateCuitCuil("20-12345678-9")); // Sahkan CUIT/CUIL
84
Java
1import java.util.Arrays;
2import java.util.List;
3import java.util.Random;
4
5public class CuitCuilUtils {
6 private static final List<Integer> VALID_TYPE_CODES = Arrays.asList(20, 23, 24, 27, 30, 33, 34);
7 private static final int[] WEIGHTS = {5, 4, 3, 2, 7, 6, 5, 4, 3, 2};
8
9 public static int calculateVerificationDigit(int typeCode, int dni) {
10 // Tukar kepada string dan pastikan DNI adalah 8 digit dengan sifar di hadapan
11 String typeCodeStr = String.valueOf(typeCode);
12 String dniStr = String.format("%08d", dni);
13
14 // Gabungkan kod jenis dan DNI
15 String digits = typeCodeStr + dniStr;
16
17 // Kira jumlah produk
18 int sumProducts = 0;
19 for (int i = 0; i < 10; i++) {
20 sumProducts += Character.getNumericValue(digits.charAt(i)) * WEIGHTS[i];
21 }
22
23 // Kira digit pengesahan
24 int verificationDigit = 11 - (sumProducts % 11);
25
26 // Kes khas
27 if (verificationDigit == 11) {
28 verificationDigit = 0;
29 } else if (verificationDigit == 10) {
30 verificationDigit = 9;
31 }
32
33 return verificationDigit;
34 }
35
36 public static String generateCuitCuil(int typeCode, Integer dni) {
37 if (!VALID_TYPE_CODES.contains(typeCode)) {
38 throw new IllegalArgumentException("Invalid type code. Must be one of: " + VALID_TYPE_CODES);
39 }
40
41 // Jana DNI rawak jika tidak diberikan
42 if (dni == null) {
43 Random random = new Random();
44 dni = 10000000 + random.nextInt(90000000);
45 }
46
47 // Kira digit pengesahan
48 int verificationDigit = calculateVerificationDigit(typeCode, dni);
49
50 // Format CUIT/CUIL
51 return String.format("%d-%08d-%d", typeCode, dni, verificationDigit);
52 }
53
54 public static ValidationResult validateCuitCuil(String cuitCuil) {
55 // Buang tanda sempang jika ada
56 String cuitCuilClean = cuitCuil.replace("-", "");
57
58 // Semak format asas
59 if (!cuitCuilClean.matches("\\d{11}")) {
60 return new ValidationResult(false, "Invalid format");
61 }
62
63 // Ekstrak bahagian
64 int typeCode = Integer.parseInt(cuitCuilClean.substring(0, 2));
65 int dni = Integer.parseInt(cuitCuilClean.substring(2, 10));
66 int verificationDigit = Integer.parseInt(cuitCuilClean.substring(10, 11));
67
68 // Sahkan kod jenis
69 if (!VALID_TYPE_CODES.contains(typeCode)) {
70 return new ValidationResult(false, "Invalid type code");
71 }
72
73 // Kira dan bandingkan digit pengesahan
74 int calculatedDigit = calculateVerificationDigit(typeCode, dni);
75 if (calculatedDigit != verificationDigit) {
76 return new ValidationResult(false, "Invalid verification digit");
77 }
78
79 return new ValidationResult(true, null);
80 }
81
82 public static class ValidationResult {
83 private final boolean isValid;
84 private final String errorMessage;
85
86 public ValidationResult(boolean isValid, String errorMessage) {
87 this.isValid = isValid;
88 this.errorMessage = errorMessage;
89 }
90
91 public boolean isValid() {
92 return isValid;
93 }
94
95 public String getErrorMessage() {
96 return errorMessage;
97 }
98 }
99
100 public static void main(String[] args) {
101 // Contoh penggunaan
102 System.out.println(generateCuitCuil(20, 12345678)); // Jana untuk DNI tertentu
103 System.out.println(generateCuitCuil(27, null)); // Jana dengan DNI rawak
104 System.out.println(validateCuitCuil("20-12345678-9").isValid()); // Sahkan CUIT/CUIL
105 }
106}
107
PHP
1<?php
2
3function calculateVerificationDigit($typeCode, $dni) {
4 // Tukar kepada string dan pastikan DNI adalah 8 digit dengan sifar di hadapan
5 $typeCodeStr = (string)$typeCode;
6 $dniStr = str_pad((string)$dni, 8, '0', STR_PAD_LEFT);
7
8 // Gabungkan kod jenis dan DNI
9 $digits = $typeCodeStr . $dniStr;
10
11 // Berat untuk setiap posisi
12 $weights = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2];
13
14 // Kira jumlah produk
15 $sumProducts = 0;
16 for ($i = 0; $i < 10; $i++) {
17 $sumProducts += (int)$digits[$i] * $weights[$i];
18 }
19
20 // Kira digit pengesahan
21 $verificationDigit = 11 - ($sumProducts % 11);
22
23 // Kes khas
24 if ($verificationDigit == 11) {
25 $verificationDigit = 0;
26 } else if ($verificationDigit == 10) {
27 $verificationDigit = 9;
28 }
29
30 return $verificationDigit;
31}
32
33function generateCuitCuil($typeCode, $dni = null) {
34 // Kod jenis yang sah
35 $validTypeCodes = [20, 23, 24, 27, 30, 33, 34];
36
37 if (!in_array($typeCode, $validTypeCodes)) {
38 throw new Exception("Invalid type code. Must be one of: " . implode(', ', $validTypeCodes));
39 }
40
41 // Jana DNI rawak jika tidak diberikan
42 if ($dni === null) {
43 $dni = rand(10000000, 99999999);
44 }
45
46 // Kira digit pengesahan
47 $verificationDigit = calculateVerificationDigit($typeCode, $dni);
48
49 // Format CUIT/CUIL
50 return sprintf("%d-%08d-%d", $typeCode, $dni, $verificationDigit);
51}
52
53function validateCuitCuil($cuitCuil) {
54 // Buang tanda sempang jika ada
55 $cuitCuilClean = str_replace('-', '', $cuitCuil);
56
57 // Semak format asas
58 if (!preg_match('/^\d{11}$/', $cuitCuilClean)) {
59 return ['isValid' => false, 'errorMessage' => 'Invalid format'];
60 }
61
62 // Ekstrak bahagian
63 $typeCode = (int)substr($cuitCuilClean, 0, 2);
64 $dni = (int)substr($cuitCuilClean, 2, 8);
65 $verificationDigit = (int)substr($cuitCuilClean, 10, 1);
66
67 // Sahkan kod jenis
68 $validTypeCodes = [20, 23, 24, 27, 30, 33, 34];
69 if (!in_array($typeCode, $validTypeCodes)) {
70 return ['isValid' => false, 'errorMessage' => 'Invalid type code'];
71 }
72
73 // Kira dan bandingkan digit pengesahan
74 $calculatedDigit = calculateVerificationDigit($typeCode, $dni);
75 if ($calculatedDigit !== $verificationDigit) {
76 return ['isValid' => false, 'errorMessage' => 'Invalid verification digit'];
77 }
78
79 return ['isValid' => true];
80}
81
82// Contoh penggunaan
83echo generateCuitCuil(20, 12345678) . "\n"; // Jana untuk DNI tertentu
84echo generateCuitCuil(27) . "\n"; // Jana dengan DNI rawak
85var_dump(validateCuitCuil("20-12345678-9")); // Sahkan CUIT/CUIL
86?>
87
Soalan Lazim
Apakah perbezaan antara CUIT dan CUIL?
CUIT (Clave Única de Identificación Tributaria) digunakan untuk tujuan pengenalan cukai dan diberikan kepada individu serta entiti undang-undang yang perlu membayar cukai di Argentina. CUIL (Clave Única de Identificación Laboral) khusus untuk pekerja dan digunakan untuk tujuan buruh dan keselamatan sosial. Walaupun mereka mempunyai format dan algoritma pengiraan yang sama, mereka berfungsi untuk tujuan pentadbiran yang berbeza.
Kod jenis mana yang digunakan untuk individu dan mana untuk syarikat?
Untuk individu:
- 20, 23, 24: Individu lelaki (CUIL)
- 27: Individu perempuan (CUIL)
Untuk syarikat dan organisasi:
- 30: Korporasi (CUIT)
- 33: Persatuan Sivil (CUIT)
- 34: Yayasan (CUIT)
Bagaimana digit pengesahan dikira?
Digit pengesahan dikira menggunakan algoritma jumlah berat. Setiap daripada 10 digit pertama didarab dengan berat yang sepadan (5, 4, 3, 2, 7, 6, 5, 4, 3, 2), dan hasilnya dijumlahkan. Digit pengesahan adalah 11 tolak baki apabila jumlah ini dibahagi dengan 11. Kes khas: jika hasilnya 11, digit pengesahan adalah 0; jika hasilnya 10, digit pengesahan adalah 9.
Bolehkah saya menggunakan alat ini untuk menjana nombor CUIT/CUIL yang rasmi dan sebenar?
Tidak, alat ini direka untuk tujuan ujian dan pendidikan sahaja. Nombor yang dihasilkan adalah sah secara matematik mengikut algoritma CUIT/CUIL tetapi tidak didaftarkan secara rasmi dengan pihak berkuasa cukai Argentina (AFIP). Untuk pendaftaran CUIT/CUIL rasmi, individu dan syarikat mesti mengikuti prosedur undang-undang yang betul melalui AFIP.
Mengapa pengesahan CUIT/CUIL saya gagal walaupun formatnya kelihatan betul?
Pengesahan boleh gagal atas beberapa sebab:
- Kod jenis bukan salah satu kod yang sah (20, 23, 24, 27, 30, 33, 34)
- Digit pengesahan tidak sepadan dengan nilai yang dikira berdasarkan algoritma
- Format tidak betul (mestilah XX-XXXXXXXX-X)
- Terdapat watak bukan numerik dalam input (selain daripada tanda sempang)
Adakah tanda sempang diperlukan dalam nombor CUIT/CUIL?
Walaupun nombor CUIT/CUIL biasanya ditulis dan dipaparkan dengan tanda sempang (XX-XXXXXXXX-X), tanda sempang bukanlah sebahagian daripada nombor sebenar untuk tujuan pengiraan. Pengesah kami menerima kedua-dua format (dengan atau tanpa tanda sempang) dan akan mengesahkan sama ada format tersebut sah.
Bolehkah nombor CUIT/CUIL mempunyai kurang daripada 8 digit dalam bahagian DNI?
Tidak, bahagian DNI mesti sentiasa tepat 8 digit. Jika DNI sebenar mempunyai kurang daripada 8 digit, ia mesti ditambah dengan sifar di hadapan untuk mencapai 8 digit. Sebagai contoh, jika DNI seseorang adalah 1234567, dalam CUIT/CUIL ia akan diwakili sebagai 01234567.
Bagaimana saya boleh mengesahkan jika CUIT/CUIL secara rasmi didaftarkan di Argentina?
Untuk mengesahkan sama ada CUIT/CUIL didaftarkan secara rasmi dan aktif, anda harus menggunakan laman web atau perkhidmatan rasmi AFIP (Administración Federal de Ingresos Públicos). Alat kami hanya mengesahkan kesahan matematik nombor tersebut, bukan status pendaftaran rasmi.
Bolehkah saya menggunakan alat ini dalam aplikasi komersial saya?
Ya, anda boleh mengintegrasikan algoritma dan logik yang ditunjukkan dalam alat ini ke dalam aplikasi komersial anda. Algoritma pengesahan CUIT/CUIL adalah standard awam. Walau bagaimanapun, untuk persekitaran pengeluaran, kami mengesyorkan melaksanakan pengendalian ralat yang betul dan mempertimbangkan pengesahan tambahan terhadap sumber rasmi apabila perlu.
Adakah alat ini menyimpan mana-mana nombor CUIT/CUIL yang dihasilkan atau disahkan?
Tidak, alat ini tidak menyimpan sebarang maklumat yang dimasukkan atau dihasilkan. Semua pemprosesan dilakukan di sisi klien dalam pelayar anda, dan tiada data yang dihantar atau disimpan di pelayan kami. Ini memastikan privasi dan keselamatan mana-mana maklumat yang anda masukkan.
Rujukan
-
AFIP (Administración Federal de Ingresos Públicos). "CUIT/CUIL/CDI." Laman Web Rasmi. https://www.afip.gob.ar/
-
Ministerio de Trabajo, Empleo y Seguridad Social. "CUIL - Clave Única de Identificación Laboral." https://www.argentina.gob.ar/trabajo
-
ANSES (Administración Nacional de la Seguridad Social). "Dapatkan CUIL saya." https://www.anses.gob.ar/
-
Boletín Oficial de la República Argentina. "Resolusi Umum AFIP 2854/2010: Prosedur. Clave Única de Identificación Tributaria (C.U.I.T.)."
-
Código Fiscal de la República Argentina. "Pengenalan dan Pendaftaran Pembayar Cukai."
Sedia untuk menjana atau mengesahkan nombor CUIT/CUIL Argentina? Cuba alat kami sekarang dan permudahkan proses ujian anda!
Maklum Balas
Klik toast maklum balas untuk mula memberi maklum balas tentang alat ini
Alat Berkaitan
Temui lebih banyak alat yang mungkin berguna untuk aliran kerja anda