Vietnam Chart of Accounts API

Look up Vietnamese accounting accounts under Circular 99/2025 (from 2026) or 133/2016, search by name, browse levels and map TT 200 accounts to TT 99.

GEThttps://apibox.io.vn/v1/vn-accounts/{number}

The chart of accounts API returns the official Vietnamese account list: Thông tư 99/2025/TT-BTC (Phụ lục II, for fiscal years from 1 January 2026, replacing Circular 200/2014) by default, or Thông tư 133/2016/TT-BTC for small and medium-sized enterprises with chart=tt133. Ask for one account (/v1/vn-accounts/3331) to get its name in Vietnamese and English, level, group (loại tài khoản), the parent chain and the sub-accounts; or list and search with q (accents optional, tien gui finds 112 and 1281; digits search by number prefix), level (1–4) and group (1–9).

For migrations, mapping=tt200 lists every level-1 account of Circular 200 with its Circular 99 counterpart and the kind of change: added (215 Tài sản sinh học, 332 Phải trả cổ tức, lợi nhuận), removed (161, 417, 461, 611, 631), merged (441 and 466 into 4118, Article 29), renamed (112 Tiền gửi không kỳ hạn…), or changed level-2 accounts. Filter with change=removed or one account with tt200=441.

The tables are transcribed by hand from the appendices of the circulars and reviewed yearly; every answer carries the circular number, effective date and review date. English names are our own translation, not an official one.

Parameters

NameInTypeRequiredDefault
numberpath|querystringnoAccount number (3–6 digits), in the path or as ?number=.
chartquerystringnott99tt99 (Circular 99/2025, enterprises) or tt133 (Circular 133/2016, SMEs).
qquerystringnoSearch words (accents optional) or a number prefix.
levelquerynumbernoOnly accounts of this level (1–4).
groupquerynumbernoOnly this account group (loại 1–9).
mappingquerystringnott200: Circular 200 -> Circular 99 mapping of level-1 accounts.
tt200querystringnoWith mapping: one Circular 200 account, e.g. 441.
changequerystringnoWith mapping: added, removed, merged, renamed, changed_sub or unchanged.
limitquerynumbernoMaximum accounts in a list (1–500).

Example

curl "https://apibox.io.vn/v1/vn-accounts/3331" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "number": "3331",
  "name_vi": "Thuế giá trị gia tăng phải nộp",
  "name_en": "VAT payable",
  "level": 2,
  "parent": "333",
  "group": 3,
  "group_name_vi": "Loại tài khoản nợ phải trả",
  "group_name_en": "Liabilities",
  "hierarchy": [
    {
      "number": "333",
      "name_vi": "Thuế và các khoản phải nộp Nhà nước",
      "name_en": "Taxes and other payables to the State",
      "level": 1,
      "parent": null,
      "group": 3
    }
  ],
  "children": [
    {
      "number": "33311",
      "name_vi": "Thuế GTGT đầu ra",
      "name_en": "Output VAT",
      "level": 3,
      "parent": "3331",
      "group": 3
    },
    {
      "number": "33312",
      "name_vi": "Thuế GTGT hàng nhập khẩu",
      "name_en": "VAT on imports",
      "level": 3,
      "parent": "3331",
      "group": 3
    }
  ],
  "tt200_mapping": [
    {
      "tt200": "333",
      "tt200_name_vi": "Thuế và các khoản phải nộp Nhà nước",
      "tt99": "333",
      "tt99_name_vi": "Thuế và các khoản phải nộp Nhà nước",
      "change": "unchanged",
      "note_vi": "Giữ nguyên số hiệu, tên và TK cấp 2.",
      "note_en": "Number, name and level-2 accounts unchanged."
    }
  ],
  "chart": "tt99",
  "circular": "99/2025/TT-BTC",
  "title_vi": "Thông tư hướng dẫn Chế độ kế toán doanh nghiệp",
  "issued": "2025-10-27",
  "effective_from": "2026-01-01",
  "appendix": "Phụ lục II",
  "replaces": [
    "200/2014/TT-BTC",
    "75/2015/TT-BTC",
    "53/2016/TT-BTC",
    "195/2012/TT-BTC"
  ],
  "transition_vi": "Điều 29 (Chuyển đổi số dư trên sổ kế toán) và Điều 30 (Điều khoản chuyển tiếp).",
  "account_count": 184,
  "reviewed": "2026-11-11",
  "translation_note": "name_en is an unofficial translation"
}

Use cases

  • Migrate an accounting or ERP system from TT 200 to TT 99
  • Validate account numbers in imported journal entries
  • Show account names in invoices or bookkeeping apps
  • Build a chart-of-accounts picker with search

FAQ

Which chart is returned by default?

Circular 99/2025/TT-BTC, which applies to enterprises from fiscal year 2026. Use chart=tt133 for the SME regime, still in force in 2026.

Where did the balance of account 441 go?

Article 29 of Circular 99 moves the balances of 441 and 466 to 4118 (other owner capital); mapping=tt200&tt200=441 shows it.

Are enterprises allowed to add their own sub-accounts?

Yes, Circular 99 (Article 11) lets enterprises add detail accounts; this API returns only the accounts listed by the Ministry of Finance.

Related APIs

Start with 1,000 free requests every month. Get free API key →