ลูกค้าเน็ตหมู่บ้านส่วนใหญ่จ่ายผ่าน โมบายแบงก์กิ้ง อยู่แล้ว ถ้าทุกใบแจ้งหนี้มี พร้อมเพย์ QR ให้สแกนจ่ายได้เลย เงินจะเข้าเร็วขึ้นและคุณตามน้อยลง บทความนี้อธิบายชนิดของ QR ที่ ISP ควรใช้ จุดสำคัญที่ทำให้ "รู้ว่าใครจ่าย" และวิธีต่อยอดไปจับคู่บิลอัตโนมัติ
เหมาะกับ: ISP/เน็ตหมู่บ้านที่เก็บเงินรายเดือน • อยากเลิกบอกเลขบัญชีทีละคน/ตามสลิปเอง • ต่อยอดวงจร ระงับ-คืนสัญญาณค้างจ่าย ของ ระบบเก็บเงินเน็ตหมู่บ้าน
QR พร้อมเพย์ มี 2 แบบ — ISP ควรใช้แบบไหน
| Static QR | Dynamic QR | |
|---|---|---|
| รูปแบบ | QR เดียวใช้ซ้ำ (ติดหน้าร้าน) | สร้างใหม่ต่อบิล |
| ยอดเงิน | ลูกค้าพิมพ์เอง | ฝังยอดมาในตัว |
| รู้ว่าใครจ่าย | ❌ ไม่รู้ (ยอดชนกันมั่ว) | ✔ ระบุอ้างอิงได้ |
| เหมาะกับ | ร้านเล็ก/รับทั่วไป | ออกบิลรายเดือน |
สำหรับ ISP ที่มีลูกค้าหลายราย อย่าใช้ static QR เดี่ยว ๆ เพราะพอหลายคนโอนยอดใกล้กัน จะแยกไม่ออกว่าใครจ่าย — ให้ใช้ dynamic QR ต่อบิล (ฝังยอด + อ้างอิง) จะกระทบงานตามเงินน้อยที่สุด
ข้างใน QR มีอะไร (พอเข้าใจ ไม่ต้องท่อง)
Thai QR Payment เป็นมาตรฐานกลาง (ธปท./EMVCo) ข้างในเป็นชุด tag สำคัญ ๆ คือ:
| Tag | ความหมาย |
|---|---|
00 |
เวอร์ชัน payload |
01 |
static (11) หรือ dynamic (12) |
29 |
PromptPay — เบอร์มือถือ / เลขบัตร ปชช. / e-wallet |
30 |
Bill Payment — Biller ID + Ref1/Ref2 (ใช้จับคู่บิล) |
54 |
จำนวนเงิน |
53 |
สกุลเงิน (764 = บาท) |
63 |
CRC (เช็กความถูกต้อง) |
มี 2 ทางให้เลือกตามที่อยากได้:
- Tag 29 (PromptPay ปกติ) — ฝัง "เบอร์/เลขบัตร + ยอด" ง่ายสุด เริ่มได้เลย แต่ต้องยืนยันคนจ่ายด้วย สลิป อีกที
- Tag 30 (Bill Payment) — ฝัง Ref1 = เลขบิล/รหัสลูกค้า → เงินเข้ามาพร้อมอ้างอิง จับคู่บิลอัตโนมัติ ได้เลย (ต้องเปิดบริการ Biller กับธนาคารแบบนิติบุคคล)
เริ่มเร็วสุด — สร้าง dynamic QR ฝังยอด (Tag 29)
ไม่ต้องคำนวณ CRC เอง ใช้ไลบรารีช่วย เช่น (Python):
pip install promptpay
from promptpay import qrcode
# เบอร์พร้อมเพย์ของร้าน + ยอดของบิลนั้น
payload = qrcode.generate_payload("0812345678", amount=590.00)
qrcode.to_file(payload, "invoice-1023.png") # เอาไปแปะในใบแจ้งหนี้/ส่งใน LINE
แค่นี้ลูกค้าสแกนแล้วยอด 590 บาทจะขึ้นมาเอง ไม่ต้องพิมพ์ (ลดจ่ายผิดยอด) เหลือแค่ "ยืนยันว่าใครจ่าย" ในขั้นถัดไป
JavaScript ก็มี (
npm i promptpay-qr) แนวคิดเดียวกัน — ฝัง payload ลงรูป QR
จุดสำคัญ: "รู้ว่าใครจ่ายแล้ว" (reconcile)
ออก QR เป็นแค่ครึ่งทาง อีกครึ่งคือ จับคู่เงินเข้ากับบิล มี 3 ระดับ:
- ลูกค้าส่งสลิป (ง่ายสุด) — ลูกค้าจ่ายแล้วส่งสลิปใน LINE → คุณยืนยัน วิธีทำให้อัตโนมัติอ่านต่อบท ตรวจสลิปโอนเงินอัตโนมัติ (บทถัดไป)
- ดู statement/ยอดเข้า — จับคู่ด้วย ยอด+เวลา (เสี่ยงชนกันถ้ายอดเท่ากัน)
- Bill Payment (Ref1) — เงินเข้าพร้อมเลขบิล → ระบบ mark "จ่ายแล้ว" ให้เอง แม่นสุด (ต้องมี Biller account)
พอ mark ว่าจ่ายแล้ว ก็ต่อเข้าวงจร คืนสัญญาณอัตโนมัติ ได้ทันที — ลูกค้าจ่าย → เน็ตกลับมาเอง
[ออกบิล + QR ฝังยอด/Ref1] -> [ลูกค้าสแกนจ่าย] -> [ยืนยัน: สลิป/statement/Ref1] -> [mark จ่ายแล้ว] -> [คืนสัญญาณ]
พลาดบ่อย / ข้อควรระวัง
| ปัญหา | วิธีเลี่ยง |
|---|---|
| ใช้ QR เดียวทุกคน → แยกไม่ออกว่าใครจ่าย | ใช้ dynamic QR ต่อบิล (ฝังยอด) อย่างน้อย |
| ยอดเท่ากันหลายคน จับคู่มั่ว | ทำให้ยอดต่างกันเล็กน้อย (เศษสตางค์) หรือใช้ Ref1 ไปเลย |
| ลูกค้าพิมพ์ยอดผิด (static) | ฝังยอดใน QR ลูกค้าไม่ต้องพิมพ์ |
| ชื่อบัญชีปลายทางไม่ตรงชื่อร้าน ลูกค้าไม่กล้าโอน | แจ้งล่วงหน้าว่าโอนเข้าชื่อไหน + โชว์ในใบแจ้งหนี้ |
| รับสลิปปลอม | ตรวจสลิปกับธนาคาร (บทตรวจสลิป) ไม่ดูแค่รูป |
สรุป
หัวใจของการรับเงิน ISP ผ่านพร้อมเพย์คือ dynamic QR ฝังยอดต่อบิล เพื่อลดจ่ายผิด + มีวิธีจับคู่ว่าใครจ่าย (สลิป/statement/Ref1) แล้วต่อเข้าการคืนสัญญาณอัตโนมัติ — ทั้งหมดนี้คือสิ่งที่เปลี่ยน "ไล่เก็บเงินรายเดือน" ให้เป็นระบบที่เดินเอง
💡 อยากให้ทุกบิลมี QR ฝังยอด + รู้อัตโนมัติว่าใครจ่าย? thaiISP ออกใบแจ้งหนี้พร้อมพร้อมเพย์ QR ต่อราย ส่งให้ทาง LINE ตรวจสลิป/จับคู่บิลให้อัตโนมัติ แล้วคืนสัญญาณเองทันทีที่จ่าย — จบในระบบเดียว — ดูระบบ →
