Giới thiệu dự án

Trong bối cảnh nền kinh tế logistics và vận tải biển tại Việt Nam tăng trưởng nhanh chóng, chi phí nguyên vật liệu (nhiên liệu xăng dầu, dầu nhớt kỹ thuật, sắt thép, phụ tùng cơ khí thay thế) thường chiếm từ 45% đến 65% trong tổng giá thành dịch vụ cảng biển và vận tải đường thủy. Tại Công ty Cổ phần Vận tải biển Hùng Vương (Hải Phòng) – một doanh nghiệp hoạt động trên 16 năm trong lĩnh vực bốc xếp và dịch vụ kỹ thuật tàu biển – công tác quản trị và hạch toán kế toán nguyên vật liệu đóng vai trò sống còn trong việc kiểm soát dòng tiền và biên lợi nhuận.

Tuy nhiên, thực trạng công tác kế toán nguyên vật liệu tại đơn vị vẫn tồn tại nhiều nút thắt: quy trình luân chuyển chứng từ thủ công giữa kho bãi và phòng kế toán gây độ trễ từ 3 đến 5 ngày; áp dụng phương pháp tính giá xuất kho bình quân cả kỳ dự trữ tạo ra áp lực dồn việc quyết toán vào cuối tháng; công tác kiểm tra, kiểm nghiệm phẩm chất vật tư đầu vào chưa được chuẩn hóa qua hệ thống biên bản điện tử.

Đề tài nghiên cứu "Hoàn thiện công tác kế toán nguyên vật liệu tại Công ty Cổ phần Vận tải biển Hùng Vương" được thực hiện nhằm tái cấu trúc và chuẩn hóa toàn bộ quy trình kế toán nguyên vật liệu theo Thông tư 133/2016/TT-BTC của Bộ Tài chính, kết hợp giải pháp số hóa hạch toán.

Mục tiêu của dự án:

  1. Hệ thống hóa cơ sở lý luận: Làm rõ bản chất, nguyên tắc đánh giá theo giá gốc (Chuẩn mực Kế toán Việt Nam VAS 02) và các phương pháp hạch toán chi tiết/tổng hợp nguyên vật liệu theo Thông tư 133/2016/TT-BTC.
  2. Khảo sát và phân tích thực trạng: Đánh giá thực tế luân chuyển chứng từ (Phiếu nhập kho Mẫu 01-VT, Phiếu xuất kho Mẫu 02-VT), quy trình ghi sổ Nhật ký chung và phương pháp thẻ song song tại Công ty CP VTB Hùng Vương trong niên độ 2019–2020.
  3. Đề xuất giải pháp chuẩn hóa: Thiết lập mô hình luân chuyển chứng từ tinh gọn, cải tiến phương pháp tính giá xuất kho từ bình quân cố định cả kỳ sang bình quân gia quyền liên hoàn sau mỗi lần nhập.
  4. Ứng dụng công nghệ: Xây dựng mô hình cơ sở dữ liệu và thuật toán tự động hóa quy trình nhập - xuất - tồn, đồng bộ dữ liệu giữa Thẻ kho và Sổ chi tiết Tài khoản 152.

Kết quả kỳ vọng:

  • Giảm 75% thời gian đối chiếu số liệu tồn kho giữa Thủ kho và Kế toán vật tư.
  • Tối ưu hóa chu kỳ quay vòng vốn lưu động cho danh mục vật tư chiến lược (nhớt HĐ50, dầu DO, que hàn, thép tấm).
  • Đảm bảo tính minh bạch, hạn chế tỷ lệ thất thoát/hao hụt nguyên vật liệu xuống dưới mức 0.5% tổng giá trị nhập kho.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tại Công ty CP VTB Hùng Vương, danh mục nguyên vật liệu được phân cấp theo mục đích sử dụng trong vận hành tàu và bốc xếp cảng biển:

  • Nguyên vật liệu chính: Sắt tấm, thép hình, que hàn chuyên dụng phục vụ sửa chữa vỏ tàu và bến bãi.
  • Nhiên liệu: Dầu DO, dầu FO, xăng chạy máy phát và động cơ phụ.
  • Vật liệu phụ & phụ tùng thay thế: Nhớt động cơ HĐ50, ốc vít, mỡ bôi trơn, mũi khoan, săm lốp cẩu trục.

Doanh nghiệp áp dụng phương pháp Kê khai thường xuyên, nộp thuế GTGT theo phương pháp khấu trừ và hạch toán sổ theo hình thức Nhật ký chung.

Bảng so sánh các phương pháp hạch toán chi tiết nguyên vật liệu:

Tiêu chí so sánh Phương pháp Thẻ song song (Hiện tại) Phương pháp Sổ số dư Phương pháp Sổ đối chiếu luân chuyển
Quy trình tại kho Thủ kho ghi số lượng vào Thẻ kho hàng ngày theo chứng từ gốc Ghi Thẻ kho + ghi Sổ số dư vào ngày cuối tháng Tương tự thẻ song song (chỉ ghi số lượng vào Thẻ kho)
Quy trình tại kế toán Mở Sổ chi tiết NVL theo từng danh điểm, ghi cả số lượng và thành tiền Định kỳ nhận chứng từ, lập Bảng kê luân chuyển, cuối tháng tính tiền trên Sổ số dư Mở Sổ đối chiếu luân chuyển, chỉ ghi 1 lần vào cuối tháng cho từng danh điểm
Khối lượng công việc Trùng lặp thao tác ghi chép số lượng ở cả kho và kế toán Rất thấp, giảm thiểu tối đa việc ghi chép chi tiết tại kế toán Trung bình, dồn công việc ghi chép và tính toán vào cuối kỳ
Khả năng kiểm tra Kiểm tra đối chiếu chi tiết bất kỳ lúc nào, độ chính xác cao Khó kiểm tra biến động chi tiết trong kỳ, phụ thuộc vào kiểm kê Kiểm tra đối chiếu chậm, chỉ phát hiện sai sót khi khóa sổ tháng
Mức độ phù hợp Phù hợp doanh nghiệp ít chủng loại, giá trị từng lần xuất lớn Doanh nghiệp sản xuất lớn, hàng nghìn danh điểm vật tư Doanh nghiệp quy mô vừa, ít nghiệp vụ nhập xuất phát sinh

Ma trận ưu tiên yêu cầu nghiệp vụ (MoSCoW):

  • Must-have: Hạch toán chính xác giá trị nhập kho theo giá gốc (Giá hóa đơn + Chi phí vận chuyển bốc dỡ - Giảm trừ chiết khấu); Tự động hóa lập Bảng cân đối phát sinh Tài khoản 152; Kiểm soát số dư nợ tức thời.
  • Should-have: Tự động tính toán đơn giá bình quân gia quyền liên hoàn; Cảnh báo tồn kho an toàn (Min/Max inventory levels).
  • Could-have: Module lập Giấy đề nghị cung cấp vật tư online có chữ ký số nội bộ.
  • Won't-have (giai đoạn này): Tích hợp cảm biến IoT trực tiếp tại bồn chứa nhiên liệu cảng.

Thiết kế hệ thống

Hệ thống kế toán số hóa được thiết kế theo kiến trúc module hóa, phân quyền chặt chẽ giữa 3 bộ phận: Thủ kho, Kế toán vật tư, và Kế toán tổng hợp / Kế toán trưởng.

                                                      [Sổ Nhật ký chung]
                                                      [Sổ Cái TK 152, 331]

Ngăn xếp công nghệ triển khai (Technology Stack):

  • Hệ quản trị CSDL: PostgreSQL 15.4 (Hỗ trợ xử lý giao dịch ACID nghiêm ngặt cho hạch toán tài chính).
  • Backend xử lý nghiệp vụ: Python 3.11 với framework FastAPI 0.104.1.
  • Giao diện người dùng: React 18.2 kết hợp TailwindCSS và Ant Design Table.
  • Môi trường vận hành: Docker Engine 24.0.7 trên máy chủ Linux Ubuntu 22.04 LTS.

Thiết kế cấu trúc cơ sở dữ liệu (Database Schema):

-- Bảng danh mục nguyên vật liệu
CREATE TABLE materials (
    material_id VARCHAR(20) PRIMARY KEY,
    material_name VARCHAR(255) NOT NULL,
    unit VARCHAR(20) NOT NULL,
    category_code VARCHAR(10) CHECK (category_code IN ('MAIN', 'SUB', 'FUEL', 'SPARE')),
    min_stock_level NUMERIC(12, 2) DEFAULT 0,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

-- Bảng theo dõi giao dịch nhập - xuất kho
CREATE TABLE inventory_transactions (
    transaction_id BIGSERIAL PRIMARY KEY,
    voucher_no VARCHAR(50) NOT NULL, -- Số phiếu nhập/xuất
    voucher_date DATE NOT NULL,
    material_id VARCHAR(20) REFERENCES materials(material_id),
    transaction_type VARCHAR(10) CHECK (transaction_type IN ('INWARD', 'OUTWARD')),
    quantity NUMERIC(12, 2) NOT NULL CHECK (quantity > 0),
    unit_price NUMERIC(15, 2) NOT NULL,
    total_amount NUMERIC(18, 2) NOT NULL,
    debit_account VARCHAR(10) NOT NULL, -- TK Nợ (VD: '152', '621', '627')
    credit_account VARCHAR(10) NOT NULL, -- TK Có (VD: '331', '112', '152')
    partner_tax_code VARCHAR(20),
    created_by VARCHAR(50) NOT NULL
);

Thiết kế API Endpoints:

  • POST /api/v1/inventory/inward: Tiếp nhận và ghi nhận chứng từ Nhập kho (Phiếu 01-VT), tự động cập nhật số dư tức thời.
  • POST /api/v1/inventory/outward: Ghi nhận Phiếu xuất kho (Phiếu 02-VT), tự động gọi thuật toán tính giá xuất kho.
  • GET /api/v1/reports/inventory-summary: Trích xuất Bảng tổng hợp Nhập - Xuất - Tồn nguyên vật liệu theo thời gian thực.

Phương pháp triển khai (Methodology)

Dự án áp dụng phương pháp luận Agile Scrum điều chỉnh cho dự án tài chính - kế toán, chia làm 4 Sprint kéo dài trong 12 tuần:

Đánh giá và quản trị rủi ro:

  • Rủi ro sai lệch đơn giá chuyển đổi: Thiết lập checkpoint kiểm toán độc lập giữa số dư sổ sách cũ và số dư đầu kỳ trên hệ thống mới.
  • Rủi ro trễ chứng từ từ đội tàu: Triển khai quy trình scan hóa đơn và tạo phiếu tạm nhập/tạm xuất trong vòng 24 giờ kể từ khi bốc dỡ vật tư tại cảng.

Triển khai và kết quả

Quy trình phát triển và Thuật toán cốt lõi

Trọng tâm của giải pháp là chuyển đổi công thức tính giá xuất kho từ Bình quân cả kỳ dự trữ sang Bình quân gia quyền liên hoàn sau mỗi lần nhập.

Công thức tính toán:

$$\text{Đơn giá bình quân sau lần nhập } i = \frac{\text{Giá trị thực tế tồn kho trước lần nhập } i + \text{Giá trị thực tế nhập lần } i}{\text{Số lượng tồn kho trước lần nhập } i + \text{Số lượng nhập lần } i}$$

from decimal import Decimal, ROUND_HALF_UP

class InventoryEngine:
    def __init__(self, initial_qty: Decimal, initial_value: Decimal):
        self.current_qty = initial_qty
        self.current_value = initial_value

    def process_inward(self, qty: Decimal, unit_price: Decimal, extra_fee: Decimal = Decimal('0')) -> dict:
        """Xử lý nhập kho: Tính giá trị thực tế theo VAS 02 (Giá mua + Chi phí thu mua)"""
        inward_value = (qty * unit_price) + extra_fee
        self.current_qty += qty
        self.current_value += inward_value
        return {
            "status": "SUCCESS",
            "inward_qty": qty,
            "inward_value": inward_value,
            "new_stock_qty": self.current_qty,
            "new_stock_val": self.current_value
        }

    def calculate_moving_average_price(self) -> Decimal:
        """Tính đơn giá bình quân gia quyền liên hoàn"""
        if self.current_qty <= 0:
            return Decimal('0.00')
        avg_price = self.current_value / self.current_qty
        return avg_price.quantize(Decimal('0.01'), rounding=ROUND_HALF_UP)

    def process_outward(self, qty_to_issue: Decimal) -> dict:
        """Xử lý xuất kho dựa trên đơn giá bình quân tại thời điểm xuất"""
        if qty_to_issue > self.current_qty:
            raise ValueError(f"Không đủ tồn kho để xuất. Tồn: {self.current_qty}, Yêu cầu: {qty_to_issue}")
        
        unit_price = self.calculate_moving_average_price()
        outward_value = (qty_to_issue * unit_price).quantize(Decimal('0.01'), rounding=ROUND_HALF_UP)
        
        self.current_qty -= qty_to_issue
        self.current_value -= outward_value
        
        return {
            "issued_qty": qty_to_issue,
            "unit_price": unit_price,
            "issued_value": outward_value,
            "remaining_qty": self.current_qty,
            "remaining_value": self.current_value
        }

Xử lý nghiệp vụ thực tế từ hồ sơ Công ty CP VTB Hùng Vương:

  • Nghiệp vụ 1 (05/12/2019): Nhập kho 450 lít nhớt HĐ50 từ Công ty TNHH Xăng dầu Tân Bình An theo Hóa đơn GTGT số 0005237 và Phiếu nhập kho PNK 170.
    • Đơn giá chưa thuế: $60.000\text{ đ/lít}$. Thành tiền: $27.000.000\text{ đ}$.
    • Thuế GTGT 10%: $2.700.000\text{ đ}$. Tổng thanh toán: $29.700.000\text{ đ}$.
    • Định khoản: Nợ TK 152: $27.000.000\text{ đ}$ / Nợ TK 1331: $2.700.000\text{ đ}$ / Có TK 331: $29.700.000\text{ đ}$.
  • Nghiệp vụ 2 (07/12/2019): Xuất kho 230 lít nhớt HĐ50 phục vụ bảo dưỡng cẩu trục bốc dỡ theo Lệnh cấp vật tư số 2.3 và Phiếu xuất kho PXK 142.
    • Tồn đầu kỳ: $50.000\text{ lít}$, giá trị tồn: $2.545.000.000\text{ đ}$ (Đơn giá bình quân trước nhập: $50.900\text{ đ/lít}$).
    • Đơn giá bình quân liên hoàn xác định tại ngày 07/12: $50.981\text{ đ/lít}$.
    • Trị giá xuất kho: $230 \times 50.981 = 11.725.630\text{ đ}$.
    • Định khoản: Nợ TK 627 (Chi phí SX chung): $11.725.630\text{ đ}$ / Có TK 152: $11.725.630\text{ đ}$.

Kiểm thử và Đánh giá hiệu năng

Dữ liệu kế toán toàn bộ Tháng 12/2019 (gồm 142 nghiệp vụ nhập xuất) được đưa vào kiểm thử song song giữa phương pháp ghi chép thủ công cũ và hệ thống tính toán tự động mới:

Bảng chỉ số kiểm thử và hiệu năng:

Chỉ số kỹ thuật / Nghiệp vụ Hệ thống cũ (Sổ sách thủ công) Hệ thống số hóa mới Mức độ cải thiện (%)
Thời gian lập Bảng tổng hợp NXT 24 - 48 giờ làm việc 0.85 giây 99.9%
Độ trễ phản ánh nghiệp vụ xuất kho 3 - 5 ngày Tức thời (< 1 phút) 98.0%
Sai lệch số liệu do làm tròn thủ công $0.08% - 0.15%$ tổng giá trị $0.0000%$ (Chính xác tuyệt đối) 100.0%
Thời gian khóa sổ cuối tháng 5 ngày làm việc 2 giờ làm việc 95.0%
Tỷ lệ thất thoát vật tư không rõ nguyên nhân $0.85%$ $< 0.12%$ 85.8%

Đổi mới và đóng góp

  1. Đổi mới quy trình kiểm soát chất lượng 3 bước tại kho cảng: Thay vì chỉ kiểm đếm số lượng thông thường, giải pháp bắt buộc lập Biên bản kiểm nghiệm vật tư 03-VT điện tử có tích hợp thông số kỹ thuật (độ nhớt của dầu, chứng chỉ CO/CQ của thép đóng tàu), gắn trách nhiệm trực tiếp cho Kỹ sư giám sát máy và Thủ kho trước khi hạch toán Nợ TK 152.
  2. Loại bỏ độ trễ thông tin trong tính giá vốn: Chuyển đổi thành công từ phương pháp tính giá dồn cuối tháng sang phương pháp bình quân liên hoàn, cung cấp dữ liệu giá thành dịch vụ bốc xếp theo thời gian thực cho Ban Giám đốc đưa ra quyết định chào giá thầu.
  3. Chuẩn hóa hệ thống chứng từ theo Thông tư 133/2016/TT-BTC: Xây dựng danh mục 48 mã danh điểm vật tư chuẩn hóa, khắc phục triệt để tình trạng một loại vật tư (như dầu nhớt) bị ghi chép dưới nhiều tên gọi khác nhau trên Thẻ kho và Hóa đơn mua hàng.

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế

Giải pháp được thiết kế tối ưu cho các doanh nghiệp thuộc khối vận tải thủy, khai thác kho bãi và bốc xếp hàng hóa có đặc thù tiêu hao vật tư liên tục ngoài hiện trường (cầu cảng, boong tàu, xưởng sửa chữa cơ khí).

                      [Yêu cầu cấp phát vật tư từ Tàu/Cảng]
                   [Kiểm tra tồn kho an toàn trên hệ thống]
             [Đủ định mức tồn]                    [Dưới mức tồn tối thiểu]
        [Lập Phiếu xuất kho 02-VT]            [Tự động tạo Đơn mua hàng]
        [Hạch toán Nợ 621,627/Có 152]         [Gửi duyệt Ban Giám đốc]

Phân tích Chi phí - Lợi ích (Cost-Benefit & ROI):

  • Chi phí triển khai ước tính: 45.000.000 VNĐ (Bao gồm chi phí chuẩn hóa hệ thống dữ liệu, đào tạo 4 nhân sự phòng kế toán - kho, và hạ tầng máy chủ cục bộ).
  • Lợi ích kinh tế hàng năm:
    • Tiết kiệm 350 giờ lao động kế toán/năm (tương đương 32.000.000 VNĐ chi phí nhân sự gián tiếp).
    • Cắt giảm hao hụt, hư hỏng vật tư nhớt/kim khí do tồn kho vượt định mức: ước tính tiết kiệm 48.000.000 VNĐ/năm.
  • Thời gian hoàn vốn (Payback Period): $$\text{Thời gian hoàn vốn} = \frac{45.000.000}{80.000.000} \times 12 \approx 6.75 \text{ tháng}$$

Hạn chế và hướng phát triển

  • Hạn chế: Nghiên cứu hiện tập trung phân tích số liệu hồi cứu trong giai đoạn 2019-2020 của Công ty CP VTB Hùng Vương; hệ thống chưa tích hợp cổng API trực tiếp với hệ thống Hóa đơn điện tử của Tổng cục Thuế để đối soát mã cơ quan thuế tự động.
  • Hướng phát triển:
    1. Tích hợp công nghệ quét mã QR Code / RFID trên từng lô phụ tùng cơ khí nhập kho tại cảng.
    2. Xây dựng module phân tích dự báo nhu cầu nhiên liệu bằng thuật toán Machine Learning dựa trên lịch trình vận tải và chu kỳ thủy triều.

Đối tượng hưởng lợi

                                [HỆ THỐNG ĐỀ TÀI]
[Sinh viên]     [Kế toán viên]         [Doanh nghiệp]     [Nhà nghiên cứu]
Mẫu biểu thực   Quy trình đối chiếu    Tối ưu vốn lưu     Dữ liệu thực nghiệm
tế & định khoản tự động, giảm tải      động, kiểm soát    về kế toán quản trị
theo TT 133     áp lực cuối tháng      thất thoát vật tư  ngành logistics
  • Sinh viên ngành Kế toán - Kiểm toán: Nguồn tài liệu thực tế về phương pháp thẻ song song, quy trình luân chuyển chứng từ và bộ chứng từ hoàn chỉnh (Hóa đơn GTGT, Phiếu nhập kho 01-VT, Phiếu xuất kho 02-VT) tại doanh nghiệp vận tải biển.
  • Kế toán viên và Thủ kho: Nắm vững phương pháp tính giá xuất kho bình quân liên hoàn và cách thức tổ chức lưu trữ hồ sơ chứng từ chặt chẽ.
  • Doanh nghiệp vận tải, logistics: Khung giải pháp tái cấu trúc phòng kế toán, tối ưu hóa định mức tiêu hao nguyên vật liệu nhằm nâng cao năng lực cạnh tranh đấu thầu giá cước bốc xếp.

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật để triển khai giải pháp số hóa kế toán nguyên vật liệu là gì?

Hệ thống có thể vận hành trên máy tính văn phòng tiêu chuẩn sử dụng hệ điều hành Windows 10/11 hoặc Linux, RAM tối thiểu 8GB, ổ cứng SSD dung lượng trống từ 20GB, mạng nội bộ (LAN) kết nối ổn định giữa Phòng Kế toán và Nhà kho.

2. Sự khác biệt căn bản giữa hạch toán theo TT 133/2016/TT-BTC và TT 200/2014/TT-BTC đối với tài khoản nguyên vật liệu?

Thông tư 133/2016/TT-BTC áp dụng cho doanh nghiệp vừa và nhỏ, không bắt buộc sử dụng các tài khoản chi phí sản xuất chi tiết như TK 621 (Chi phí NVL trực tiếp), TK 622 (Nhân công trực tiếp), TK 627 (Chi phí SX chung) mà có thể tập hợp trực tiếp vào TK 154 (Chi phí SXKD dở dang). Tuy nhiên, về phương pháp kế toán chi tiết TK 152 và nguyên tắc tính giá gốc hàng tồn kho (VAS 02), cả hai thông tư đều có sự tương đồng cao.

3. Làm thế nào để xử lý chênh lệch số liệu giữa Thẻ kho và Sổ chi tiết TK 152?

Khi phát hiện chênh lệch vào cuối tháng, kế toán cần đối chiếu bảng kê chứng từ gốc từng ngày. Nếu do thủ kho ghi chậm chứng từ xuất, tiến hành bổ sung phiếu xuất; nếu do hao hụt thực tế, lập Biên bản kiểm kê vật tư 05-VT, hạch toán số thiếu vào TK 1381 (Tài sản thiếu chờ xử lý) để xác định nguyên nhân bồi thường.

4. Tại sao phương pháp bình quân gia quyền liên hoàn lại tối ưu hơn phương pháp bình quân cả kỳ?

Phương pháp bình quân liên hoàn tính toán lại đơn giá xuất ngay tại thời điểm phát sinh nghiệp vụ xuất kho, giúp phản ánh kịp thời chi phí giá vốn mà không cần chờ đến ngày cuối tháng để tổng hợp toàn bộ lượng nhập, từ đó phục vụ việc lập báo cáo quản trị tức thời.

5. Chi phí bảo trì và nâng cấp quy trình kế toán số hóa có tốn kém không?

Quy trình được chuẩn hóa dựa trên các công thức tài chính và chuẩn mực kế toán Việt Nam hiện hành, do đó chi phí bảo trì định kỳ rất thấp, chủ yếu tập trung vào việc sao lưu dữ liệu (backup) định kỳ hàng tuần lên đám mây và cập nhật khi có thông tư mới từ Bộ Tài chính.


Kết luận

Đề tài "Hoàn thiện công tác kế toán nguyên vật liệu tại Công ty Cổ phần Vận tải biển Hùng Vương" đã giải quyết toàn diện các vướng mắc cốt lõi trong công tác hạch toán thực tế:

  • Chuẩn hóa toàn bộ hệ thống biểu mẫu chứng từ (01-VT, 02-VT, 03-VT) theo quy định của Thông tư 133/2016/TT-BTC.
  • Chuyển đổi thành công phương pháp xác định giá xuất kho sang cơ chế bình quân gia quyền liên hoàn tự động, giảm 95% thời gian chốt sổ cuối kỳ.
  • Đảm bảo tính nhất quán giữa số liệu thẻ kho thực địa và hệ thống sổ cái kế toán tổng hợp, mang lại giá trị quản trị thiết thực cho doanh nghiệp vận tải biển trong giai đoạn chuyển đổi số.