· accounting · 1 min read
Deposit Invoicing สำหรับ ERPNext
กรณีซื้อขายแบบมีเงินมัดจำบน ERPNext

อันที่จริงใน ERPNext มีวิธีการจ่ายเงินล่วงหน้าอยู่แล้ว เรียกว่า Advance Payment. แต่สิ่งที่ต้องการในไทยยังไม่ตรงซะทีเดียว ก่อนเราจะไปพูดถึงเงินมัดจำแบบไทยๆ ผมจะขออธิบายวิธีการจ่ายเงินล่วงหน้าหรือ Advance Payment ก่อน หลังจากนั้นจึงจะพูดถึงเงินมัดจำแบบที่เราต้องการหรือ Deposit Invoice
วิธีการการชำระเงินล่วงหน้าใน ERPNext
ใน ERPNext ฟีเจอร์การชำระเงินล่วงหน้าอนุญาตให้ผู้ใช้ชำระ (หรือรับ) ชำระเงินล่วงหน้าและจากนั้นนำชำระเงินเหล่านั้นไปหักกลบกับใบแจ้งหนี้ในภายหลัง
ภาพรวมของกระบวนการชำระเงินล่วงหน้า (อัตราภาษีในประเทศไทยคือ 7%)
การสร้างใบสั่งซื้อ (หรือ ใบสั่งขาย):
- ตัวอย่าง: 100 บาท + ภาษี 7 บาท = 107 บาท
บันทึกการชำระเงินล่วงหน้า:
- การชำระเงินที่ทำกับใบสั่งซื้อ = 107 บาท (การชำระเงินล่วงหน้าโดยไม่มีใบแจ้งหนี้)
การสร้างใบแจ้งหนี้การซื้อ:
- รวมทั้งหมด = 107 บาท ที่ชำระโดยการบันทึกการชำระเงินก่อนหน้านี้
เป็นสิ่งสำคัญที่ต้องทราบว่าวิธีนี้อนุญาตให้มีการชำระเงินโดยไม่มีใบแจ้งหนี้ ซึ่งหมายความว่าภาษีจะไม่ได้ถูกบันทึกในเวลาที่ชำระเงิน ในขณะที่อาจดูตรงไปตรงมา แต่ไม่สามารถใช้ได้ในประเทศไทยและหลายประเทศอื่น ๆ ซึ่งการชำระเงินล่วงหน้าจะต้องตรงกับใบกำกับภาษีเพื่อให้แน่ใจว่าหน้าที่ทางภาษีถูกบันทึกเมื่อมีการออกใบแจ้งหนี้
อ้างอิง: เอกสาร ERPNext
เพื่อจัดการกับข้อจำกัดนี้ Ecosoft ได้พัฒนา Feature ใหม่ให้กับ ERPNext Thailand เราเรียกมันว่าเงินมัดจำ Deposit Invoicing
ด้วยเงินมัดจำใหม่ (Deposit Invoicing)
การสร้างใบสั่งซื้อ (หรือ ใบสั่งขาย):
- ค่าใช้จ่าย 100 บาท + ภาษี 7 บาท = 107 บาท
สร้างใบแจ้งหนี้มัดจำ (ใบแจ้งหนี้การซื้อ):
- เงินมัดจำ 10% = 10 บาท + ภาษี 0.7 บาท = 10.7 บาท
- ชำระเงินใบแจ้งหนี้ปกติ
สร้างใบแจ้งหนี้การซื้อเต็มรูปแบบ จากใบสั่งซื้อ:
- ค่าใช้จ่าย 100 บาท - หักเงินมัดจำ 10 บาท = 90 + VAT 6.3 = 96.3 บาท
- ชำระเงินใบแจ้งหนี้ปกติ
วิธีนี้ช่วยให้ยอดรวมที่ต้องชำระคงอยู่ที่ 107 บาท โดยที่การชำระเงินและการออกใบแจ้งหนี้สะท้อนภาระภาษีอย่างถูกต้อง
มาดูกรณีการใช้งานที่ซับซ้อนมากขึ้นเป็นตัวอย่าง โดยเริ่มจากการตั้งค่าระบบ
การตั้งค่าระบบ
สร้างรายการเป็นรายการมัดจำ
ตั้งค่าเลขที่บัญชีเริ่มต้นสำหรับการบัญชีเงินมัดจำ
การตั้งค่าการขาย
ตรวจสอบให้แน่ใจว่าไฮไลต์ “อนุญาตให้มีอัตราเชิงลบสำหรับรายการ” เพื่อจัดการการคืนเงินมัดจำในใบแจ้งหนี้ถัดไป
กรณีการใช้งาน
- ใบสั่งซื้อ: ซื้อคอมพิวเตอร์ 10 เครื่องที่ 10,000 บาทต่อเครื่อง รวมเป็น 100,000 บาท จากผู้จัดจำหน่าย A
- เงินมัดจำ: 30% = 30,000 บาท จ่ายเมื่อเซ็นชื่อในใบสั่งซื้อ
- งวดที่ 1: 40,000 บาท เมื่อคอมพิวเตอร์ 4 จาก 10 เครื่องถูกส่งมอบ หักเงินมัดจำ 4/10 x 30,000 บาท = 12,000 บาท
- งวดที่ 2: 60,000 บาท เมื่อส่งมอบคอมพิวเตอร์ที่เหลือ 6 จาก 10 เครื่อง หักเงินมัดจำ 6/10 x 30,000 บาท = 18,000 บาท
1) สรุปใบสั่งซื้อ
ยอดที่ต้องชำระทั้งหมด: 107,000 บาท
2) ใบแจ้งหนี้มัดจำการซื้อ
30% ของยอดรวม คลิกที่ “สร้างใบแจ้งหนี้มัดจำ” เพื่อให้ผู้ใช้สามารถปรับเปอร์เซ็นต์และยอดเงินได้ตามต้องการ
ใบแจ้งหนี้เงินมัดจำการซื้อ
บัญชีแยกประเภท
3) ใบแจ้งหนี้การซื้อครั้งที่ 1 (40%)
สร้างใบรับสินค้าโดยปริมาณ = 4 แล้วสร้างใบแจ้งหนี้สำหรับปริมาณ = 4
- การหักเงินมัดจำ: 12,000 บาท
เมื่อมีการสร้างใบแจ้งหนี้ ระบบคำนวณยอดที่จัดสรรตามวิธีที่กำหนด (ไม่ว่าจะเป็นเปอร์เซ็นต์ของใบรับสินค้าหรือยอดเต็มสำหรับใบแจ้งหนี้ถัดไป) ผู้ใช้งานยังสามารถกรอกค่าเองหรือคลิกที่ปุ่ม “รับมัดจำที่จ่าย” เพื่อคำนวณใหม่ตามที่ต้องการ
บัญชีแยกประเภท
4) ใบแจ้งหนี้การซื้อครั้งที่ 2 (60%)
ทำซ้ำขั้นตอนเดียวกันเพื่อสร้างใบแจ้งหนี้สุดท้าย
- การหักเงินมัดจำ: 18,000 บาท
หมายเหตุ
- ฟังก์ชันการทำงานนี้ใช้ได้เหมือนกันสำหรับรอบการขาย
- ในแท็บเงื่อนไขของใบสั่งขาย/ซื้อ เมื่อ Deposit on 1st Invoice = True หมายความว่าช่องแรกของใบแจ้งหนี้จะต้องเป็นเงินมัดจำ; มิฉะนั้นจะเป็นทางเลือก
- หากมีการสร้างใบแจ้งหนี้มัดจำ มันจะต้องเป็นใบแจ้งหนี้แรกของคำสั่งที่เกี่ยวข้อง เนื่องจากจะใช้สำหรับการหักเงินมัดจำในใบแจ้งหนี้ถัดไป
- ระบบรองรับกรณีทั้งภาษีรวมและภาษีแยก (Included/Excluded VAT)
- สามารถสร้างใบแจ้งหนี้มัดจำได้เฉพาะจากใบสั่งขาย/ซื้อผ่านปุ่ม “สร้างใบแจ้งหนี้มัดจำ”; อย่างไรก็ตาม:
- ใบแจ้งหนี้ถัดไปสามารถทำงานในรูปแบบการผลักดันและดึง (รายการสามารถมาจากคำสั่ง)
- ใบแจ้งหนี้เดียวสามารถดึงรายการจากหลายคำสั่งได้
by Kitti U.