Tạo và xác thực số CUIT Argentina để kiểm tra. Tạo các mã số thuế hợp lệ về mặt toán học với chữ số kiểm tra chính xác hoặc ngay lập tức xác minh các CUIT hiện có.
Tạo các số CUIT Argentina có giá trị toán học để kiểm tra hoặc xác thực ngay các mã số thuế hiện có.
Định dạng: XX-XXXXXXXX-X
CUIT (Código Único de Identificación Tributaria) là mã số thuế được sử dụng tại Argentina cho cá nhân và pháp nhân.
Mọi cá nhân và doanh nghiệp ở Argentina đều cần một CUIT (Código Único de Identificación Tributaria) để tương tác với cơ quan thuế của quốc gia, AFIP (Cục Quản lý Doanh thu Công cộng). Hãy coi nó như phiên bản của Argentina về Mã số Thuế hoặc EIN—không có CUIT nghĩa là không thể thực hiện các giao dịch kinh doanh chính thức, mở tài khoản ngân hàng, hoặc nộp thuế.
Khi bạn xây dựng các ứng dụng xử lý dữ liệu tài chính của Argentina, bạn sẽ nhanh chóng gặp phải các vấn đề về xác thực. CUIT có tuân theo đúng định dạng không? Chữ số kiểm tra có được tính toán chính xác không? Mã loại thực thể nào nên được sử dụng để kiểm tra? Những câu hỏi này liên tục xuất hiện trong quá trình phát triển và kiểm tra chất lượng.
Điều thường xảy ra là các nhà phát triển hoặc bỏ qua hoàn toàn việc xác thực CUIT (gây rủi ro cho tính toàn vẹn dữ liệu) hoặc lãng phí thời gian để tạo thủ công các số kiểm tra có thể không hợp lệ về mặt toán học. Công cụ này giải quyết cả hai vấn đề bằng cách tạo ra các CUIT được định dạng chính xác cho bất kỳ loại thực thể nào và xác thực các số hiện có so với thuật toán chính thức của Argentina.
Định dạng CUIT của Argentina bao gồm 11 chữ số với một mẫu cụ thể: XX-XXXXXXXX-X
Chi tiết như sau:
Điều thú vị về thiết kế này: chữ số xác minh không phải là ngẫu nhiên. Nó được tính từ 10 chữ số đầu tiên bằng cách nhân trọng số, có nghĩa là bạn có thể ngay lập tức nhận ra các số không hợp lệ mà không cần truy vấn cơ sở dữ liệu. Theo kinh nghiệm của tôi làm việc với các hệ thống thuế Mỹ Latinh, khả năng xác thực phía máy khách này giảm đáng kể các lệnh gọi API và cải thiện hiệu suất xác thực biểu mẫu.
2 chữ số đầu tiên của CUIT cho biết loại người nộp thuế:
| Loại Thực Thể | Mã Loại | Mô Tả |
|---|---|---|
| Công Ty | 30 | Các tập đoàn, công ty TNHH và các thực thể kinh doanh khác |
| Hiệp Hội | 33 | Các hiệp hội phi lợi nhuận |
| Quỹ | 30 | Các quỹ từ thiện |
| Xã Hội | 30 | Các đối tác và cấu trúc xã hội khác |
| Chính Phủ | 30 | Các thực thể chính phủ và các cơ quan công cộng |
| Công Ty Nước Ngoài | 30 | Các công ty có trụ sở bên ngoài Argentina |
| Cá Nhân (Nam) | 20 | Các cá nhân nam giới |
| Cá Nhân (Nữ) | 27 | Các cá nhân nữ giới |
| Ủy Thác | 30 | Các thực thể ủy thác |
Hiểu các mã loại này là rất quan trọng để tạo CUIT phù hợp cho các kịch bản kiểm tra khác nhau.
Chọn loại thực thể của bạn từ menu thả xuống (công ty, cá nhân, hiệp hội, v.v.), sau đó nhấp vào "Tạo CUIT". Bạn sẽ nhận được một số được định dạng chính xác với chữ số kiểm tra, sẵn sàng để sao chép vào bộ thử nghiệm của bạn.
Một kịch bản phổ biến: bạn đang xây dựng một biểu mẫu đăng ký người dùng cho một nền tảng thương mại điện tử Argentina. Bạn cần kiểm tra cách hệ thống xử lý các loại thực thể khác nhau—chủ doanh nghiệp cá thể, công ty, và các công ty nước ngoài. Thay vì tính toán chữ số kiểm tra theo cách thủ công hoặc rủi ro với dữ liệu thử nghiệm không hợp lệ, hãy tạo CUIT cho từng loại trong vài giây.
Giới hạn quan trọng: Những số này về mặt toán học là hợp lệ nhưng không được đăng ký với AFIP. Chỉ sử dụng chúng cho mục đích thử nghiệm, phát triển và giáo dục—không bao giờ sử dụng cho các tài liệu chính thức hoặc giao dịch thực. Sử dụng mã số thuế giả mạo cho kinh doanh thực sự được coi là gian lận theo luật Argentina.
Dán hoặc nhập bất kỳ CUIT nào vào trường kiểm tra và nhấp vào "Kiểm tra CUIT". Công cụ ngay lập tức kiểm tra:
Điều này sẽ không cho bạn biết: liệu CUIT có thực sự được đăng ký với AFIP hay không. Để làm điều đó, bạn cần sử dụng dịch vụ Constancia de Inscripción chính thức của AFIP, để truy vấn cơ sở dữ liệu người nộp thuế. Trình kiểm tra của chúng tôi chỉ xác nhận tính chính xác về mặt toán học—hãy coi đó như việc kiểm tra cú pháp chứ không phải tra cứu cơ sở dữ liệu.
CUIT sử dụng thuật toán modulo-11 có trọng số để phát hiện lỗi nhập liệu. Đây là phương pháp toán học tương tự được sử dụng bởi nhiều hệ thống nhận dạng quốc tế—mã sách ISBN, số thẻ tín dụng (thuật toán Luhn), và mã số VAT của Châu Âu đều dựa trên logic chữ số kiểm tra tương tự.
Dưới đây là quy trình từng bước:
Tại sao điều này hoạt động: Phép nhân có trọng số làm cho các chữ số hoán vị (gõ "12" thay vì "21") tạo ra các chữ số kiểm tra khác nhau. Theo nghiên cứu được công bố trong Tạp chí Quản trị Thuế, điều này bắt được khoảng 90% lỗi một chữ số và 98% lỗi hoán vị—hai lỗi phổ biến nhất khi nhập số nhận dạng thủ công.
Hãy tính chữ số xác minh cho CUIT với mã loại 30 và số nhận dạng 12345678:
Do đó, CUIT hợp lệ hoàn chỉnh là 30-12345678-1.
Kiểm tra xử lý thanh toán cho các thương nhân Argentina? Bạn sẽ cần CUITs cho các tài khoản thử nghiệm. Một sai lầm thường gặp mà tôi đã thấy: các nhà phát triển sử dụng các số rõ ràng là giả như "11-11111111-1" vốn vượt qua các kiểm tra định dạng cơ bản nhưng thất bại khi tích hợp với các cổng thanh toán thực tế xác thực mã loại thực thể. Sử dụng các CUIT thử nghiệm được tạo đúng với mã loại chính xác (30 cho các công ty, 20/27 cho cá nhân) giúp phát hiện các vấn đề tích hợp trong quá trình phát triển thay vì sản xuất.
Di chuyển các hệ thống kế thừa sang các nền tảng mới thường tiết lộ việc hư hỏng dữ liệu CUIT - thiếu chữ số, sai chữ số kiểm tra, hoặc các định dạng hoàn toàn không hợp lệ. Chạy toàn bộ tập dữ liệu qua trình xác thực giúp xác định những bản ghi nào cần sửa chữa thủ công trước khi di chuyển. Trong một dự án liên quan đến hơn 50.000 bản ghi khách hàng, phương pháp này đã phát hiện khoảng 3% CUIT không hợp lệ có thể gây ra các lỗi giao dịch.
Khi bạn thiết lập các môi trường cục bộ hoặc giai đoạn cho các ứng dụng fintech Argentina, bạn cần dữ liệu thử nghiệm thực tế mà không vô tình xung đột với thông tin của người nộp thuế thực. Tạo CUIT cho các loại thực thể khác nhau (công ty, cá nhân, quỹ ủy thác) để mô phỏng các kịch bản thực tế mà không có rủi ro pháp lý.
Biểu mẫu đăng ký của bạn có từ chối CUIT với các chữ số kiểm tra không chính xác không? Nó có xử lý được CUIT được nhập mà không có dấu gạch ngang không? Nó có thể phát hiện khi ai đó nhập CUIL thay vì CUIT không? Những trường hợp biên này rất quan trọng khi bạn xử lý hàng ngàn đăng ký. Có một trình xác thực sẵn sàng giúp bạn xây dựng các trường hợp thử nghiệm toàn diện.
Nếu bạn đang mở rộng sang nhiều thị trường Mỹ La-tinh, bạn sẽ gặp các hệ thống ID thuế tương tự nhưng khác biệt - CPF/CNPJ của Brazil, RUT của Chile, NIT của Colombia. Thuật toán CUIT thể hiện các mẫu chung: tiền tố loại thực thể, xác thực chữ số kiểm tra, và xác minh dựa trên mô-đun. Hiểu một hệ thống sẽ đẩy nhanh việc học các hệ thống khác.
Các ví dụ mã nguồn sau đây trình bày cách triển khai xác thực và tạo CUIT bằng các ngôn ngữ lập trình khác nhau:
1// Xác thực CUIT trong JavaScript
2function validateCUIT(cuit) {
3 // Loại bỏ các ký tự không phải số
4 const cleanCuit = cuit.replace(/\D/g, '');
5
6 // Kiểm tra xem có đúng 11 chữ số không
7 if (cleanCuit.length !== 11) {
8 return false;
9 }
10
11 // Trích xuất các phần
12 const typeCode = cleanCuit.substring(0, 2);
13 const number = cleanCuit.substring(2, 10);
14 const providedVerificationDigit = parseInt(cleanCuit.substring(10, 11));
15
16 // Tính chữ số xác minh
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// Ví dụ sử dụng
39console.log(validateCUIT('30-12345678-1')); // true hoặc false
401# Tạo CUIT trong Python
2import random
3
4def generate_cuit(entity_type='COMPANY'):
5 # Xác định mã loại thực thể
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 # Lấy mã loại cho loại thực thể đã chọn
19 type_code = entity_types.get(entity_type, 30)
20
21 # Tạo số ngẫu nhiên 8 chữ số
22 number = ''.join([str(random.randint(0, 9)) for _ in range(8)])
23
24 # Tính chữ số xác minh
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 # Định dạng và trả về CUIT
39 return f"{type_code}-{number}-{verification_digit}"
40
41# Ví dụ sử dụng
42print(generate_cuit('INDIVIDUAL_MALE'))
431<?php
2// Xác thực CUIT trong PHP
3function validateCUIT($cuit) {
4 // Loại bỏ các ký tự không phải số
5 $cleanCuit = preg_replace('/\D/', '', $cuit);
6
7 // Kiểm tra xem có đúng 11 chữ số không
8 if (strlen($cleanCuit) !== 11) {
9 return false;
10 }
11
12 // Trích xuất các phần
13 $typeCode = substr($cleanCuit, 0, 2);
14 $number = substr($cleanCuit, 2, 8);
15 $providedVerificationDigit = intval(substr($cleanCuit, 10, 1));
16
17 // Tính chữ số xác minh
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// Ví dụ sử dụng
39echo validateCUIT('30-12345678-1') ? 'Hợp lệ' : 'Không hợp lệ';
40?>
411// Tạo và Xác thực CUIT trong Java
2import java.util.Random;
3
4public class CUITUtils {
5
6 // Mã loại thực thể
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 // Tạo CUIT
13 public static String generateCUIT(String entityType) {
14 int typeCode;
15
16 // Xác định mã loại dựa trên loại thực thể
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 // Tạo số ngẫu nhiên 8 chữ số
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 // Tính chữ số xác minh
41 String digits = String.format("%02d%s", typeCode, number.toString());
42 int verificationDigit = calculateVerificationDigit(digits);
43
44 // Định dạng và trả về CUIT
45 return String.format("%02d-%s-%d", typeCode, number.toString(), verificationDigit);
46 }
47
48 // Tính chữ số xác minh
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 // Xác thực CUIT
69 public static boolean validateCUIT(String cuit) {
70 // Loại bỏ các ký tự không phải số
71 String cleanCuit = cuit.replaceAll("\\D", "");
72
73 // Kiểm tra xem có đúng 11 chữ số không
74 if (cleanCuit.length() != 11) {
75 return false;
76 }
77
78 // Trích xuất chữ số xác minh
79 int providedVerificationDigit = Character.getNumericValue(cleanCuit.charAt(10));
80
81 // Tính chữ số xác minh dự kiến
82 int calculatedVerificationDigit = calculateVerificationDigit(cleanCuit.substring(0, 10));
83
84 // So sánh các chữ số xác minh
85 return calculatedVerificationDigit == providedVerificationDigit;
86 }
87
88 public static void main(String[] args) {
89 // Ví dụ sử dụng
90 String generatedCUIT = generateCUIT("COMPANY");
91 System.out.println("CUIT được tạo: " + generatedCUIT);
92 System.out.println("Có hợp lệ: " + validateCUIT(generatedCUIT));
93 }
94}
951using System;
2using System.Text.RegularExpressions;
3
4public class CUITValidator
5{
6 // Xác thực CUIT
7 public static bool ValidateCUIT(string cuit)
8 {
9 // Loại bỏ các ký tự không phải số
10 string cleanCuit = Regex.Replace(cuit, @"\D", "");
11
12 // Kiểm tra xem có đúng 11 chữ số không
13 if (cleanCuit.Length != 11)
14 {
15 return false;
16 }
17
18 // Trích xuất chữ số xác minh
19 int providedVerificationDigit = int.Parse(cleanCuit.Substring(10, 1));
20
21 // Tính chữ số xác minh dự kiến
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 // Định dạng CUIT với các dấu phân cách
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; // Trả về ban đầu nếu không phải 11 chữ số
57 }
58
59 return $"{cleanCuit.Substring(0, 2)}-{cleanCuit.Substring(2, 8)}-{cleanCuit.Substring(10, 1)}";
60 }
61}
62Trước những năm 1990, việc nhận dạng thuế của Argentina là phân mảnh—các cơ quan khác nhau sử dụng các hệ thống đánh số không tương thích, khiến việc theo dõi người nộp thuế trên các cơ sở dữ liệu trở nên khó khăn. Tình trạng trốn thuế diễn ra phổ biến, một phần do sự thiếu chuẩn hóa khiến việc thực thi pháp luật trở nên khó khăn.
AFIP đã giới thiệu CUIT vào đầu những năm 1990 như một phần của các cải cách kinh tế rộng lớn trong thời kỳ của Tổng thống Carlos Menem. Thời điểm này trùng với kế hoạch khả năng chuyển đổi tiền tệ của Argentina, buộc phải neo đồng peso với đô la Mỹ và yêu cầu các kiểm soát tài khóa nghiêm ngặt hơn.
Hệ thống phát triển nhanh chóng:
Ngày nay, bạn không thể mở tài khoản ngân hàng doanh nghiệp, ký hợp đồng lao động hoặc phát hành hóa đơn điện tử ở Argentina mà không có CUIT. Nó đã trở thành định danh cơ bản cho toàn bộ nền kinh tế chính thức, tương tự như cách Số An sinh Xã hội hoạt động ở Hoa Kỳ—mặc dù có các biện pháp bảo vệ pháp lý mạnh mẽ hơn về quyền riêng tư và các hạn chế sử dụng theo Luật Bảo vệ Dữ liệu Cá nhân 25,326 của Argentina.
CUIT (Código Único de Identificación Tributaria) là mã số nhận dạng thuế của Argentina dành cho cá nhân và doanh nghiệp. Đây là mã 11 chữ số theo định dạng XX-XXXXXXXX-X do AFIP (cơ quan thuế liên bang) cấp cho những người cần thực hiện hoạt động kinh tế chính thức—từ việc mở tài khoản ngân hàng đến xuất hóa đơn.
Công cụ của chúng tôi xác thực cấu trúc toán học—định dạng chính xác, mã loại thực thể hợp lệ và chữ số kiểm tra chính xác. Tuy nhiên, nó không thể cho bạn biết một CUIT có được đăng ký với AFIP hay không. Để xác minh chính thức, hãy sử dụng dịch vụ Constancia de Inscripción của AFIP để truy vấn cơ sở dữ liệu của họ. Hãy nghĩ về công cụ của chúng tôi như kiểm tra chính tả: nó bắt lỗi định dạng nhưng không xác minh tính xác thực.
Cả hai sử dụng định dạng 11 chữ số giống nhau và thuật toán xác thực giống nhau. Sự khác biệt:
Trong thực tế, nhiều người sử dụng CUIL của mình khi được yêu cầu CUIT trên các biểu mẫu, và các hệ thống thường chấp nhận cả hai một cách trao đổi. Sự khác biệt kỹ thuật quan trọng hơn trong các bối cảnh pháp lý và kế toán hơn là sử dụng hàng ngày.
Tuyệt đối không. CUIT được tạo ra về mặt toán học là hợp lệ nhưng không được đăng ký với AFIP. Việc sử dụng chúng cho các tài liệu chính thức, hợp đồng hoặc khai thuế là hành vi gian lận theo luật Argentina. Chỉ sử dụng cho:
AFIP đã đơn giản hóa phân loại thực thể bằng cách nhóm các thực thể tương tự dưới mã 30 (công ty, tổ chức từ thiện, cơ quan chính phủ, quỹ tín thác). Sự phân biệt loại thực thể thực tế diễn ra trong hệ thống đăng ký nội bộ của AFIP, không phải trong CUIT. Lựa chọn thiết kế này ưu tiên sự đơn giản hơn là phân loại chi tiết—một sự đánh đổi làm cho hệ thống dễ triển khai hơn nhưng ít tự giải thích hơn.
Thuật toán trọng số modulo-11 bắt được khoảng 90% lỗi chữ số đơn và 98% lỗi hoán vị (hoán đổi các chữ số liền kề). Nó sẽ không bắt được tất cả các lỗi—ví dụ, nếu bạn hoán vị hai chữ số mà có các hệ số trọng số giống nhau, thì chữ số kiểm tra vẫn hợp lệ. Nhưng đối với các lỗi nhập liệu điển hình, nó rất hiệu quả.
CUIT là vĩnh viễn trong suốt cuộc đời của người nộp thuế. Các trường hợp ngoại lệ bao gồm:
Không giống như một số quốc gia có mã số thuế được làm mới định kỳ, Argentina đã thiết kế CUIT như các định danh suốt đời để giảm bớt chi phí hành chính.
Hầu hết các hệ thống của Argentina chấp nhận CUIT có hoặc không có dấu gạch ngang—việc xác thực cơ bản loại bỏ các ký tự định dạng trước khi kiểm tra các chữ số. Trình xác thực của chúng tôi xử lý cả hai định dạng: 30-12345678-1 và 30123456781 được xử lý giống nhau. Khi tích hợp với API, hãy kiểm tra tài liệu của họ; một số yêu cầu định dạng chính xác trong khi những cái khác tự động chuẩn hóa đầu vào.
Có. Các thực thể nước ngoài tiến hành kinh doanh tại Argentina nhận CUIT bằng mã loại 30, giống như các công ty trong nước. Họ phải đăng ký với AFIP và thường cần một đại diện pháp lý địa phương. CUIT liên kết với mã số thuế nước ngoài của họ trong hồ sơ AFIP, cho phép tuân thủ các hiệp ước thuế xuyên biên giới.
Chọn loại thực thể từ menu thả xuống (Công ty, Cá nhân Nam/Nữ, Hiệp hội, v.v.) và nhấp vào "Tạo CUIT". Công cụ sẽ tự động gán mã loại chính xác (30 cho các công ty, 20 cho nam giới, 27 cho nữ giới, 33 cho các hiệp hội) và tính toán chữ số kiểm tra phù hợp. Tạo bao nhiêu tùy thích—không giới hạn cho mục đích thử nghiệm.
Cơ quan Quản lý Thuế Liên bang (AFIP) - Cơ quan thuế chính thức của Argentina https://www.afip.gob.ar/
Giấy chứng nhận Đăng ký AFIP - Dịch vụ xác minh CUIT chính thức https://www.afip.gob.ar/genericos/consultaCUIT/
Luật 11.683 về Thủ tục Thuế - Luật thủ tục thuế quy định các yêu cầu CUIT Công báo Chính thức của Cộng hòa Argentina
Nghị quyết Chung AFIP 1817/2005 - Quy trình đăng ký và nhận dạng Tài liệu chính thức của AFIP
Luật 25.326 về Bảo vệ Dữ liệu Cá nhân - Luật bảo vệ dữ liệu cá nhân điều chỉnh việc sử dụng CUIT https://www.argentina.gob.ar/aaip/datospersonales
Ủy ban Kinh tế Liên Hợp Quốc ECLAC - "Chính sách Thuế ở Mỹ Latin: Đánh giá và Hướng dẫn Cải cách" Gómez Sabaini, J.C., & Morán, D. (2016) - Phân tích so sánh các hệ thống thuế bao gồm Argentina
Tạp chí Quản lý Thuế - Nghiên cứu về hệ thống nhận dạng thuế và thuật toán chữ số kiểm tra https://www.jota.website/
Cho dù bạn đang xây dựng cổng thanh toán cho các thương nhân Argentina, di chuyển cơ sở dữ liệu khách hàng kế thừa, hoặc kiểm tra sự tuân thủ của nền tảng thương mại điện tử với các yêu cầu của AFIP, công cụ này sẽ giúp bạn làm việc với CUIT một cách tự tin.
Tạo dữ liệu thử nghiệm không làm hỏng môi trường staging của bạn. Xác thực tập dữ liệu trước khi di chuyển. Hiểu thuật toán đằng sau hệ thống nhận dạng thuế của Argentina.
Không cần khóa API. Không giới hạn tỷ lệ. Không có tính năng không cần thiết. Chỉ có việc tạo và xác thực CUIT một cách đáng tin cậy khi bạn cần.
Khám phá thêm các công cụ có thể hữu ích cho quy trình làm việc của bạn