AccOS Pro Tax Data Flow Analysis

วิเคราะห์เส้นทางข้อมูลของแบบฟอร์มภาษีทั้งหมด — ว่าข้อมูลมาจาก Feature ไหน และนักบัญชีต้องบันทึกอะไรบ้าง

สารบัญ

01. สถาปัตยกรรม Data Flow รวม

ลักษณะงานของนักบัญชี (Data Entry Layer) Bills (ใบรับวางบิล) Invoices (ใบส่งInvoice) Journal Entries (สมุดรายวัน) Payroll (เงินเดือน) Vendors (เจ้าหนี้) Customers (ลูกหนี้) Fixed Assets (ทรัพย์สิน) Bank Transactions Manual Input (กรอกเอง) │ │ │ ▼ ▼ ▼ Database Layer (PostgreSQL) ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ bills │ │ invoices │ │ journal_ │ │ payrolls/ │ │ (whtRate, │ │ (outputVat, │ │ entries + │ │ payroll_ │ │ whtAmount, │ │ total, │ │ journal_ │ │ lines │ │ vatRate...) │ │ vatAmount) │ │ lines │ │ │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ │ │ │ ▼ ▼ ▼ ▼ Service Layer (apps/api/src/services/tax.ts) loadSourceData() ──▶ computeTaxForm() ──▶ switch(formType) ──▶ computeXxx() │ │ ▼ ▼ Shared Compute Engine (packages/shared/src/accounting/) tax-engine.ts tax-engine-extended.ts tax-engine-extended-v2.ts computePP30() computePorPor12/4/13() computeWHTByType() computePND1() computeLandBuilding() computeSBT() computePND3() computeVehicleTax() computeInsuranceTax() computePND53() computeStampDuty() computeHotelTax() computePP36() computeBOI() computePetroleumTax() computePor40() computeTransferPricing() computeRemittanceTax() │ ▼ Persistence: tax_forms table (payload JSONB) ┌────────────────────────────────────────────────────────────────┐ │ formType │ period │ status │ totalTax │ totalIncome │ payload │ └────────────────────────────────────────────────────────────────┘

หลักการสำคัญ: Journal Entries คือ Single Source of Truth

ทุกฟอร์มภาษีไม่ว่าจะเป็น VAT, WHT, CIT, PP36 — ล้วนคำนวณจากข้อมูลใน Journal Entries (สมุดรายวัน) ทั้งสิ้น เมื่อนักบัญชีบันทึก Bill หรือ Invoice ระบบจะ auto-post เข้า Journal Entries ให้อัตโนมัติ แล้ว engine คำนวณภาษีจากข้อมูลนั้น

ประเภทของ Data Source

ประเภทวิธีเก็บข้อมูลFeature ที่เกี่ยวข้อง
Auto-computeระบบดึงข้อมูลจาก DB อัตโนมัติ นักบัญชีไม่ต้องกรอกเพิ่มBills, Invoices, Journal Entries
Manual Inputนักบัญชีต้องกรอกตัวเลขลงใน form payload โดยตรงPP4 (ป้าย), PP13 (สถานบริการ), ภาษีที่ดิน, รถยนต์, ประกัน, โรงแรม, ปิโตรเลียม, Remittance, RE Transfer
Hybridดึงข้อมูลจาก DB บางส่วน + กรอกข้อมูลเพิ่มPND1 (bills + journals), PP36/Por40 (journals + manual adjustments)
Journal-basedอ่านจาก journal_lines โดยตรง (whtRate, whtAmount, vatRate, vatAmount)PND1 (payroll + manual journals), PP36, Por40

02. ภาษีมูลค่าเพิ่ม VAT

Auto-compute จาก Bills + Invoices

เส้นทางข้อมูล VAT

นักบัญชีสร้าง Invoice (ขาย) + นักบัญชีสร้าง Bill (ซื้อ) + ระบบ auto-post Journal computePP30() ภ.พ.30
ฟอร์มฟีเจอร์ที่สร้างข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine คำนวณ
ภ.พ.30 (pp30)
  • Invoices (ฝั่งขาย) — สร้างจากหน้า Invoices
  • Bills (ฝั่งซื้อ) — สร้างจากหน้า Bills
  • Vendors & Customers — ข้อมูลคู่ค้า
  • Invoice: หมายเลข, วันที่, ลูกค้า, รายการสินค้า/บริการ, ราคา, vatRate (7%), vatAmount
  • Bill: หมายเลข, วันที่, vendor, รายการ, ราคา, vatRate (7%), vatAmount, whtRate, whtAmount
computePP30(period, invoices, bills, vendors, customers)
คำนวณ Output VAT (ฝั่งขาย) - Input VAT (ฝั่งซื้อ) = VAT ที่ต้องชำระ
ภ.พ.20 (pp20) Manual input — กรอกใน form payload
  • grossReceipt — รายได้รวม
  • สำหรับกิจการเฉพาะ (รายได้ < 1.8M)
Manual (ไม่มี auto-compute engine)
ภ.พ.60 (pp60) Manual input — กรอกใน form payload
  • totalRevenue — รายได้จาก e-Commerce ต่างประเทศ
  • vatAmount — ภาษีมูลค่าเพิ่ม
Manual (ไม่มี auto-compute engine)

03. ภาษีหัก ณ ที่จ่าย WHT — ฟอร์มหลัก

Auto-compute จาก Bills + Journals

เส้นทางข้อมูล WHT

นักบัญชีสร้าง Bill (มี whtRate) ระบบ auto-post Journal (มี whtAmount) computePND3/53/1() ภ.ง.ด.3 + ภ.ง.ด.53 → ภ.ง.ด.1
ฟอร์มฟีเจอร์ที่สร้างข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.ง.ด.3 (pnd3)
  • Bills ที่ vendor.type = individual (บุคคลธรรมดา)
  • Vendors — ต้องมี taxId 13 หลัก, branch, address
  • Bill: หมายเลข, วันที่, vendor, รายการ, ราคา, whtRate (%), whtAmount
  • Vendor: ชื่อ, เลขประจำตัวผู้เสียภาษี 13 หลัก, สาขา, ที่อยู่, type: "individual"
computePND3(period, bills, vendors)
filter bills ที่ whtAmount > 0 + vendor.type = individual
ภ.ง.ด.53 (pnd53)
  • Bills ที่ vendor.type = corporate (นิติบุคคล)
  • Vendors — เช่นเดียวกับ above
  • Bill: เช่นเดียวกับ above
  • Vendor: type: "corporate" (สำคัญมาก)
computePND53(period, bills, vendors)
filter bills ที่ whtAmount > 0 + vendor.type = corporate
ภ.ง.ด.1 (pnd1)
  • Bills (same as PND3 + PND53)
  • Journal Entries ที่ sourceType = payroll หรือ manual
  • Payroll — สร้างจากหน้า Payroll (auto-post เข้า journal)
  • ข้อมูลเดียวกับ PND3 + PND53
  • Journal Entries (manual/payroll): บรรทัดที่มี whtRate และ whtAmount
computePND1(period, bills, vendors, undefined, journals)
รวม PND3 + PND53 + journal lines (payroll + manual)
ภ.ง.ด.50 (pnd50) Same source as PND3/53 — รายชื่อผู้ถูกหัก ข้อมูลเดียวกับ PND3 + PND53 (รายชื่อ vendor ทั้งหมด) computeWHTByType()
ภ.ง.ด.50 Annual (pnd50_annual) Bills ทั้งปี ข้อมูลเดียวกับข้างบน แต่รวมทั้งปี computePND50Annual(year, bills, vendors)
ภ.ง.ด.51 (pnd51) Bills (กรณีพิเศษ) ข้อมูลเดียวกับ above computeWHTByType()
50 ทวิ (wht_cert) Bills + Vendors (หลังยื่น PND1) ข้อมูลเดียวกับ PND3/53 (แยกตาม vendor) Auto-generate จาก bills + vendors

04. ภาษีหัก ณ ที่จ่าย WHT — ฟอร์มเฉพาะกิจ

Auto-compute จาก Bills
ฟอร์มฟีเจอร์ที่สร้างข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.ง.ด.2 (pnd2) Bills (vendor.type = corporate) เหมือน PND53 แต่เป็นฟอร์มหลัก computeWHTByType(period, 'pnd2', bills, vendors)
ภ.ง.ด.2ก (pnd2a) Bills (กรณีขายอสังหา — นิติบุคคล)
  • Bill ที่มีรายการเกี่ยวกับการขายอสังหา
  • Vendor type = corporate
computeWHTByType(period, 'pnd2a', bills, vendors)
ภ.ง.ด.3ก (pnd3a) Bills (กรณีขายอสังหา — บุคคลธรรมดา)
  • Bill ที่มีรายการเกี่ยวกับการขายอสังหา
  • Vendor type = individual
computeWHTByType(period, 'pnd3a', bills, vendors)
ภ.ง.ด.5 (pnd5) Bills (เงินได้อื่นๆ) Bill ที่มี whtRate > 0 (ประเภทเงินได้อื่น) computeWHTByType(period, 'pnd5', bills, vendors)
ภ.ง.ด.6 (pnd6) Bills (ขายทอดตลาด) Bill กรณีขายทอดตลาด computeWHTByType(period, 'pnd6', bills, vendors)
ภ.ง.ด.9 (pnd9) Bills (เงินปันผล/ดอกเบี้ย) Bill ที่เกี่ยวกับเงินปันผลหรือดอกเบี้ย computeWHTByType(period, 'pnd9', bills, vendors)
ภ.ง.ด.20 (pnd20) Bills (นิติบุคคลต่างประเทศ) Bill ที่จ่ายให้นิติบุคคลต่างประเทศ computeWHTByType(period, 'pnd20', bills, vendors)
ภ.ง.ด.22 (pnd22) Bills (ขายสินค้า) Bill ที่เกี่ยวกับการขายสินค้า computeWHTByType(period, 'pnd22', bills, vendors)
ภ.ง.ด.54 (pnd54) Bills (กองทุนรวม) Bill ที่เกี่ยวกับกองทุนรวม computeWHTByType(period, 'pnd54', bills, vendors)

05. ภาษีเงินได้นิติบุคคล CIT

Journal-based + Manual

เส้นทางข้อมูล CIT

นักบัญชีบันทึกรายการทุกอย่าง Journal Entries (ทุก sourceType) Chart of Accounts computePP36/Por40() ภ.พ.36 / ภ.ธ.40
ฟอร์มฟีเจอร์ที่สร้างข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.พ.36 (pp36)
  • Journal Entries ทั้งหมดในครึ่งปี (status = posted)
  • Chart of Accounts — ผังบัญชี
  • Bills + Invoices (ผ่าน auto-post)
  • นักบัญชี: บันทึกรายการค้า-ขาย จ่าย-รับ ทุกรายการ ผ่าน Bills, Invoices, Manual Journal
  • ระบบ: auto-post เข้า Journal Entries แล้ว computePP36() อ่านจาก journals + accounts
computePP36(year, half, journals, accounts)
คำนวณ accountingNetProfit → CIT payable
ภ.ธ.40 (por40)
  • Journal Entries ทั้งปี
  • Chart of Accounts
  • บันทึกรายการทั้งปี (same as PP36 แต่รวมทั้งปี)
  • รวมรายได้ ค่าใช้จ่าย กำไร-ขาดทุน ทั้งปี
computePor40(year, journals, accounts)
คำนวณ CIT ประจำปี + progressive tax
ภ.ธ.50 (por50) Manual input — กรอกประมาณการกำไร
  • half — ครึ่งปีที่ 1 หรือ 2
  • estimatedNetProfit — กำไรสุทธิประมาณการ
computeCITEstimated(year, half, estProfit)
ภ.ธ.51 (por51) Manual input
  • totalAmount — ภาษีที่จ่ายเกิน
computeMisc('por51', period, totalAmt)
ภ.ธ.52 (por52) Manual input
  • totalAmount — มูลค่ารายการที่เกี่ยวข้องกัน
computeMisc('por52', period, totalAmt)
ภ.ธ.54 (por54) Manual input
  • totalAmount — รายได้จากต่างประเทศ
computeMisc('por54', period, totalAmt)
ภ.ธ.91 (por91) Manual input
  • ข้อมูล CIT สำหรับบริษัทต่างประเทศ
Manual (default case)

06. ภาษีธุรกิจเฉพาะ SBT

Manual Input
ฟอร์มฟีเจอร์ที่สร้างข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.พ.40 (pp40) Manual input — กรอกใน form payload
  • businessType — ประเภทธุรกิจ (banking/insurance/real_estate/hotel/other)
  • grossReceipt — รายรับรวม
computeSBT(period, businessType, grossReceipt)
คำนวณ 3% ของรายรับ
ภ.บ.จ.1 (bj1) Manual input
  • totalAmount — จำนวนเงิน
computeMisc('bj1', period, totalAmt)
ภ.บ.จ.2 (bj2) Manual input
  • totalAmount — จำนวนเงิน
computeMisc('bj2', period, totalAmt)

07. ภาษีป้าย & สถานบริการ & WHT พิเศษ

ฟอร์มประเภทข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.ป.4 (pp4) Manual Input
  • signboards[] — array ของป้ายแต่ละป้าย
  • แต่ละป้าย: ชื่อ, ขนาด (กว้าง x สูง), ประเภท, สถานที่ติดตั้ง
computePorPor4(year, signboards)
คำนวณภาษีตามขนาดป้าย (ไม่เกิน 3,000 บ./ป้าย/ปี)
ภ.ป.13 (pp13) Manual Input
  • venues[] — array ของสถานบริการแต่ละแห่ง
  • แต่ละแห่ง: ชื่อ, ประเภท (ผับ/บาร์/คาราโอเกะ/นวด/อาบอบนวด), รายรับรวม
computePorPor13(period, venues)
คำนวณภาษีสถานบริการ 10%
ภ.ป.12 (pp12) Auto-compute จาก Bills
  • Bills ที่เป็นค่าจ้างทำของ จ่ายเป็นเงินสดไม่เกิน 10,000 บาท
computePorPor12(period, bills, vendors)
คำนวณหัก 1%

08. ภาษีที่ดิน & ยานยนต์

Manual Input
ฟอร์มข้อมูลที่นักบัญชีต้องบันทึกEngine
ภาษีที่ดินฯ (land_building)
  • parcels[] — array ของที่ดินแต่ละแปลง
  • แต่ละแปลง: ชื่อ, เลขที่โฉนด, ประเภท (ที่ดิน/สิ่งปลูกสร้าง/คอนโด/ที่ดิน+อาคาร), มูลค่าประเมิน, อัตราภาษี
computeLandBuilding(year, parcels)
คำนวณภาษีตามมูลค่าประเมิน x อัตรา
ภาษีรถยนต์ (vehicle)
  • vehicles[] — array ของรถยนต์
  • แต่ละคัน: ชื่อ, เลขทะเบียน, ประเภท, cc/น้ำหนัก, ปีจดทะเบียน, ภาษีค้างชำระ (ถ้ามี)
computeVehicleTax(year, vehicles)
คำนวณภาษีตาม cc/น้ำหนัก + ค่าปรับล่าช้า

09. อากรแสตมป์

ฟอร์มประเภทข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine
อากรแสตมป์ (stamp_duty) Manual Input
  • items[] — array ของรายการแสตมป์
  • แต่ละรายการ: ประเภท (เช่า/กู้/จ้างทำของ/โอนหุ้น/อื่นๆ), ฐานเงินได้, อัตรา
computeStampDuty(items)
ภ.ด.ส.1 (ds1) Manual Input
  • documentId — เลขที่เอกสาร
  • documentDate — วันที่ทำสัญญา
  • parties — ชื่อคู่สัญญา
  • baseAmount — ยอดเงินในสัญญา
computeStampDutyByType(docId, 'ds1', date, parties, amount)
เช่าทรัพย์ 0.1%
ภ.ด.ส.2-5 (ds2-ds5) Manual Input เช่นเดียวกับ ds1 แต่ระบุ type ต่างกัน computeStampDutyByType() — อัตราตามประเภท

10. จดทะเบียนโอนอสังหาริมทรัพย์

Manual Input
ฟอร์มข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.ร.ด.1 (rd1) — บุคคล
  • transferType — individual / corporate / foreign
  • propertyType — land / building / condo / land_with_building
  • appraisedValue — มูลค่าประเมิน
  • purchasePrice — ราคาซื้อขาย
  • ownershipYears — จำนวนปีที่ถือครอง
  • sellerTaxId — เลขประจำตัวผู้เสียภาษี (ผู้ขาย)
  • buyerTaxId — เลขประจำตัวผู้เสียภาษี (ผู้ซื้อ)
computeRealEstateTransfer(data)
คำนวณภาษีเงินได้, ภาษีธุรกิจเฉพาะ, อากรแสตมป์ ตามประเภทผู้โอน
ภ.ร.ด.2 (rd2) — นิติบุคคล
ภ.ร.ด.3 (rd3) — ต่างด้าว
ภ.ร.ด.90 (rd90) — สรุป Manual input (สรุปรายการ) Manual
ภ.ร.ด.91 (rd91) — เพิ่มเติม
  • ownershipYears > 5 ปี (เสียภาษีเพิ่ม)
Manual (คำนวณจาก ownershipYears)

11. ภาษีหลักทรัพย์

Manual Input
ฟอร์มข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.ส.ร.1 (sr1) — บุคคล
  • รายละเอียดการซื้อขายหลักทรัพย์
  • มูลค่าการขาย, ต้นทุน, กำไร/ขาดทุน
  • ประเภทผู้ถือหุ้น (บุคคล/นิติ/กองทุน)
Manual — ไม่มี auto-compute engine
ภ.ส.ร.2 (sr2) — นิติบุคคล
ภ.ส.ร.3 (sr3) — กองทุน
ภ.ส.ร.4 (sr4) — สรุปรายปี สรุปภาษีหลักทรัพย์ทั้งปี Manual

12. Remittance Tax — ภาษีเงินได้ส่งออก

Manual Input
ฟอร์มข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.บ.ท.1 (bt1) — ครึ่งปี
  • frequency — monthly / half_year / annual / special
  • totalRemittance — ยอดเงินส่งออกทั้งหมด
  • exemptAmount — จำนวนเงินที่ได้รับยกเว้น
computeRemittanceTax(period, frequency, totalRemit, exempt)
คำนวณ 5% ของเงินได้สุทธิส่งออก
ภ.บ.ท.2 (bt2) — รายปี
ภ.บ.ท.3 (bt3) — รายเดือน
ภ.บ.ท.4 (bt4) — กรณีพิเศษ

13. ภาษีเบี้ยประกัน & โรงแรม & ปิโตรเลียม

Manual Input
ฟอร์มข้อมูลที่นักบัญชีต้องบันทึกEngine
ภ.ย.1-3 (y1-y3)
  • taxpayerType — individual / corporate
  • lifeInsurance — เบี้ยประกันชีวิต
  • nonLifeInsurance — เบี้ยประกันวินาศภัย
  • policyCount — จำนวนกรมธรรม์
computeInsuranceTax(period, type, life, nonLife, count)
คำนวณภาษีเบี้ยประกัน 2.5%
ภ.ร.1-2 (r1-r2)
  • totalRoomRevenue — รายได้ห้องพัก
  • totalServiceRevenue — รายได้บริการ
  • occupancyRate — อัตราการเข้าพัก (%)
  • roomNights — จำนวนคืนที่เข้าพัก
computeHotelTax(period, roomRev, serviceRev, occupancy, nights)
คำนวณภาษีโรงแรม 1.5%
ภ.อ.1-3 (o1-o3)
  • taxpayerType — corporate / individual
  • naturalGas — ปริมาณก๊าซธรรมชาติ
  • crudeOil — ปริมาณน้ำมันดิบ
  • condensate — ปริมาณคอนเดนเสท
computePetroleumTax(period, type, ng, co, cd)
คำนวณภาษีปิโตรเลียม

14. BOI & Transfer Pricing

ฟอร์มประเภทข้อมูลข้อมูลที่นักบัญชีต้องบันทึกEngine
BOI (boi) Manual Input
  • boiCertificate — ใบสำคัญส่งเสริมการลงทุน
  • เลขที่บัตร, วันหมดอายุ, เงื่อนไขการยกเว้นภาษี
  • เชื่อมกับ CIT forms ที่ filed แล้ว
computeBOI(cert, citForms)
คำนวณภาษีที่ประหยัดได้จาก BOI
Transfer Pricing (transfer_pricing) Manual Input
  • transferPricingDoc — เอกสาร Local File
  • รายละเอียดรายการโอนระหว่างบริษัทในเครือ
  • ราคาตลาด vs ราคาโอนจริง
computeTransferPricing(doc)
วิเคราะห์ราคาโอนระหว่างบริษัทในเครือ

15. สรุป Feature Matrix — ข้อมูลมาจากฟีเจอร์ไหน

Feature / Module ฟอร์มภาษีที่ได้ข้อมูลจาก Feature นี้ วิธีเก็บข้อมูล
Bills (ใบรับวางบิล) ภ.พ.30, ภ.ง.ด.1, ภ.ง.ด.3, ภ.ง.ด.53, ภ.ง.ด.2, 2ก, 3ก, 5, 6, 9, 20, 22, 50, 51, 54, ภ.ป.12 นักบัญชีสร้าง Bill → auto-post Journal
Invoices (ใบส่ง Invoice) ภ.พ.30 (Output VAT), ภ.พ.36, ภ.ธ.40 (ผ่าน journal) นักบัญชีสร้าง Invoice → auto-post Journal
Journal Entries (สมุดรายวัน) ภ.ง.ด.1 (payroll+manual), ภ.พ.36, ภ.ธ.40 Auto-post จาก Bills/Invoices/Payroll หรือ Manual Journal
Payroll (เงินเดือน) ภ.ง.ด.1 (มาตรา 40(1) WHT rate = 0%) นักบัญชีบันทึก payroll → auto-post Journal
Vendors (เจ้าหนี้) ภ.ง.ด.3, ภ.ง.ด.53, ภ.ง.ด.1 (+ ฟอร์มย่อย WHT ทั้งหมด) นักบัญชีสร้าง Vendor พร้อม taxId, type
Customers (ลูกหนี้) ภ.พ.30 (Output VAT) นักบัญชีสร้าง Customer
Chart of Accounts (ผังบัญชี) ภ.พ.36, ภ.ธ.40 (CIT คำนวณจากบัญชีรายได้/ค่าใช้จ่าย) ตั้งค่าผังบัญชีตั้งแต่แรก
Manual Input (กรอกเอง) ภ.ป.4, ภ.ป.13, ภาษีที่ดิน, ภาษีรถยนต์, อากรแสตมป์, ภ.ด.ส.1-5, ภ.ร.ด.1-3, 90, 91, ภ.ส.ร.1-4, ภ.บ.ท.1-4, ภ.ย.1-3, ภ.ร.1-2, ภ.อ.1-3, BOI, Transfer Pricing, ภ.พ.20, ภ.พ.40, ภ.พ.60, ภ.ธ.50-54 นักบัญชีกรอกข้อมูลลงใน form โดยตรง

สรุปสำคัญ: นักบัญชีต้องทำอะไรบ้าง

Step 1 — ตั้งค่าข้อมูลพื้นฐาน (ทำครั้งเดียว):

  • สร้าง Company ข้อมูล (taxId, fiscalYearStart)
  • สร้าง Chart of Accounts (ผังบัญชี)
  • สร้าง Vendors พร้อม taxId, branch, type (individual/corporate)
  • สร้าง Customers

Step 2 — บันทึกรายการตามปกติ (ทำทุกวัน):

  • บันทึก Bills (ใบรับวางบิล) — ใส่ whtRate, whtAmount, vatRate, vatAmount
  • บันทึก Invoices (ใบส่ง Invoice) — ใส่ vatRate, vatAmount
  • บันทึก Payroll (เงินเดือน) — auto-post เข้า journal
  • บันทึก Manual Journal (ถ้ามีรายการพิเศษ)

Step 3 — ระบบคำนวณภาษีอัตโนมัติ:

  • VAT (ภ.พ.30) — ดึงจาก Bills + Invoices อัตโนมัติ
  • WHT (ภ.ง.ด.3, 53, 1) — ดึงจาก Bills (whtRate > 0) อัตโนมัติ
  • CIT (ภ.พ.36, ภ.ธ.40) — ดึงจาก Journal Entries ทั้งหมดอัตโนมัติ
  • ภาษีอื่นๆ (ป้าย, ที่ดิน, ประกัน, ฯลฯ) — นักบัญชีกรอกข้อมูลเอง