Vietnam Registration Fee API
Compute the Vietnamese registration fee for cars, motorbikes, houses and land by province, plus plate fee, road fee and insurance for the on-road price.
Send the asset type, its taxable value and the province. The API applies NĐ 10/2022/NĐ-CP as amended by NĐ 51/2025 and NĐ 175/2025: 10% for passenger cars up to 9 seats unless the provincial council set more (e.g. 12% in Lạng Sơn and, from 8/8/2026, Hải Phòng; 11% in Tuyên Quang), 60% of that for double-cab pick-ups and vans, 0% for the first registration of battery electric cars (until 31/12/2030), 2% for second-hand cars and other vehicles, 2% for motorbikes (1% from the second registration) and 0.5% for houses and land.
For a used vehicle, years_used (or year_of_manufacture) applies the remaining-value table (90% / 70% / 50% / 30% / 20%). Houses and land accept area_m2 × price_per_m2. rate_percent overrides the rate when your province adopts a new resolution.
For vehicles, on_road adds the other costs of the "giá lăn bánh": registration and plate fee by area (14,000,000 đ for cars in Hà Nội and TP.HCM, 140,000 đ elsewhere, TT 155/2025/TT-BTC), 12 months of road-use fee (NĐ 90/2023) and compulsory third-party insurance (NĐ 67/2023).
Parameters
| Name | In | Type | Required | Default | |
|---|---|---|---|---|---|
asset | query|body | string | no | car | car, pickup, ev_car, other_car, motorbike, house, land. |
value | query|body | number | yes | Taxable value in VND (price table value of a new vehicle, or the property value). | |
province | query|body | string | no | Province (name or code, 34 provinces) for the car rate and plate area. | |
registration | query|body | string | no | first | first or subsequent (used vehicle). |
years_used | query|body | number | no | Used vehicle: years of use (or year_of_manufacture). | |
area_m2 | query|body | number | no | House / land: area (with price_per_m2). | |
seats | query|body | number | no | 5 | Seats (insurance premium). |
price | query|body | number | no | Selling price for the on-road total (default = value). | |
rate_percent | query|body | number | no | Override the rate. | |
date | query|body | string | no | Registration date (default today). |
Example
curl "https://apibox.io.vn/v1/vn-registration-fee?asset=car&value=800000000&province=Hà Nội" \
-H "Authorization: Bearer YOUR_API_KEY"const res = await fetch('https://apibox.io.vn/v1/vn-registration-fee?asset=car&value=800000000&province=Hà Nội', {
method: 'GET',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
},
});
const data = await res.json();
console.log(data);import requests
res = requests.get(
"https://apibox.io.vn/v1/vn-registration-fee?asset=car&value=800000000&province=Hà Nội",
headers={"Authorization": "Bearer YOUR_API_KEY"},
timeout=30,
)
print(res.json())<?php
$ch = curl_init('https://apibox.io.vn/v1/vn-registration-fee?asset=car&value=800000000&province=Hà Nội');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY'],
]);
$response = curl_exec($ch);
print_r(json_decode($response, true));Response
{
"asset": "car",
"asset_vi": "Ô tô chở người đến 9 chỗ",
"province": {
"code": "01",
"name": "Thành phố Hà Nội"
},
"registration": "first",
"taxable_value": 800000000,
"rate_percent": 10,
"registration_fee": 80000000,
"legal": "NĐ 10/2022/NĐ-CP Điều 8 khoản 5 (mức chung 10%); no higher provincial resolution on record",
"on_road": {
"price": 800000000,
"registration_fee": 80000000,
"items": [
{
"item": "Registration and plate fee (area I)",
"item_vi": "Lệ phí đăng ký, cấp biển số (khu vực I)",
"amount": 14000000,
"ref": "TT 155/2025/TT-BTC"
},
{
"item": "Road-use fee, 12 months (individual owner)",
"item_vi": "Phí sử dụng đường bộ 12 tháng (xe cá nhân)",
"amount": 1560000,
"ref": "NĐ 90/2023/NĐ-CP"
},
{
"item": "Compulsory third-party insurance, 1 year (incl. 10% VAT)",
"item_vi": "Bảo hiểm TNDS bắt buộc 1 năm (gồm VAT 10%)",
"amount": 480700,
"ref": "NĐ 67/2023/NĐ-CP"
}
],
"total": 896040700
},
"reviewed": "2026-11-11"
}
Use cases
- Show the on-road price on a car dealer or marketplace listing
- Compute the registration fee in a car-loan app
- Estimate transfer costs on a real-estate platform
- Check fees when buying a used motorbike
FAQ
Which value should I send?
The value in the provincial price table for registration fee (or the invoice price if higher). The API does not ship the price tables, which change often.
Is the provincial car rate always right?
Rates above 10% come from the provincial resolutions on record (reviewed date in the answer); others use the general 10%. Use rate_percent if your province changes it.
Are electric cars exempt?
The first registration of battery electric cars is 0% until 28/2/2027 (NĐ 51/2025) and then until 31/12/2030 (NĐ 202/2026). Hybrids pay the normal rate.
Related APIs
JSON Validator
Check JSON syntax with exact line and column of errors, and validate data against a JSON Schema (draft 4, 7, 2019-09 or 2020-12).
{ }JSON Formatter
Pretty print JSON with 0-8 spaces or tabs, minify it, or sort object keys recursively. Syntax errors are reported with line and column.
CSVCSV to JSON
Convert CSV into an array of JSON objects using the header row, with delimiter auto-detection, number and boolean typing, and row-level errors.