Tính thuế GTGT (VAT) API

Tính thuế GTGT xuôi hoặc tách ngược từng dòng hóa đơn, kiểm tra hàng có được giảm còn 8% đến 31/12/2026 (NĐ 174/2025), tính theo phương pháp trực tiếp.

GETPOSThttps://apibox.io.vn/v1/vn-vat
Dữ liệu & JSON▶ Dùng thử online

Gửi một amount hoặc danh sách lines của hóa đơn, API cộng thuế vào giá chưa thuế (mode=exclusive) hoặc tách thuế ra khỏi giá đã có thuế (mode=inclusive). Thuế suất 0%, 5%, 10%, 8% hoặc không chịu thuế (KCT); với rate=auto (mặc định), dòng hàng được 8% khi ngày hóa đơn (date) nằm trong thời gian giảm thuế và hàng hóa không thuộc diện loại trừ, ngược lại là 10%. Tiền thuế làm tròn đến đồng theo từng dòng (hoặc một lần cho mỗi nhóm thuế suất với rounding=total) và tổng hợp theo thuế suất như trên hóa đơn điện tử.

Mức giảm còn 8% (Nghị quyết 204/2025/QH15, Nghị định 174/2025/NĐ-CP, từ 1/7/2025 đến 31/12/2026) không áp dụng cho viễn thông, tài chính, ngân hàng, chứng khoán, bảo hiểm, kinh doanh bất động sản, kim loại và sản phẩm từ kim loại đúc sẵn, sản phẩm khai khoáng trừ than (Phụ lục I), hàng hóa, dịch vụ chịu thuế tiêu thụ đặc biệt trừ xăng (Phụ lục II) và hàng hóa CNTT (Phụ lục III). Gửi category (ví dụ telecom, metals, goods) hoặc hs_code, mỗi dòng sẽ cho biết có được giảm không và vì sao. Đối chiếu theo mã HS chỉ mang tính tham khảo vì phụ lục dùng mã ngành sản phẩm, nên các mặt hàng ranh giới được đánh dấu cần kiểm tra. API cũng biết các đợt giảm thuế trước đó từ năm 2022.

method=direct tính thuế cho người nộp theo phương pháp trực tiếp: phân phối 1%, dịch vụ 5%, sản xuất, vận tải 3%, khác 2% (Luật Thuế GTGT 48/2024), giảm 20% trong thời gian giảm thuế, kèm dòng ghi chú cần in trên hóa đơn.

Tham số

TênVị tríKiểuBắt buộcMặc định
amountquery|bodynumberkhôngMột số tiền (đồng): giá chưa thuế, hoặc đã có thuế khi mode=inclusive; doanh thu khi method=direct.
linesbodyarraykhôngCác dòng hóa đơn: [{"name":"…","amount":2000000,"rate":"auto","category":"goods","hs_code":"9403"}] (hoặc quantity + unit_price + discount).
modequery|bodystringkhôngexclusiveexclusive (tính xuôi) hoặc inclusive (tách ngược).
ratequery|bodystringkhôngautoauto, 0, 5, 8, 10 hoặc exempt (KCT).
categoryquery|bodystringkhôngNhóm hàng: telecom, finance, banking, securities, insurance, real_estate, metals, metal_products, mining, excise_goods, excise_services, it, coal, gasoline, chemicals, goods, services.
hs_codequery|bodystringkhôngMã HS (2–10 chữ số) để kiểm tra loại trừ mang tính tham khảo.
datequery|bodystringkhôngNgày hóa đơn (mặc định hôm nay).
roundingquery|bodystringkhônglineline (từng dòng) hoặc total (theo nhóm thuế suất).
methodquery|bodystringkhôngcreditcredit (khấu trừ) hoặc direct (trực tiếp, kèm sector: distribution, services, production, other).

Ví dụ

curl -X POST "https://apibox.io.vn/v1/vn-vat" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lines":[{"name":"Bàn làm việc","amount":2000000,"category":"goods"},{"name":"Cước internet","amount":500000,"category":"telecom"}],"date":"2026-11-11"}'

Kết quả trả về

{
  "method": "credit",
  "mode": "exclusive",
  "date": "2026-11-11",
  "rounding": "line",
  "lines": [
    {
      "no": 1,
      "name": "Bàn làm việc",
      "rate_percent": 8,
      "rate_label": "8%",
      "reduction": {
        "applied": true,
        "eligible": true,
        "reason": "Other goods at 10% is reduced when it is taxed at 10%",
        "basis": "category"
      },
      "amount_before_vat": 2000000,
      "vat": 160000,
      "total": 2160000
    },
    {
      "no": 2,
      "name": "Cước internet",
      "rate_percent": 10,
      "rate_label": "10%",
      "reduction": {
        "applied": false,
        "eligible": false,
        "reason": "Telecommunications is not reduced (NĐ 174/2025/NĐ-CP, Phụ lục I)",
        "basis": "category",
        "group": "Phụ lục I"
      },
      "amount_before_vat": 500000,
      "vat": 50000,
      "total": 550000
    }
  ],
  "vat_groups": [
    {
      "rate_label": "8%",
      "amount_before_vat": 2000000,
      "vat": 160000,
      "total": 2160000
    },
    {
      "rate_label": "10%",
      "amount_before_vat": 500000,
      "vat": 50000,
      "total": 550000
    }
  ],
  "totals": {
    "amount_before_vat": 2500000,
    "vat": 210000,
    "total": 2710000
  },
  "reduction_period": {
    "from": "2025-07-01",
    "to": "2026-12-31",
    "ref": "Nghị quyết 204/2025/QH15; Nghị định 174/2025/NĐ-CP"
  },
  "legal": [
    "Luật Thuế giá trị gia tăng 48/2024/QH15 (Điều 9 thuế suất, Điều 12 phương pháp trực tiếp)",
    "Nghị quyết 204/2025/QH15; Nghị định 174/2025/NĐ-CP"
  ],
  "reviewed": "2026-11-11"
}

Ứng dụng

  • Hiển thị thuế GTGT 8% hay 10% trong phần mềm bán hàng
  • Tách thuế từ giá đã gồm VAT để hạch toán
  • Phát hiện hóa đơn đầu vào dùng 8% cho hàng bị loại trừ
  • Tính thuế GTGT theo phương pháp trực tiếp cho hộ kinh doanh

Hỏi đáp

Năm 2027 còn được giảm thuế 8% không?

Mức giảm hết hạn ngày 31/12/2026. Đến tháng 11/2026 chưa có văn bản gia hạn có hiệu lực; hóa đơn năm 2027 dùng 10% và có ghi chú.

Làm sao biết hàng của tôi có bị loại trừ?

Gửi category hoặc hs_code. Danh mục loại trừ theo Phụ lục I–III NĐ 174/2025; mã HS chỉ là gợi ý, hàng ranh giới cần đối chiếu phụ lục.

Vì sao làm tròn từng dòng khác làm tròn tổng?

Tiền thuế mỗi dòng được làm tròn đến đồng rồi cộng lại. Dùng rounding=total để làm tròn một lần cho mỗi nhóm thuế suất.

API liên quan

Bắt đầu với 1.000 request miễn phí mỗi tháng. Nhận API key miễn phí →