~/VibeHandbook
PDF ฟรี

การชำระเงิน

stripe.com

Stripe

มันคืออะไร

ลองนึกถึงเครื่องรูดบัตรที่เคาน์เตอร์ชำระเงิน — มันรับบัตรของลูกค้าแล้วโอนเงินให้ Stripe ก็คือสิ่งนั้น ในรูปแบบซอฟต์แวร์: ตัวประมวลผลการชำระเงิน (payment processor) มันคือชุดของ (Application Programming Interface หรือ อินเทอร์เฟซโปรแกรมประยุกต์ — วิธีที่โปรแกรมต่าง ๆ คุยกันได้) และแดชบอร์ดที่ช่วยให้แอปของคุณรับบัตรเครดิต วอลเล็ต และการชำระเงินผ่านธนาคาร แล้วจัดการการสมัครสมาชิก ใบแจ้งหนี้ และการจ่ายเงินออก มันเป็นตัวเลือกเริ่มต้นของนักพัฒนา เพราะ API สะอาด เอกสารยอดเยี่ยม และแทบทุกบทเรียนกับไลบรารีก็ตั้งสมมติฐานว่าใช้ตัวนี้ คุณเชื่อมมันเข้าไป ลูกค้าจ่ายเงิน แล้วเงินก็เข้าบัญชีธนาคารของคุณ

จุดแข็ง

  • ประสบการณ์นักพัฒนาระดับแนวหน้า — API ที่ชัดเจน โหมดทดสอบ และเอกสารที่ยอดเยี่ยม
  • ระบบนิเวศขนาดใหญ่: SDK (Software Development Kit หรือ ชุดโค้ดสำเร็จรูปที่พร้อมใช้งาน), หน้าเช็คเอาต์สำเร็จรูป ระบบเรียกเก็บเงิน และการเชื่อมต่อกับบริการภายนอกอื่น ๆ
  • ยืดหยุ่นพอสำหรับการเรียกเก็บเงินครั้งเดียว การสมัครสมาชิก มาร์เก็ตเพลส และการเรียกเก็บเงินตามการใช้งาน
  • เครื่องมือป้องกันการฉ้อโกงที่แข็งแกร่ง (Radar) และเว็บฮุก ( — การแจ้งเตือนอัตโนมัติเมื่อเกิดเหตุการณ์การชำระเงิน) ที่เชื่อถือได้และมีเอกสารอธิบายดี
  • ใช้งานได้หลายประเทศและหลายสกุลเงิน

ข้อแลกเปลี่ยน

  • มันเป็นตัวประมวลผลการชำระเงิน ไม่ใช่ (ผู้ขายตามกฎหมาย) merchant of record (MoR) คือบริษัทที่เป็นผู้ขายตามกฎหมายและจัดการใบเสร็จกับภาษีให้คุณ Stripe ไม่ใช่แบบนั้น เมื่อใช้ Stripe คุณ คือผู้ขายตามกฎหมาย ดังนั้นการเก็บและจ่ายภาษีขายและ VAT (Value Added Tax หรือ ภาษีมูลค่าเพิ่ม ซึ่งเป็นภาษีขายที่ใช้ในหลายประเทศ) จึงเป็นความรับผิดชอบของคุณ (Stripe Tax ช่วยคำนวณให้ แต่คุณยังต้องยื่นภาษีเอง)
  • ต้องตั้งค่ามากกว่าร้านค้าแบบโฮสต์สำเร็จรูป คุณต้องสร้างขั้นตอนการทำงานส่วนใหญ่เอง
  • เรื่องการปฏิบัติตามกฎระเบียบ การขอเงินคืน (chargeback) และการจดทะเบียนภาษี จะตกเป็นภาระของคุณเมื่อธุรกิจเติบโตขึ้น

ควรใช้เมื่อไหร่

เลือกใช้ Stripe เมื่อคุณต้องการควบคุมขั้นตอนการชำระเงินอย่างเต็มที่ และพร้อมรับผิดชอบเรื่องภาษีเอง หรือเมื่อคุณกำลังสร้างสิ่งที่ร้านค้าแบบโฮสต์สำเร็จรูปทำไม่ได้ — เช่น มาร์เก็ตเพลส การเรียกเก็บเงินตามการใช้งานจริง การสมัครสมาชิกที่ซับซ้อน หรือหน้าเช็คเอาต์ที่ปรับแต่งเฉพาะทางอย่างมาก

ความเหมาะสมกับ vibe coding

Stripe เป็นตัวเลือกด้านการชำระเงินที่เป็นมิตรกับ AI มากที่สุด เพราะ AI เคยเห็นตัวอย่าง Stripe มาเป็นพัน ๆ ครั้งแล้ว มันจึงสร้างโครงหน้าเช็คเอาต์ เว็บฮุก และพอร์ทัลลูกค้าได้อย่างรวดเร็ว เว็บฮุกในที่นี้คือข้อความอัตโนมัติที่ Stripe ส่งมาให้แอปของคุณเมื่อเกิดเหตุการณ์การชำระเงิน ทำให้แอปของคุณตอบสนองได้เอง แต่ปัญหาคือ agent มักจะเชื่อมระบบเรียกเก็บเงินให้อย่างสบายใจ แต่ลืมไปว่าตอนนี้คุณติดภาระภาษีในหลายสิบพื้นที่แล้ว ต้องบอกให้ชัดเจน: บอก agent ว่าคุณต้องการตั้งค่าแบบ merchant-of-record แทนหรือไม่ และตรวจสอบลายเซ็นเว็บฮุกเสมอ จัดการเหตุการณ์แบบ (ทำซ้ำได้โดยผลลัพธ์เหมือนเดิม) ด้วย นั่นคือ ต้องมั่นใจว่าถ้าเหตุการณ์เดียวกันมาถึงสองครั้ง จะไม่เก็บเงินซ้ำหรือปลดล็อกซ้ำ ทดสอบด้วยบัตรทดสอบของ Stripe ก่อนใช้งานจริง

// Create a Checkout Session (server-side)
import Stripe from "stripe";
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);

const session = await stripe.checkout.sessions.create({
  mode: "payment",
  line_items: [{ price: "price_123", quantity: 1 }],
  success_url: "https://example.com/thanks",
  cancel_url: "https://example.com/cancel",
});
// redirect the customer to session.url