งานดูมีกำไร แต่เงินเดือนต้องจ่ายก่อน
รับงานซอฟต์แวร์ 1 ล้านบาท ต้นทุนตรง 700,000 บาท เหลือส่วนต่าง 300,000 บาท แต่ระหว่างทำงาน เจ้าของอาจต้องหาเงินอีก 500,000 บาทมาหมุนก่อนเก็บเงินงวดสุดท้ายได้
ตัวเลขนี้เป็นกรณีสมมติ ไม่ใช่ผลลัพธ์ของลูกค้ารายใด เหตุที่ผมอยากให้ดูเงื่อนไขรับเงินพร้อมกับราคางาน เพราะการคำนวณส่วนต่างช่วยตอบว่างานนี้น่ารับหรือไม่ ส่วนแผนเงินสดช่วยตอบว่าเรามีเงินทำจนจบหรือเปล่า
บทความนี้จะตามเงินของโครงการเดียวตั้งแต่เริ่มงาน วางบิล ตรวจรับ จนถึงรับเงินจริง แล้วเปรียบเทียบกับธุรกิจสมาชิก ตัวอย่างทั้งหมดไม่รวมค่าใช้จ่ายส่วนกลาง VAT ภาษีหัก ณ ที่จ่าย ดอกเบี้ย และภาษีเงินได้ ส่วนต่าง 300,000 บาทจึงไม่ใช่กำไรสุทธิหรือกระแสเงินสดจากการดำเนินงาน
อย่าใช้สถานะเดียวแทนเหตุการณ์ 5 อย่าง
เซ็นสัญญา ทำงาน รับรู้รายได้ มีสิทธิเรียกเก็บเงิน และรับเงิน เป็นเหตุการณ์ที่อาจเกิดคนละวัน ใบสั่งซื้อช่วยยืนยันว่าลูกค้าอนุมัติซื้อ แต่ไม่ได้พิสูจน์ว่าตรวจรับแล้วหรือเงินเข้าบัญชีแล้ว
ตาม IFRS 15 สินทรัพย์ที่เกิดจากสัญญา (contract asset) คือสิทธิรับสิ่งตอบแทนที่ยังมีเงื่อนไขอื่นนอกจากเวลา ส่วนลูกหนี้คือสิทธิที่ไม่มีเงื่อนไขเช่นนั้นแล้ว เหลือเพียงรอถึงกำหนดชำระ ใบแจ้งหนี้จึงไม่ใช่หลักตัดสินรายได้หรือเงินสดที่ใช้ได้กับทุกกรณี เงินที่รับก่อนทำงานอาจเป็นหนี้สินที่เกิดจากสัญญา เพราะเรายังมีหน้าที่ส่งมอบ
การรับรู้รายได้ขึ้นกับกรอบบัญชี ภาระที่ต้องส่งมอบ และการโอนการควบคุม การแบ่งวางบิลเป็นงวดไม่ได้ทำให้รับรู้รายได้ตามความคืบหน้าได้โดยอัตโนมัติ ที่นี่ใช้ IFRS อธิบายความแตกต่าง ไม่ได้หมายความว่า SME ไทยทุกรายต้องใช้ IFRS ฉบับเต็ม อ่านหลักเกณฑ์ได้ใน IFRS 15 ย่อหน้า 35 และ 105 ถึง 108
งานเดียวกัน เปลี่ยนงวดรับเงินแล้วเกิดอะไรขึ้น
สมมติจ่ายต้นทุนตรงในเดือน 1 ถึง 4 เท่ากับ 150,000, 250,000, 200,000 และ 100,000 บาท เดือน 0 คือช่วงก่อนเริ่มงาน แบบ A รับล่วงหน้า 20% และรับอีก 80% ในเดือน 5 ส่วนแบบ B รับล่วงหน้า 30% รับ 30% ในเดือน 2 อีก 30% ในเดือน 3 และ 10% สุดท้ายในเดือน 5
จอแคบเลื่อนตารางไปด้านข้างได้ กราฟและย่อหน้าถัดไปอธิบายผลเปรียบเทียบหลักไว้ด้วย
| เดือน | จ่ายต้นทุนตรง | A เงินรับ | A เงินปลายเดือน | B เงินรับ | B เงินปลายเดือน |
|---|---|---|---|---|---|
| 0 | 0 | 200,000 | 200,000 | 300,000 | 300,000 |
| 1 | 150,000 | 0 | 50,000 | 0 | 150,000 |
| 2 | 250,000 | 0 | -200,000 | 300,000 | 200,000 |
| 3 | 200,000 | 0 | -400,000 | 300,000 | 300,000 |
| 4 | 100,000 | 0 | -500,000 | 0 | 200,000 |
| 5 | 0 | 800,000 | 300,000 | 100,000 | 300,000 |
ยอดนี้เริ่มจากเงินสดโครงการเป็นศูนย์ รวมเงินจากลูกค้า แต่ยังไม่รวมเงินกู้หรือเงินที่บริษัทเติมเข้าไป ยอดติดลบจึงแสดงเงินที่ต้องหาจากแหล่งอื่น แบบ A ต้องหาเงินมารองรับอย่างน้อย 500,000 บาทเมื่อดูยอดสิ้นเดือน ส่วนแบบ B ยังมียอดบวก ทั้งสองแบบจบที่ 300,000 บาทเท่ากัน เพราะรับเงินรวมและจ่ายต้นทุนตรงเท่ากัน
แต่ยอดสิ้นเดือนซ่อนลำดับการจ่ายได้ แบบ B เริ่มเดือน 2 ด้วยเงิน 150,000 บาท ถ้าจ่ายต้นทุน 250,000 บาทก่อนรับเงินงวด 300,000 บาท จะขาดชั่วคราว 100,000 บาท บัญชีธนาคารเดินตามวันรับจ่ายจริง ไม่ได้รอวันปิดรายงาน
ทำให้งวดงานกลายเป็นขั้นตอนเก็บเงินจริง
งานก่อสร้างกับงานซอฟต์แวร์มีจุดร่วมคือจ่ายคนและผู้ขายก่อนเก็บเงินลูกค้าได้ครบ งานก่อสร้างอาจใช้ปริมาณงาน ใบรับรองผลงาน และเงินประกันผลงาน ส่วนงานซอฟต์แวร์ต้องมีหลักฐานที่ชัดพอกัน เช่น การอนุมัติแบบ ผลย้ายข้อมูล ผลทดสอบโดยผู้ใช้ (UAT) และการขึ้นระบบ คำว่า “ระบบเกือบพร้อมแล้ว” ยังไม่ชัดพอจะใช้เรียกเก็บเงิน
ก่อนเซ็นสัญญา ผูกแต่ละงวดกับสิ่งส่งมอบ วิธีทดสอบ ผู้มีอำนาจตรวจรับ ระยะเวลาตอบ เอกสารวางบิล และวันชำระ ตรวจว่าฝ่ายจัดซื้อต้องใช้เลขใบสั่งซื้อ ใบตรวจรับ การขึ้นทะเบียนผู้ขาย หรือรอบวางบิลเฉพาะหรือไม่ แล้วตกลงด้วยว่าเอกสารที่ถูกตีกลับเป็นหน้าที่ใครและแก้ภายในกี่วัน
แยกข้อบกพร่องจากขอบเขตที่ตกลงไว้กับคำขอเพิ่มงาน ระบุราคา เวลา วิธีตรวจรับ และงวดชำระของงานเพิ่มก่อนใช้คนทำ หรือกำหนดวงเงินอนุมัติงานเร่งด่วนพร้อมหลักฐาน อย่าใส่คำขอเพิ่มงานที่ยังไม่อนุมัติเป็นเงินรับแน่นอนในแผนหลัก
อ่านข้อแตกต่างทางบัญชีได้ใน AASB 15 ย่อหน้า 18 ถึง 19 และ B83 ถึง B86 ซึ่งนำ IFRS 15 มาใช้ในออสเตรเลีย ข้อความเหล่านี้ไม่ใช่ตัวอย่างเงื่อนไขสัญญาตามกฎหมายไทย
การตรวจรับอาจมีผลต่อทั้งสิทธิรับเงินและการรับรู้รายได้ ต้องดูสัญญาและความสามารถพิสูจน์ตามข้อกำหนด การเขียนว่าไม่ตอบภายในกี่วันให้ถือว่ารับงานแล้วต้องตรวจความเหมาะสมทางกฎหมาย ไม่ใช่ทางลัดที่แก้ข้อพิพาทได้ทุกแบบ
สำหรับเงินประกันผลงาน ระบุจำนวน เงื่อนไขคืน ผู้อนุมัติ และวันที่คาดรับ ลองเจรจาลดเงินที่กันไว้ คืนเป็นส่วน ๆ หรือใช้หลักประกันที่เหมาะกับความเสี่ยงลูกค้า แต่หนังสือค้ำประกันอาจใช้วงเงินธนาคารหรือต้องวางหลักทรัพย์ จึงมีต้นทุนเช่นกัน สถานะบัญชีของเงินประกันขึ้นกับเงื่อนไขที่ยังเหลือ ไม่ใช่เป็นลูกหนี้เสมอไป
ลองเลื่อนเงินเข้า เพิ่มต้นทุน และรับหลายงานพร้อมกัน
ถ้าเงินงวดสุดท้ายของ A เลื่อนจากเดือน 5 เป็นเดือน 6 โดยไม่มีเงินออกเพิ่ม ช่องว่างสูงสุดยังเป็น 500,000 บาท แต่ต้องหาเงินมารองรับนานขึ้น ถ้ายังจ่ายค่าดูแล ค่า cloud หรือเงินเดือนต่อ ทั้งจำนวนเงินที่ขาดและระยะเวลาอาจเพิ่มขึ้น
ถ้าต้นทุนตรงบาน 20% เป็น 840,000 บาท และแต่ละเดือนเพิ่มตามสัดส่วนเดิม ส่วนต่างจะเหลือ 160,000 บาท แบบ A ขาดเงินสูงสุด 640,000 บาทเมื่อดูสิ้นเดือน ส่วน B ยังไม่ติดลบสิ้นเดือน แต่เดือน 2 อาจขาดชั่วคราว 180,000 บาทถ้าจ่ายก่อนรับเงิน เงื่อนไขชำระที่ดีช่วยเรื่องสภาพคล่อง แต่ไม่ได้ทำให้งานที่คุมต้นทุนไม่ได้กลับมาคุ้มเอง
ถ้าโครงการแบบ A จำนวน 5 งานมีจังหวะรับจ่ายตรงกัน เงินที่ต้องรองรับอาจรวมเป็น 2.5 ล้านบาท นี่คือสถานการณ์ทดสอบ ไม่ใช่คำพยากรณ์ การเริ่มงานต่างเวลา ใช้ทีมร่วมกัน ส่วนลดจัดซื้อ และการจ่ายล่าช้าล้วนเปลี่ยนผลได้ งานมากขึ้นอาจช่วยเฉลี่ยต้นทุนคงที่ แต่การจ้างคนก่อนพร้อมหรือทำให้ทีมตรวจรับรับงานไม่ทันก็อาจทำให้ประโยชน์นั้นหมดไป
ธุรกิจสมาชิกเปลี่ยนจังหวะเงิน แต่ยังต้องกันเงินส่งมอบ
ลองดูตัวอย่างสมมติอีกแบบ ค่าบริการปีละ 120,000 บาท หรือเดือนละ 10,000 บาท ต้นทุนให้บริการตรงเดือนละ 6,000 บาท และต้นทุนหาลูกค้า 30,000 บาทจ่ายในเดือน 0
ถ้าเก็บรายปีล่วงหน้า หลังหักต้นทุนหาลูกค้าจะมีเงิน 90,000 บาท จ่ายต้นทุนให้บริการทั้งปี 72,000 บาท เหลือ 18,000 บาทปลายปี ถ้าเก็บรายเดือน จะเริ่มที่ติดลบ 30,000 บาท แล้วเพิ่มสุทธิเดือนละ 4,000 บาทเมื่อรับชำระครบ ระยะคืนต้นทุนหาลูกค้าตามสมมติฐานนี้คือ 7.5 เดือน และยอดจะบวกครั้งแรกเมื่อสิ้นเดือน 8 ปลายปีก็เหลือ 18,000 บาทเท่ากัน
ตัวอย่างนี้สมมติว่าเก็บเงินรายเดือนได้ครบ 12 งวด ไม่รวมการวิจัยและพัฒนา ต้นทุนคงที่ ภาษี การคืนเงิน และลูกค้าเลิกใช้ เงินรายปีบางส่วนต้องเก็บไว้ให้บริการในอนาคต จึงนำไปขยายงานทั้งหมดไม่ได้ ค่า hosting ยังขึ้นกับการใช้งานและเงื่อนไขผูกพัน เช่น AWS Savings Plans มีข้อผูกพันยอดใช้จ่ายรายชั่วโมงเป็นเวลา 1 หรือ 3 ปี รวมถึงทางเลือกที่ไม่ต้องจ่ายล่วงหน้า หากตรึงราคาลูกค้าแต่ปล่อยต้นทุนโครงสร้างพื้นฐานเพิ่มได้ ต้องกำหนดขอบเขตการใช้หรือกลไกปรับราคา
ซอฟต์แวร์ที่ใช้ซ้ำอาจทำให้ต้นทุนเพิ่มต่อลูกค้ารายใหม่ลดลง แต่ค่าติดตั้ง ดูแล และโครงสร้างพื้นฐานยังเพิ่มได้ ดูส่วนที่เหลือหลังต้นทุนหาลูกค้าและให้บริการ แล้วถามว่าพอจ่ายต้นทุนคงที่หรือยัง จำนวนลูกค้าที่เพิ่มขึ้นอย่างเดียวพิสูจน์การประหยัดต่อขนาดไม่ได้
ใครเป็นคนจ่ายค่าโครงสร้างพื้นฐาน?
ผู้ขาย hosting ที่ใช้ managed cloud อาจจ่ายผู้ให้บริการตามยอดใช้จริง แต่ให้ลูกค้าเครดิต 30 หรือ 60 วัน เมื่อลูกค้ามากขึ้น ช่องว่างนี้ก็โตได้ แม้แต่ละรายเหลือส่วนต่างบวก ต้องคาดการณ์ค่าโอนข้อมูล พื้นที่เก็บข้อมูล สำรองข้อมูล งานดูแล และความเสี่ยงอัตราแลกเปลี่ยนเมื่อเกี่ยวข้อง ระบุว่าใครจ่ายส่วนใช้เกิน และทำอย่างไรเมื่อลูกค้าจ่ายช้า
ทางเลือกหนึ่งคือให้ลูกค้าทำสัญญาและจ่ายค่า cloud โดยตรง แล้วเราคิดค่าดูแลแยก วิธีนี้ลดเงินที่ผู้ให้บริการต้องสำรองค่าโครงสร้างพื้นฐาน แต่เปลี่ยนเรื่องเจ้าของบัญชี ผู้รับผิดชอบช่วยเหลือ สิทธิการเข้าถึง และความสะดวกในการจัดซื้อ จึงเป็นทางเลือกให้ประเมิน ไม่ใช่คำตอบที่ดีที่สุดทุกกรณี
ถ้าซื้อเซิร์ฟเวอร์เอง ต้องจ่ายเงินลงทุนก่อน เทียบค่าซื้อ ติดตั้ง ไฟฟ้า การเชื่อมต่อ พื้นที่วางเครื่อง บำรุงรักษา สำรองข้อมูล คนดูแล ความเสี่ยงระบบหยุด และการเปลี่ยนเครื่องในอนาคตกับค่า managed cloud หากใช้กำลังเครื่องน้อย ต้นทุนจะถูกเฉลี่ยลงบนลูกค้าที่จ่ายเงินจริงเพียงไม่กี่ราย ความต้องการที่สม่ำเสมออาจรองรับการซื้อเองหรือผูกพันยอดใช้ ส่วนความต้องการที่ยังไม่แน่นอนอาจคุ้มที่จะจ่ายต่อหน่วยแพงกว่าเพื่อปรับลดได้ คำว่า “No Upfront” ของ AWS ยังมีข้อผูกพันการใช้จ่ายในอนาคต กันเงินเปลี่ยนเครื่องในแผนเงินสด และลองลดสมมติฐานยอดใช้ก่อนตัดสินใจลงเงิน
นัดดูเงินสด 13 สัปดาห์ทุกสัปดาห์
ผมเสนอให้ผู้รับผิดชอบการเงินใช้แผนลงวันที่ชุดเดียวร่วมกับฝ่ายขายและทีมส่งมอบ ระยะ 13 สัปดาห์เป็นแนวทางบริหาร ไม่ใช่ข้อบังคับบัญชี BDC อธิบายการพยากรณ์ระยะสั้นลักษณะนี้ไว้ ควรมีภาพรายเดือนต่อจนจบงาน เพื่อไม่ให้เงินประกันที่คืนไกลกว่านั้นหลุดจากสายตา
- เริ่มจากเงินธนาคารที่ใช้ได้จริง แยกเงินฝากที่มีข้อจำกัด และบันทึกวงเงินที่ตกลงแล้วโดยไม่ถือว่าเป็นเงินเข้าบัญชีแล้ว
- ลงเงินรับตามวันที่คาดเก็บได้ ผูกยอดกับงวดงาน หลักฐานอนุมัติ ใบแจ้งหนี้ และผู้ติดตาม แยกยอดพิพาทหรือไม่แน่นอนเป็นอีกสถานการณ์
- ลงเงินเดือน ผู้ขาย ผู้รับเหมาช่วง license ค่า cloud ภาษี ภาระหนี้ และเงินลงทุนตามวันจ่าย รวมต้นทุนที่ยังต้องใช้ทำงานที่รับไว้ให้เสร็จ
- หาวันที่เงินต่ำสุด ทดสอบรับช้าและต้นทุนเพิ่ม แล้วมอบหมายให้แก้ก่อนถึงวันนั้น เช่น ปรับงวดรับเงิน แบ่งซื้อ เลื่อนเริ่มงาน หรือเตรียมแหล่งเงิน
- ทุกสัปดาห์แทนประมาณการด้วยยอดรับจ่ายจริง อธิบายส่วนต่าง เลื่อนแผนออกไปอีกสัปดาห์ และระบุผู้รับผิดชอบกับวันติดตามครั้งถัดไปของยอดที่ติดขัด
ดูงานที่ยังไม่ถึงเงื่อนไขวางบิล อายุงานรอตรวจรับ ลูกหนี้เกินกำหนดพร้อมสาเหตุ เงินประกันที่ถึงกำหนดคืน และต้นทุนที่ยังต้องจ่ายจนจบ ควบคู่กับแผนเงินสด ระบุคนรับผิดชอบทุกยอดที่ติดขัด เพราะขาดลายเซ็นอนุมัติต้องแก้คนละวิธีกับลูกค้าที่ไม่มีเงินจ่าย
จากนั้นรวมทุกโครงการกับค่าใช้จ่ายบริษัทและภาระหนี้ โดยนับเงินเดือนที่จ่ายจริงครั้งเดียว อย่ารวมต้นทุนแรงงานที่ปันส่วนลงโครงการซ้ำกับเงินเดือนบริษัท รายงานยอดเงินที่ใช้ได้ต่ำสุด วันที่เกิด และวงเงินที่ตกลงแล้วซึ่งยังเหลือให้ใช้ งานหนึ่งอาจมีเงินพอ แต่บริษัทขาดเงินเพราะเงินเดือนกับเจ้าหนี้หลายรายการถึงกำหนดพร้อมกัน
ตรวจให้เงินต้นงวดบวกเงินรับลบเงินจ่ายเท่ากับเงินปลายงวด แนวทางรัฐบาลออสเตรเลียอธิบายว่าการพยากรณ์ช่วยเห็นเงินขาดล่วงหน้า และควรเทียบผลจริงกับประมาณการ อ่านได้ที่ business.gov.au เรื่องแผนกระแสเงินสด
หาเงินให้ตรงกับช่องว่างที่อธิบายได้
เริ่มจากเงินล่วงหน้าและงวดชำระที่ทำได้จริงตามความเหมาะสมทางการค้า วงเงินหมุนเวียนอาจช่วยช่วงรอเก็บเงินที่มีจุดจบชัด ส่วนสินเชื่อลูกหนี้ขึ้นกับใบแจ้งหนี้ที่เข้าเกณฑ์ สิทธิเรียกเก็บ คุณภาพลูกค้า ข้อพิพาท ค่าธรรมเนียม และเงื่อนไขไล่เบี้ย งานที่ยังรอตรวจรับอาจใช้ไม่ได้
งานพัฒนาระยะยาวหรือบริการที่ขาดทุนจากโครงสร้างต้นทุนต้องตัดสินใจเรื่องทุนอีกแบบ การกู้สั้นซ้ำ ๆ ไม่ได้ทำให้ส่วนต่างที่ติดลบกลายเป็นกำไร เปรียบเทียบต้นทุนเงิน หลักประกัน ข้อกำหนดวงเงิน และผลหากเก็บเงินช้า กันเงินเผื่อจากสถานการณ์ที่มีเหตุผล แทนการเลือกเปอร์เซ็นต์โดยไม่มีที่มา
เงินกู้ทำให้เงินสดเพิ่ม แต่เป็นเงินจากกิจกรรมจัดหาเงิน ไม่ใช่กระแสเงินสดดำเนินงาน การคืนเงินต้นทำให้เงินสดลดโดยไม่ได้เป็นค่าใช้จ่ายดำเนินงาน ดอกเบี้ยเป็นอีกส่วนหนึ่ง ส่วนการเก็บลูกหนี้เปลี่ยนลูกหนี้เป็นเงินสด ไม่ได้เกิดรายได้เดิมซ้ำ และไม่ได้ทำให้สินทรัพย์รวมลดลงอัตโนมัติ
วงจรเงินสดที่มักคำนวณจากวันถือสินค้า บวกวันเก็บลูกหนี้ ลบวันจ่ายเจ้าหนี้ เหมาะใช้ดูธุรกิจซื้อขาย แต่งานโครงการต้องดูวันตั้งแต่ทำงานจนมีสิทธิวางบิล ระยะอนุมัติ อายุเงินประกัน และเงินที่ต้องรองรับสูงสุดด้วย สินค้าคงเหลือน้อยอาจทำให้ตัวเลขวงจรดูดี ทั้งที่ต้องจ่ายเงินเดือนรองานวางบิลอีกหลายเดือน
IAS 7 แยกเงินสดจากการดำเนินงาน การลงทุน และการจัดหาเงิน หากใช้กระแสเงินสดอิสระ ควรนิยามให้คงที่ เช่น เงินสดดำเนินงานหักรายจ่ายลงทุน และอย่าหักการเปลี่ยนเงินทุนหมุนเวียนซ้ำเมื่อรวมอยู่ในเงินสดดำเนินงานแล้ว
คำถามที่ใช้คุยก่อนรับงานถัดไป
- แบบ A หรือ B ทำให้ส่วนต่างหลังต้นทุนตรงมากกว่า?
- เท่ากันในกรณีฐาน คือ 300,000 บาทก่อนค่าใช้จ่ายที่ไม่ได้รวม แบบ B เปลี่ยนจำนวนเงินและเวลาที่ต้องหาเงินมารองรับ
- แบบ B ทำให้ไม่ต้องกู้แน่นอนหรือไม่?
- ไม่แน่นอน เดือน 2 ยังขาดชั่วคราวได้ 100,000 บาทถ้าจ่ายก่อนรับ และยังไม่ได้รวมค่าใช้จ่ายส่วนกลางหรืองานอื่น
- เก็บช้า 30 วันทำให้เงินขาดสูงสุดเพิ่มเสมอหรือไม่?
- ไม่เสมอ หากไม่มีเงินออกเพิ่ม จะขาดเท่าเดิมแต่นานขึ้น ถ้ายังมีรายจ่าย จำนวนที่ขาดก็อาจเพิ่มด้วย
- เงิน 90,000 บาทหลังหาลูกค้าในแบบรายปี เอาไปลงงานใหม่ได้เลยหรือไม่?
- ต้องกันภาระให้บริการในอนาคต ภาระอื่น และเงินเผื่อที่เหมาะสมก่อน
- เจ้าของควรถามอะไรให้ได้คำตอบก่อนรับงาน?
- “เงินจะต่ำสุดวันไหน ต้องใช้เท่าไร และเงินรับที่จะปิดช่องว่างนั้นมีหลักฐานอะไร?” คำตอบที่ระบุเอกสารและคนรับผิดชอบช่วยตัดสินใจได้มากกว่าเป้ายอดขายเพียงอย่างเดียว