รับเงิน (Billing)
Checkout
สร้างลิงก์ชำระเงิน (hosted checkout) ให้ผู้ซื้อจ่ายด้วย PromptPay หรือบัตร — จ่ายครั้งเดียวหรือ pay-what-you-want
เชื่อมต่อ
key ถูกเก็บใน httpOnly cookie ฝั่ง server — JavaScript ในเบราว์เซอร์อ่านไม่ได้ · สร้าง test key ที่ Dashboard → API keys
ลองยิง — กด Run ยิงจริง (test mode)
Quickstart end-to-end
เขียนcustomer → product → price → checkout link ที่จ่ายได้จริง (PromptPay/บัตร)
Pay-what-you-want / บริจาค
เขียนให้ผู้สนับสนุนเลือกจ่ายเท่าไหร่ก็ได้ (ขั้นต่ำ + ยอดแนะนำ)
Idempotency & safe retry
เขียนยิง checkout ซ้ำด้วย key เดิม แล้วดูว่าเซิร์ฟเวอร์ replay ไหม (diagnostic)
โค้ด & API
สร้าง hosted checkout — คืน url ให้ redirect ผู้ซื้อ. line item ที่เป็น recurring price จะเริ่ม subscription แบบ invoice ให้อัตโนมัติ
Headers
AuthorizationRequiredstring
Bearer sk_test_/sk_live_ (ฝั่ง server)
Heysub-VersionRequiredstring
2026-09-01
Idempotency-Keystring
กันการยิงซ้ำ
Body
customer_emailRequiredstring
อีเมลผู้ซื้อ (ใช้/สร้าง customer)
line_itemsRequiredarray
[{ price, quantity }] · recurring price = เริ่ม subscription
success_urlRequiredstring
URL กลับหลังจ่าย ({CHECKOUT_SESSION_ID} ถูกแทนที่)
curl -X POST https://api.heysub.co/v1/checkout_sessions \
-H "Authorization: Bearer sk_test_xxx" \
-H "Heysub-Version: 2026-09-01" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"customer_email":"buyer@example.com","line_items":[{"price":"price_xxx","quantity":1}],"success_url":"https://app.example/thanks?session={CHECKOUT_SESSION_ID}"}'{
"id": "cs_01J9X",
"url": "https://pay.heysub.co/c/cs_01J9X",
"status": "open",
"total_satang": 19900,
"fee_satang": 1990,
"livemode": false
}