Mapping Hệ Thống Tài Khoản VAS Vào Sage 300 General Ledger

Một trong những công việc quan trọng nhất khi triển khai Sage 300 tại doanh nghiệp Việt Nam là mapping hệ thống tài khoản kế toán (VAS) vào cấu trúc GL của phần mềm. Làm đúng từ đầu giúp báo cáo tài chính ra đúng chuẩn, kiểm toán không phát sinh vấn đề, và mọi module (AR, AP, IC, PO, OE) tự động hạch toán đúng TK. Bài này là hướng dẫn thực tế với ví dụ mapping cụ thể cho từng nhóm tài khoản chính theo Thông tư 99/2025/TT-BTC.

Nguyên tắc mapping VAS vào Sage 300 GL

Sage 300 GL không tự động nhận diện hệ thống tài khoản VAS — bạn phải định nghĩa từng tài khoản và cấu hình cách các module khác (AR, AP, IC, PO) kết nối về GL. Trước khi mapping, cần hiểu rõ 3 loại tài khoản trong Sage 300:

Loại tài khoản Sage 300Tương đương VASĐặc điểm
Balance Sheet AccountTK loại 1, 2, 3, 4Số dư chuyển sang năm tiếp theo. Xuất hiện trên Báo cáo tình hình tài chính.
Income Statement AccountTK loại 5, 6, 7, 8Số dư kết chuyển về 0 khi Year-End Close. Xuất hiện trên BCKQHĐKD.
Retained Earnings AccountTK 421 (Lợi nhuận chưa phân phối)TK đặc biệt — Year-End Close kết chuyển lãi/lỗ vào đây tự động.
Quy tắc vàng khi mapping:
  • Mã GL Account = mã TK VAS (ví dụ: 111000 cho TK 111)
  • Không dùng segment để phân biệt TK cùng loại — dùng tiểu khoản (sub-account) hoặc Optional Field
  • Các module AR, AP, IC, PO chỉ hạch toán về GL qua Control Accounts — cấu hình kỹ phần này
  • Không tạo GL Account trực tiếp cho TK phụ trợ AR/AP (131, 331 sẽ được xử lý qua A/R và A/P module)

TK Tiền mặt và Ngân hàng — TK 111, 112

TK tiền mặt và ngân hàng thường có nhiều tiểu khoản nhất (mỗi quỹ/tài khoản ngân hàng một mã riêng). Sage 300 Bank Services module quản lý trực tiếp và tự động hạch toán về GL.

GL Account Sage 300TK VAS (TT99)Mô tảModule kết nối
111000111Tiền mặt — tổng hợpBank Services (quỹ tiền mặt)
1111001111Tiền mặt VNDBank Services — Bank code CASH_VND
1112001112Tiền mặt ngoại tệ (USD, EUR)Bank Services — Bank code CASH_USD
1121001121TK ngân hàng VND — VCB HCMBank Services — Bank code VCB_HCM
1122001122TK ngân hàng ngoại tệ — Citi USDBank Services — Bank code CITI_USD
Lưu ý Multicurrency: Nếu DN có ngoại tệ, bật Multicurrency trong Common Services trước khi tạo Bank Account trong Bank Services. TK 112200 (USD) cần chỉ định Currency = USD — Sage 300 tự tính lãi/lỗ tỷ giá về TK 515/635.

TK Công nợ — Phải thu (131) và Phải trả (331)

Đây là nhóm TK quan trọng nhất — phải cấu hình qua Control Accounts của module A/R và A/P, không tạo GL Account để nhập tay trực tiếp.

GL AccountTK VASCấu hình trongGhi chú
131000131A/R → Setup → Options → Receivables Control AccountTự động DR khi tạo invoice khách hàng
1311001311A/R → Customer Groups → Default GL AccountPhân tách theo nhóm khách hàng: nội địa (131100), xuất khẩu (131200)
331000331A/P → Setup → Options → Payables Control AccountTự động CR khi nhập hóa đơn nhà cung cấp
1319001388GL trực tiếpPhải thu khác — không qua A/R module
336000336GL trực tiếpPhải trả nội bộ (intercompany) — GL Journal

TK Hàng tồn kho (151–158) và Tài sản cố định (211–215)

GL AccountTK VASMô tảModule / Ghi chú
151000151Hàng mua đi đườngIC / PO — cấu hình trong PO Setup → G/L Integration
155000155Thành phẩmIC → Item Pricing → GL Account = 155000 (theo nhóm hàng)
156000156Hàng hóa (thương mại)IC → Item Categories → Inventory Account = 156000
157000157Hàng gửi đi bánGL trực tiếp — OE Invoice kết chuyển từ 156 sang 157
211000211Tài sản cố định hữu hình (nguyên giá)Fixed Assets module hoặc GL trực tiếp
214000214Hao mòn lũy kế TSCĐCredit balance — Normal Balance = Credit trong GL Setup
2151002151Tài sản sinh học — vật nuôi Mới TT99Tạo mới trong GL — chỉ áp dụng DN chăn nuôi, nông nghiệp

TK Doanh thu (5xx) và Chi phí (6xx, 8xx)

Đây là nhóm TK cần kết hợp GL Account + Department segment để phân tích chi phí theo bộ phận — một trong những lý do chính các doanh nghiệp chọn Sage 300 thay vì phần mềm kế toán đơn giản.

GL Account + SegmentTK VASMô tảModule
511000-MKTG511Doanh thu bán hàng — kênh MarketingOE → Revenue Account
521000521Các khoản giảm trừ doanh thuOE → Discount Account
632000632Giá vốn hàng bán (COGS)IC → Cost of Sales Account
641000-MKTG641Chi phí bán hàng — phòng MKTGGL Journal / PO → Expense Distribution
642000-KTOA642Chi phí QLDN — phòng Kế toánGL Journal / AP → Invoice Distribution
635000635Lỗ chênh lệch tỷ giáBank Services → Revaluation → Exchange Loss Account
8211008211Thuế TNDN hiện hànhGL Journal cuối kỳ
82112082112Thuế TNDN bổ sung Pillar 2 Mới TT99GL Journal — chỉ áp dụng tập đoàn đa quốc gia

Thiết kế cho đa chi nhánh, đa dự án

Đây là điểm Sage 300 vượt trội so với phần mềm kế toán thông thường. Với cấu trúc segment linh hoạt, một GL Account có thể phân tích được theo nhiều chiều cùng lúc.

Ví dụ thực tế: Công ty sản xuất có 2 nhà máy + 3 phòng ban + theo dõi dự án
641000–MKTG–HCM–PRJ2026
→ Chi phí bán hàng, bộ phận Marketing, nhà máy HCM, dự án 2026
642000–KTOA–HAN
→ Chi phí QLDN, bộ phận Kế toán, chi nhánh Hà Nội (không theo dự án)
511000–0000–HCM
→ Doanh thu, không phân bộ phận (segment DEPT = 0000 = all), nhà máy HCM
💡 Segment DEPT = “0000” dùng cho TK không cần phân bộ phận (tiền, công nợ, tài sản) — giúp báo cáo tổng hợp không bị vỡ dòng.
SegmentĐộ dàiDanh sách giá trị mẫuÁp dụng cho TK
Account6 ký tự111000, 131000, 511000…Tất cả
Department4 ký tự0000, KTOA, MKTG, SANX, QLDA, IT00Chi phí (6xx, 8xx), Doanh thu (5xx)
Branch3 ký tựHCM, HAN, DAN, CAN, SUM (Sumatra…)Tất cả (dùng HCM làm default nếu 1 chi nhánh)
Project (tuỳ chọn)6 ký tự000000, CON001, MFG202, ERP202Chi phí dự án, OE theo project
✅ Khuyến nghị cho triển khai mới
  1. Bắt đầu với 2 segment (Account + Branch) — triển khai nhanh, ít lỗi
  2. Thêm segment Department trong năm thứ 2 khi user đã quen hệ thống
  3. Segment Project chỉ thêm khi có yêu cầu báo cáo theo dự án rõ ràng
  4. Luôn để một giá trị “mặc định” cho mỗi segment (ví dụ: DEPT=0000, PROJ=000000) để dùng cho TK không cần phân tích sâu

FAQ

TK 131 và 331 có cần tạo trong GL Account không?

Có — cần tạo GL Account 131000 và 331000 trong General Ledger. Nhưng không nhập bút toán trực tiếp vào các TK này; việc hạch toán tự động từ module A/R (131) và A/P (331) qua Control Account. Đây là điểm khác biệt quan trọng so với phần mềm kế toán thông thường.

Có thể thay đổi cấu trúc segment sau khi đã có giao dịch không?

Cực kỳ khó — Sage 300 không cho phép thay đổi độ dài segment hoặc cấu trúc account structure khi đã có dữ liệu. Phải lên kế hoạch kỹ trước khi go-live. Nếu buộc phải thay đổi, cần migration dữ liệu và hỗ trợ từ chuyên gia Sage.

IC module hạch toán về GL như thế nào?

IC (Inventory Control) hạch toán về GL qua các Account Set được cấu hình trong IC → Item Pricing → Account Set. Mỗi Account Set định nghĩa: Inventory Account (156xxx), COGS Account (632xxx), Sales Account (511xxx), Returns Account, và Variance Account. Khi xuất hóa đơn OE, IC tự động tạo bút toán DR 632 / CR 156.

Mapping VAS có khác nhau giữa doanh nghiệp sản xuất và thương mại không?

Khác nhau ở nhóm tài khoản hàng tồn kho và giá vốn. Doanh nghiệp thương mại chủ yếu dùng TK 156 (hàng hóa) và 632 (giá vốn). Doanh nghiệp sản xuất cần thêm TK 152 (nguyên liệu), 154 (CPSXKDDD), 155 (thành phẩm), và cấu hình Job Costing hoặc WIP Account. Sage 300 hỗ trợ cả hai mô hình.

Cần tư vấn mapping Chart of Accounts cho doanh nghiệp?

ERP Sài Gòn có đội ngũ chuyên gia Sage 300 hơn 12 năm kinh nghiệm — hỗ trợ thiết kế segment, mapping VAS, và kiểm tra cấu hình trước go-live.

Nguồn tham khảo:
• Thông tư 99/2025/TT-BTC — Bộ Tài chính, Phụ lục II: Hệ thống tài khoản kế toán doanh nghiệp (thuvienphapluat.vn)
• Sage 300 ERP — General Ledger, Account Receivable, Inventory Control User Guides (sage.com/en-us/products/sage-300/)