Skip to content

URD: Chi phí

ModuleCORE-12Phiên bảnv0.4
Trạng tháiIn-progressNgày2026-05-30

1. Mục đích

Định nghĩa các yêu cầu hướng người dùng cho Chi phí — sổ sách của merchant. Module phải theo dõi tiền trên các tài khoản (tiền mặt, ngân hàng, QR, mobile-POS), ghi nhận mọi di chuyển dưới dạng một phiếu ghi-kép cân bằng, phân loại thu và chi theo danh mục, và tạo phần lớn hạch toán tự động phản ứng với bán hàng, mua hàng, và di chuyển kho để chủ không phải ghi các dòng tiền thường nhật bằng tay.

2. Phạm vi

Bao gồmLoại trừ
Tài khoản tiền / ví (Tiền mặt, Ngân hàng, QR, Mobile-POS)Xử lý cổng-thanh-toán (module Payment)
Tài khoản kiểm soát nội bộ (Tồn kho, Giá vốn hàng bán)Phát hành hóa đơn thuế (module Invoice)
Phiếu: thu, chi, chuyển khoản, điều chỉnhTính số lượng & định giá kho (module Tồn kho)
Dòng sổ cái (nợ / có) cho mỗi phiếuTheo dõi ngân sách, P&L, dự báo dòng tiền (tương lai)
Danh mục thu / chi (được seed + tùy chỉnh)Chi phí định kỳ / theo lịch (tương lai)
Tự hạch toán từ thanh toán bán hàng, nhận PO, di chuyển khoChụp ảnh biên lai / OCR (tương lai)
Hủy phiếu bằng đảo cân bằngQuy đổi đa tiền tệ (một tiền tệ cho mỗi phiếu)

3. Định nghĩa

Thuật ngữĐịnh nghĩa
Tài khoản (ví)Một nơi tiền nằm — một ngăn kéo tiền mặt, tài khoản ngân hàng, tài khoản chấp nhận QR, hoặc thiết bị mobile-POS. Giữ một số dư lũy kế.
Tài khoản kiểm soát nội bộMột tài khoản kế toán phi-tiền-mặt (Tồn kho, Giá vốn hàng bán) hệ thống duy trì tự động; không phải tiền người dùng.
PhiếuMột chứng từ kế toán ghi nhận một sự kiện tiền: một phiếu thu (tiền vào), phiếu chi (tiền ra), chuyển khoản (giữa tài khoản), hoặc điều chỉnh.
Dòng sổ cáiMột hàng nợ hoặc có bên trong một phiếu. Một phiếu luôn cân bằng: tổng nợ bằng tổng có nơi cả hai bên áp dụng.
Danh mụcPhân loại thu/chi trên một di chuyển (ví dụ Sale, Purchase, Rent).
Tài khoản mặc địnhTài khoản mà một loại hạch toán tự động định tuyến tới theo mặc định — một cho mỗi loại cho mỗi merchant.
HủyHủy bỏ một phiếu đã phát hành bằng cách hạch toán một bản đảo bằng-và-ngược, giữ bản gốc để kiểm toán.

4. Mô hình khái niệm

Chỉ mang tính khái niệm — schema đầy đủ, enum, và bất biến nằm trong mô hình miền nhà phát triển finance.

5. Yêu cầu chức năng

Một bảng cho mỗi khu vực chức năng. Ưu tiên = MoSCoW (Must / Should / Could / Won't). Mã khu vực khớp với ID của test case.

5.1 Tài khoản (WAL)

IDPYêu cầu
URD-WAL-001MGiữ tài khoản loại Tiền mặt, Ngân hàng, QR, và Mobile-POS, mỗi cái thuộc một merchant
URD-WAL-002MDuy trì một tài khoản mặc định mỗi loại mỗi merchant để định tuyến hạch toán tự động
URD-WAL-003MTự tạo tài khoản mặc định và tài khoản kiểm soát nội bộ của mỗi merchant khi merchant được tạo
URD-WAL-004MTheo dõi số dư hiện tại lũy kế của mỗi tài khoản khi phiếu hạch toán
URD-WAL-005SCho phép tiền tệ tài khoản (mặc định VND)
URD-WAL-006SGiới hạn khả năng thấy tài khoản theo các merchant người dùng được cấp (admin thấy tất cả)

5.2 Phiếu & hạch toán (VCH)

IDPYêu cầu
URD-VCH-001MGhi nhận sự kiện tiền dưới dạng phiếu loại thu, chi, chuyển khoản, hoặc điều chỉnh
URD-VCH-002MMọi phiếu đều cân bằng — nợ bằng có nơi cả hai bên áp dụng
URD-VCH-003MTự phát hành một phiếu thu khi một thanh toán bán hàng thành công, phân loại là Sale
URD-VCH-004MTự phát hành một phiếu chi cho nhà cung cấp khi một đơn mua hàng được nhận
URD-VCH-005MTự hạch toán giá vốn hàng bán và điều chỉnh kho vào tài khoản kiểm soát nội bộ khi di chuyển kho
URD-VCH-006MHạch toán tự động là idempotent — một sự kiện lặp lại không bao giờ hạch toán kép
URD-VCH-007MLiên kết mỗi phiếu tới chứng từ nguồn của nó (đơn bán, đơn mua hàng, di chuyển kho, thủ công)
URD-VCH-008SĐánh số mỗi phiếu đã phát hành theo merchant, theo loại, theo tháng
URD-VCH-009SHỗ trợ vòng đời thủ công: nháp → phát hành, và xóa một bản nháp trước khi phát hành
URD-VCH-010SChuyển tiền giữa hai tài khoản dưới dạng một phiếu chuyển khoản cân bằng duy nhất
URD-VCH-011SHủy một phiếu đã phát hành qua một đảo cân bằng; bản gốc được giữ lại
URD-VCH-012CGán một phiếu vào một phiên ca POS cho di chuyển tiền mặt theo ca

5.3 Dòng sổ cái (TXN)

IDPYêu cầu
URD-TXN-001MMỗi phiếu hạch toán các dòng sổ cái nợ/có với các tài khoản
URD-TXN-002MMột dòng mang tài khoản nó tác động, một danh mục tùy chọn, một số tiền, và bản chụp số-dư-trước/sau
URD-TXN-003MCác dòng chia sẻ tiền tệ của phiếu
URD-TXN-004SMột dòng có thể tham chiếu chứng từ nguồn của nó để truy vết

5.4 Danh mục (CAT)

IDPYêu cầu
URD-CAT-001MCung cấp 14 danh mục hệ thống được seed trải thu và chi
URD-CAT-002MDanh mục được gán loại thu hoặc chi
URD-CAT-003MÁp một danh mục hệ thống tự động cho phiếu tự-sinh (ví dụ Sale, Purchase)
URD-CAT-004SMerchant có thể thêm danh mục tùy chỉnh, lồng dưới một danh mục cha

6. Tiêu chí chấp nhận

AC-VCH-01: Tự thu khi đơn được trả
ChoKhiThì
Một đơn bán được trảSự kiện thanh-toán-thành-công đếnMột phiếu thu được phát hành, phân loại là Sale, liên kết tới đơn bán
Số dư tài khoản nhận tăng lên đúng số tiền
Cùng sự kiện đến lạiXử lý lần thứ haiKhông phiếu thứ hai nào được tạo (idempotent)
AC-VCH-02: Tự chi khi nhận đơn mua hàng
ChoKhiThì
Một đơn mua hàng được nhậnSự kiện PO-được-nhận đếnMột phiếu chi được phát hành cho nhà cung cấp, liên kết tới đơn mua hàng
Giá trị tồn kho dươngPhiếu cân bằng một vế tài sản kho với (các) vế tiền mặt
AC-WAL-01: Tài khoản mặc định & kiểm soát khi có merchant mới
ChoKhiThì
Một merchant được tạoSự kiện merchant được điều hòaCác tài khoản mặc định của merchant được seed
Tài khoản kiểm soát nội bộ Tồn kho và Giá-vốn-hàng-bán tồn tại
AC-VCH-03: Chuyển khoản giữa tài khoản
ChoKhiThì
Hai tài khoản của merchantChủ chuyển một số tiền A → BMột phiếu chuyển khoản hạch toán một nợ và một có giá trị bằng nhau
Tài khoản A giảm và Tài khoản B tăng cùng một lượng
AC-VCH-04: Hủy bằng đảo
ChoKhiThì
Một phiếu đã phát hànhChủ hủy nóMột phiếu đảo cân bằng được hạch toán; bản gốc được giữ lại
Số dư tài khoản bị ảnh hưởng trở về trạng thái trước-phiếu

7. Ràng buộc & Phi mục tiêu

Ràng buộc

IDRàng buộc
C-01Mọi phiếu phải cân bằng (nợ bằng có nơi cả hai bên áp dụng)
C-02Đúng một tài khoản mặc định mỗi loại mỗi merchant
C-03Hạch toán tự động phải idempotent dưới các sự kiện lặp lại
C-04Mọi dòng sổ cái trong một phiếu chia sẻ tiền tệ của phiếu (một-tiền-tệ; mặc định VND)
C-0514 danh mục hệ thống được seed không thuộc merchant
C-06Bản ghi dùng xóa-mềm; phiếu đã phát hành không bao giờ bị xóa-cứng — chúng được hủy
C-07Tài khoản kiểm soát nội bộ phải tồn tại trước khi hạch toán giá-vốn-hàng-bán

Phi mục tiêu

  • Theo dõi ngân sách và chênh lệch
  • Tự động hóa chi phí định kỳ / theo lịch
  • Báo cáo lãi & lỗ và dự báo dòng tiền
  • Chụp ảnh biên lai / OCR
  • Quy đổi đa tiền tệ trong một phiếu

8. Lịch sử phiên bản

NgàyTác giảMô tảVer
2026-02-26P. Do — Product OwnerUser story ban đầuv0.1
2026-04-16P. Do — Product OwnerPhạm vi ví, giao dịch, danh mụcv0.3
2026-05-30Di trú tài liệuTái cấu trúc theo mô hình phiếu ghi-kép đã xác minh (tài khoản / phiếu / dòng sổ cái / danh mục); sửa loại tài khoản và mô hình giao dịchv0.4

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.