meta

Changelog

ฟีเจอร์ใหม่ + การเปลี่ยนแปลงสำคัญของ SlipBolt API

⏱ อัปเดต
The documentation is currently written in Thai only — an English translation is on the way. The navigation and page chrome are already in English.

บันทึกฟีเจอร์ใหม่และการเปลี่ยนแปลงที่มีผลต่อ integrator · เรียงจากใหม่ → เก่า

เราพยายามหลีกเลี่ยง breaking change · หากมีจะแจ้งล่วงหน้าและทำ versioning

กันยายน 2026

ช่วงทดลอง 7 วัน = สิทธิ์แพ็ก Trial เท่านั้น

  • ร้านแรกที่ยังไม่จ่ายสมัครแพ็ก TRIAL เสมอ (50 สลิป · 1 ที่นั่ง · 1 กลุ่ม · 1 OA · ไม่มี REST API)
  • เลือกการ์ด Pro/Business ตอนสมัครไม่ทำให้ได้ลิมิตแพ็กจ่ายฟรี 7 วัน
  • GET /api/v1/me และ GET /api/v1/quota (scope read) อ่านแพ็ก + โควตาคงเหลือโดยไม่หักสลิป — ใช้เช็คตอนบูต integration

สถานะระบบ — endpoint ที่ monitor เรียกได้จริง

  • GET /health · /health/liveness · /health/uptime ตอบที่ path นี้ตรง ๆ แล้ว (เดิมมีแต่ /v1/health — uptime monitor ที่ชี้มาที่ /health ตามที่เอกสารบอกจะได้ 404)
  • path เดิม /v1/health* ยังใช้ได้ตามปกติ ไม่ต้องแก้อะไรที่ปลายทาง
  • หน้า status อ่านค่าจริงจาก endpoint นี้แล้ว

Anti-fraud — สลิปเก่านำกลับมาใช้ซ้ำ: เปิดเป็นค่าเริ่มต้น

  • SLIP_STALE_MODE ค่าเริ่มต้นเปลี่ยนจาก offalert · สลิปยัง SUCCESS ตามปกติ แต่เจ้าของร้านจะได้รับแจ้งเตือนเมื่อเวลาธนาคารบนสลิปเก่ากว่า SLIP_STALE_MAX_AGE_HOURS (ค่าเริ่มต้น 24 ชม.)
  • โหมด alert ไม่ปฏิเสธการชำระเงินใด ๆ · ถ้าต้องการให้ปฏิเสธจริงตั้ง SLIP_STALE_MODE=reject

สิงหาคม 2026

Public API

  • apiAccess ของแพ็กถูกบังคับจริง — API key ของร้านที่อยู่ในแพ็กที่ไม่มีสิทธิ์ใช้ API จะถูกปฏิเสธ (เดิมคอลัมน์นี้ถูกเขียนแต่ไม่มีใครอ่าน) · ถ้า integration ของคุณเคยยิงผ่านด้วยแพ็กเล็ก ให้ตรวจแพ็กก่อน
  • response ไม่มีชื่อผู้ให้บริการตรวจสลิปภายนอกหลุดออกไปอีกแล้ว (ทั้ง body · error · header)
  • จัดการ API key ละเอียดขึ้น — scope · usage · rotate/revoke

Webhooks & Realtime

  • หน้า Webhooks แสดง ประวัติการส่ง (deliveries) ทุกครั้ง พร้อมสถานะและรอบ retry
  • "ส่งทดสอบ" ตอบข้อความชัดเจนเมื่อคิวงานไม่พร้อม (เดิมได้ HTTP 500 เปล่า ๆ)
  • แดชบอร์ดขึ้นสลิปใหม่ทันทีที่ตรวจเสร็จผ่าน SSE ไม่ต้องกด refresh

Billing & โควตา

  • คิดค่า ส่วนเกินโควตา (overage) ตามจริง พร้อมบัฟเฟอร์ฟรี · เพดานต่อเดือน · เพดานแข็งที่บล็อกเมื่อใช้เกินหลายเท่า
  • ใบแจ้งหนี้ที่มีส่วนเกินระบุที่มาของยอดนั้นแยกบรรทัด
  • เปลี่ยนแพ็กมี ใบเสนอราคาก่อนตัดเงิน (proration แสดงให้เห็นก่อนกดยืนยัน)
  • แจ้งบน LINE เมื่อบัตรถูกปฏิเสธ · ต่ออายุไม่สำเร็จ · และเมื่อชำระเงินสำเร็จ
  • เลือกช่องทางจ่ายบิลค้างได้เอง (บัตร / PromptPay)

ทีมงาน · ความปลอดภัย

  • ที่นั่งทีมงาน (seats) ตามแพ็ก + คำเชิญทางอีเมล
  • 2FA (TOTP) พร้อม backup code · เปิดที่ ตั้งค่า → ความปลอดภัย
  • นโยบายรหัสผ่านบังคับจริง · เพิ่ม CSP และ security header ครบชุด
  • Audit log ดูย้อนหลังได้จากหน้าตั้งค่า

LINE & LIFF

  • LIFF โพสต์ผลการตรวจกลับเข้ากลุ่มที่ลูกค้าส่งมาได้
  • Quick reply บนคำสั่งของเจ้าของร้าน
  • สลิปไม่ถูกกลืนเมื่อ Redis เต็ม — ระบบตอบให้ลูกค้าส่งใหม่แทนที่จะเงียบ

แอป

  • สลับร้านได้ไม่ต้องรีโหลด + command palette (⌘K)
  • ทุกลิสต์มีการแบ่งหน้า · ส่งออกได้ทั้งชุดไม่ใช่แค่หน้าที่เห็น
  • ภาษาไทย/อังกฤษครบทั้งแอปและเอกสาร
  • Product tour สอนใช้งานแดชบอร์ดและการผูก LINE channel
  • Cookie consent + analytics ที่รอความยินยอมก่อนทำงาน

กรกฎาคม 2026

  • LIFF — จัดการกลุ่ม · ประวัติการตรวจ · ใบเสร็จ · ตั้งค่าการแจ้งเตือน · ผูก/ถอนบัญชี ครบในมินิแอป
  • สถานะร้าน แสดงชัดบนแถบข้าง (ทดลองใช้ · ใช้งาน · ค้างชำระ · ระงับ)
  • ปิด modal ด้วย Esc ได้ทุกจุด · ปุ่มคัดลอกบอกผลจริงเมื่อคัดลอกสำเร็จ

มิถุนายน 2026

Public API — Quota UX

  • ทุก response ของ POST /api/v1/verify แนบ header X-Slipbolt-Quota-{Limit,Remaining,Used,Reset-Days} + ฟิลด์ quota ใน body
  • โควตาหมด (key live) → ตอบ HTTP 402 QUOTA_EXCEEDED แทน 200 เงียบ ๆ — เช็คจาก HTTP status ได้เลย
  • เพิ่ม GET /api/v1/quota (scope read) อ่านยอดคงเหลือโดยไม่เปลือง verify
  • ยืนยัน: การเรียก API ใช้ โควตา pool เดียวกับสลิป LINE ของร้าน

Anti-fraud — recycled slip detection

  • ตรวจจับสลิปจริง "เก่า/นำกลับมาใช้ซ้ำ" จากเวลาธนาคาร (transDate) · โหมด alert/reject ตั้งค่าได้ · INVALID จะมี errorCode: STALE_SLIP — ตอนนั้นค่าเริ่มต้นคือปิด (ดู กันยายน 2026)

LINE

  • Rich Menu ตั้งให้อัตโนมัติเมื่อผูก channel (ดูยอดวันนี้ → LIFF)
  • Marketing broadcast ถึงเจ้าของร้านที่ opt-in (ฝั่งแพลตฟอร์ม)

Billing

  • เสริมความทนทานของ Stripe webhook (retry เฉพาะ event ที่เกี่ยวกับเงิน · idempotent)

พฤษภาคม 2026

  • Public Verify APIPOST /api/v1/verify รับรูปสลิปเป็น raw bytes, auth ด้วย API key (sk_live_/sk_test_)
  • Outgoing Webhooks — event slip.verified / duplicate / failed · HMAC-signed · retry 5 ครั้ง
  • API Keys — สร้าง/rotate/revoke · scope (verify/read/webhook) · usage metrics
  • Prepaid terms — จ่ายล่วงหน้า 1/3/6/9/12 เดือน (card + PromptPay) พร้อมส่วนลดขั้นบันได
  • Dashboard — สรุปยอด · รายงาน · ธุรกรรม · จัดการ LINE channel/group

เอกสารที่เกี่ยวข้อง