Xác thực mã số VAT EU API
Xác thực bất kỳ mã số VAT châu Âu nào trên VIES, sổ đăng ký chính thức của Ủy ban châu Âu. Xác nhận theo thời gian thực, kèm tên và địa chỉ đã đăng ký khi quốc gia thành viên công bố.
Chưa có API key?
Đăng nhập vào tài khoản để tạo và quản lý API key của bạn.
Hướng dẫn tích hợp
Sao chép một đoạn mã, thay API key của bạn, chạy. Hoạt động với mọi HTTP client — các ví dụ bên dưới bằng cURL, JavaScript và Python.
/api/validate-vathttps://www.apipick.comValidate an EU VAT number against the official VIES registry
vat_numberstringbắt buộcFull VAT number with its two-letter member-state prefix. Spaces, dots, and hyphens are stripped. IE6388047V
countrystringtùy chọnMember-state code, if the number is supplied without its prefix. Greece is EL, not GR. IE
curl -X GET "https://www.apipick.com/api/validate-vat" \
-H "x-api-key: YOUR_API_KEY"{
"vat_number": "IE6388047V",
"country_code": "IE",
"number": "6388047V",
"valid": true,
"name": "GOOGLE IRELAND LIMITED",
"address": "3RD FLOOR, GORDON HOUSE, BARROW STREET, DUBLIN 4",
"name_disclosed": true,
"request_date": "2026-09-01T11:52:22.440Z",
"consultation_number": null,
"source": "European Commission VIES",
"credits_used": 3,
"remaining_credits": 97
}Xây dựng cho các trường hợp sử dụng thực tế
Hóa đơn đảo ngược thuế
Xác nhận tình trạng đăng ký VAT của bên mua trước khi xuất hóa đơn B2B xuyên biên giới với thuế suất 0%, và lưu lại bằng chứng đã kiểm tra.
Tiếp nhận khách hàng B2B
Xác thực ngay khi đăng ký và tự điền tên pháp lý cùng địa chỉ từ sổ đăng ký, thay vì bắt khách hàng gõ lại.
Phòng chống gian lận
Chặn các mã số VAT bịa đặt hoặc đã hết hiệu lực trước khi chúng lọt vào hệ thống tính phí hoặc hồ sơ khai thuế của bạn.
Quy trình với tác tử
Cấp cho tác tử tài chính một công cụ chỉ một tham số để gọi trong lúc xử lý hóa đơn, với câu trả lời đúng/sai rõ ràng.
Các trường phản hồi
| Trường | Kiểu | Mô tả |
|---|---|---|
| valid | boolean | Mã số hiện có đăng ký cho giao dịch xuyên biên giới hay không |
| country_code | string | Mã quốc gia thành viên theo cách khai báo (EL cho Hy Lạp, XI cho Bắc Ireland) |
| number | string | Mã số VAT không kèm tiền tố quốc gia |
| name | string | null | Tên doanh nghiệp đã đăng ký, khi quốc gia thành viên công bố |
| address | string | null | Địa chỉ đã đăng ký, khi quốc gia thành viên công bố |
| name_disclosed | boolean | False khi quốc gia thành viên giữ kín các trường định danh theo chính sách (DE, ES) |
| request_date | string | null | Dấu thời gian VIES ghi nhận cho lần kiểm tra này |
| consultation_number | string | null | Mã định danh yêu cầu của VIES, dùng được làm bằng chứng đã xác minh |
| credits_used | integer | Credit bị trừ cho request này |
| remaining_credits | integer | Credit còn lại trong tài khoản của bạn |
Giới hạn tần suất
Giới hạn tốc độ tính theo từng API key, cửa sổ trượt 60 giây. Vượt giới hạn, bạn nhận được phản hồi 429 sạch sẽ kèm header Retry-After.
20req/min
Theo từng API key, từng endpoint. Cửa sổ trượt 60 giây.
3concurrent
Số request đang chạy tối đa đồng thời cho mỗi API key.
X-RateLimit-LimitSố request tối đa cho phép mỗi phútX-RateLimit-RemainingSố request còn lại trong cửa sổ hiện tạiX-RateLimit-ResetSố giây cho đến khi cửa sổ hiện tại được đặt lạiRetry-AfterSố giây cần chờ trước khi thử lại (chỉ khi 429)HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 20
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12
{
"error": "rate_limit_exceeded",
"message": "Rate limit exceeded: 20 requests/minute per API key. Retry after 12s.",
"retry_after": 12
}Nguồn dữ liệu và giấy phép
Việc kiểm tra được thực hiện qua VIES, Hệ thống Trao đổi Thông tin VAT của Ủy ban châu Âu, hệ thống này chuyển từng truy vấn theo thời gian thực tới cơ sở dữ liệu thuế của chính quốc gia thành viên. Chúng tôi không giữ bản sao nào của sổ đăng ký — câu trả lời thuộc về cơ quan thuế, chúng tôi chỉ trả về dưới dạng JSON gọn gàng, nêu rõ các trường hợp gián đoạn và không công bố thông tin.
Câu hỏi thường gặp
Hỏi: Đây có phải là kiểm tra chính thức của EU không?
Đáp: Đúng vậy. Yêu cầu được gửi tới VIES, Hệ thống Trao đổi Thông tin VAT của Ủy ban châu Âu, và VIES truy vấn cơ sở dữ liệu thuế của chính quốc gia thành viên theo thời gian thực. Không có cơ sở dữ liệu trung gian nào, nên kết quả ở đây trùng khớp với kết quả bạn nhận được từ biểu mẫu web của Ủy ban.
Hỏi: Vì sao mã số của Đức lại không có tên doanh nghiệp?
Đáp: Đức và Tây Ban Nha không công bố tên và địa chỉ doanh nghiệp qua VIES theo chính sách. Việc mã số có đăng ký hay không vẫn được xác nhận rõ ràng — chỉ các trường định danh là bị giữ kín. Phản hồi đặt name_disclosed: false để bạn phân biệt được giữa việc giữ kín theo chính sách và một trường thực sự trống.
Hỏi: Điều gì xảy ra khi hệ thống của một quốc gia thành viên gặp sự cố?
Đáp: VIES định tuyến tới cơ sở dữ liệu của từng quốc gia thành viên, và các hệ thống đó có thể ngừng hoạt động để bảo trì. Khi ấy bạn nhận HTTP 503 kèm thông báo rõ ràng và không bị trừ tín dụng. Hãy thử lại sau vài phút — sự cố nằm ở phía cơ quan thuế, không phải phía chúng tôi.
Hỏi: Những mã quốc gia nào được hỗ trợ?
Đáp: Toàn bộ 27 quốc gia thành viên, cộng thêm XI cho Bắc Ireland theo Khung Windsor. Lưu ý Hy Lạp khai VAT bằng mã EL chứ không phải mã ISO GR. Vương quốc Anh (GB) đã rời VIES sau Brexit và không nằm trong phạm vi hỗ trợ.
Hỏi: Tôi có lấy được mã tra cứu cho hồ sơ kiểm toán không?
Đáp: Trường consultation_number mang mã định danh yêu cầu của VIES khi mã này được cấp. Đó chính là mã mà cơ quan thuế chấp nhận như bằng chứng rằng bạn đã xác minh tình trạng VAT của đối tác vào một ngày cụ thể — điều rất quan trọng với cơ chế đảo ngược thuế.