สร้างร้านค้า LINE Chatbot ด้วย Stripe Payment APIs พร้อมเชื่อมต่อกับ Gemini : EP.1 Explore Stripe and Merchant onboarding (Normal Mode)

Thepnatee Phojan
LINE Developers Thailand
4 min readMay 7, 2024

สวัสดีครับทุกท่าน ในบทความ EP.1 นี้จะเป็นการเปิดร้านค้า และตั้งค่าร้านค้าของเราที่จะนำไปสู่การเชื่อมต่อ LINE Chatbot เพราะฉะนั้นบทความนี้จึงจำเป็นอย่างมากที่เราต้องทำให้ได้ครบทุกหัวข้อเลย

ก่อนจะไปลุยหากใครยังไม่ได้ศึกษาว่า Payment Gateway คืออะไร หรือ Stripe คืออะไร แนะนำให้อ่านบทความก่อนหน้านี้ได้ที่ลิงก์ด้านล่างนี้ครับ รับรองว่าใช้เวลาเพียง 10–15 นาทีเท่านั้น

สิ่งที่เราต้องเตรียมให้พร้อมในบทความนี้มีแค่ 4 สิ่งที่จำเป็น

  1. Web Browser
  2. Business Information : ข้อมูลร้านค้าของตัวเอง (ไม่จำเป็นต้องมีร้านค้าจริงๆ)
  3. Bankbook : สมุดบัญชีธนาคาร
  4. Website : เว็บร้านค้า

ในส่วนที่จะลงมือทำมีหัวข้อดังนี้

  • Register Stripe Account
  • Merchant onboarding
  • Manage products and prices
  • Payment by Promptpay
  • Report

หมายเหตุ A ในเนื้อหาของบทความนี้ สามารถให้คำแนะนำเพิ่มเติม หรือช่วยแก้ไขข้อมูลให้ถูกต้องได้ เพื่อเป็นประโยชน์แก้ผู้เริ่มต้นพัฒนาทุกท่าน

หมายเหตุ B หากใช้ โหมดทดสอบ ระบบจะไม่เรียกเก็บเงินจริง

หมายเหตุ Cในบทความจะพบคำว่า สินค้า และ ผลิตภัณฑ์ ซึ่งมีความหมายเหมือนกันแต่ ผลิตภัณฑ์ เป็นคำที่ใช้เรียกหัวข้อหรือเมนูของระบบ

Register Stripe Account

  • ไปที่เว็บไซต์ https://stripe.com/
  • คลิก “Create account” กรอกข้อมูลที่จำเป็น เช่น ชื่อ อีเมล และรหัสผ่าน

ยืนยันตัวตน: Stripe จะขอให้เรายืนยันตัวตนเพื่อความปลอดภัยทางอีเมล

Merchant onboarding

สร้างร้านค้า: เมื่อยืนยันการสมัครสมาชิกแล้วจะเข้าสู่การเปิดร้านค้า (Onboarding)

ทำตามคำแนะนำ: ทำตามคำแนะนำบนหน้าจอเพื่อเปิดใช้งานบัญชี ขออนุญาตแนบการกรอกข้อมูลหากผู้อ่าน ไม่มั่นในในหัวข้อไหนสามารถดู Youtube นี้ประกอบไปด้วยได้ครับ

Verify your business

  • เลือกประเทศ : ประเทศไทย
  • เลือกประเภทธุรกิจ : บุคคลทั่วไป หรือ นิติบุคคล
  • ป้อนรายละเอียดทางธุรกิจ : ข้อมูลร้านค้าหรือ ธุรกิจของเรา (หากไม่มี ใส่เป็นข้อมูลตัวเอง)
  • ยืนยันตัวตนด้วยบัตรประชาชน หรือ หนังสือรับรองนิติบุคคล
  • เชื่อมต่อบัญชีธนาคาร : กรอกให้ตรงกับ Bankbook

ตรวจสอบอีเมล: หลังจากส่งข้อมูลของเราแล้ว จะได้รับอีเมลแจ้งเตือนว่า Stripe กำลังตรวจสอบบัญชีของเรา

บัญชีได้รับการอนุมัติ: เมื่อ Stripe อนุมัติบัญชีของเรา เราจะได้รับอีเมลแจ้งเตือน และ เข้าสู่ระบบได้

เป็นอันเสร็จเรียบร้อยสำหรับการเปิดบัญชี มาเริ่มลงมือในหัวข้อถัดไปกัน

Manage products and prices

ในหัวข้อนี้เราจะต้องเตรียมตัวในการสร้างสินค้าและราคา ต่างๆ ให้กับร้านของเรา แนะนำให้เพื่อนๆเตรียมข้อมูลในส่วนนี้ไว้ให้พร้อมเช่น รูป ชื่อ และ ราคา

ในตัวอย่างนี้เราจะมาลองเปิดร้านน้ำปั่นผลไม้กัน

  1. ไปที่เมนู แคตตาล็อกผลิตภัณฑ์ : https://dashboard.stripe.com/products
  2. สร้างผลิตภัณฑ์ใหม่:

กรอกข้อมูลผลิตภัณฑ์ เช่น:

  • ชื่อ
  • คำอธิบาย (ไม่บังคับ)
  • รูปภาพสินค้า (ไม่บังคับ)
  • ประเภทการเรียกเก็บเงิน ให้เลือกเรียกเก็บครั้งเดียว
  • จำนวนเงิน ราคาสินค้าของเรา ขั้นต่ำ 10 บาท ระบบจึงจะสามารถสร้าง Payment Link ได้

3. กดปุ่ม “เพิ่มผลิตภัณฑ์” :

เรียบร้อย เพียงเท่านี้ก็มีรายการสินค้า 1 รายการแล้ว คราวนี้ให้ทำการกดไปที่ รายการสินค้าในหน้าจอ (กดที่รูปได้เลย)

รายละเอียด (สามารถแก้ไขได้ภายหลัง):

  • รายละเอียด ประกอบไปด้วย ชื่อ รูปภาพ คำอธิบายและวันที่สร้างสินค้า
  • ค่าบริการ:
    - ราคา จะถูกสร้างตั้งแต่ขั้นตอนสร้างสินค้า และสามารถเพิ่มได้มากกว่า 1 ราคา โดยจะนับเป็นทางเลือกที่สองของผู้ซื้อ
    - ID ของ API สำหรับการใช้งานในโหมดนักพัฒนา
    - สร้างลิงก์ชำระเงิน (Payment Link) ลิงก์สำหรับชำระสินค้าที่ Stripe จะมี Frontend ให้สำหรับการชำระสินค้า
  • การขายที่เกี่ยวข้อง สามารถอ้างอิงสินค้าที่เกี่ยวข้องเพื่อเชื่อมโยงกันได้
  • ข้อมูล Meta (Metadata) เป็นการใส่ข้อมูลหมวดหมู่สินค้าที่สามารถระบุได้ ตัวอย่างเช่น [ประเภท = น้ำปั่น], [ผลไม้=สตรอว์เบอร์รี]
  • ส่วนของประวัติเหตุการณ์ต่างๆ

จะสังเกตุได้ว่ามีการเรียก API ที่ Method Post ในตัวอย่าง

200 OK  POST /v1/products/prod_Q0wK359ZhNOu85 29/4/24 21:01:42

หากกดเข้าไปดูรายละเอียดด้านในจะพบการเรียก API ของสินค้า ซึ่งหมายความว่าเราเองก็สามารถนำไปใช้งานได้ในระบบแน่นอน

ในขั้นตอนต่อไปเรามาจะมาลองชำระเงินผ่าน ลิงก์ชำระเงิน กันครับ

Payment by Promptpay

ให้ทุกคนย้อนกลับมาที่หน้ารายละเอียด ผลิตภัณฑ์ ให้ทำการกดปุ่ม “สร้างลิงก์ชำระเงิน”

รายละเอียดดังนี้

  1. จำนวนสินค้า ค่าเริ่มต้นจะอยู่ที่ 1 ชิ้น ต่อการขาย 1 ครั้ง
  2. สามารถกำหนดให้ลูกค้า ระบุจำนวนสินค้าได้โดยจะเริ่มตั้งแต่ 0 ถึง 99
  3. ตัวเลือก เป็นการเก็บข้อมูลของฝั่งลูกค้าเช่น เก็บข้อมูลที่อยู่ หรือ เบอร์มือถือ
  4. ตัวเลือกขั้นสูง
  • เพิ่มช่องข้อมูลแบบกำหนดเองเช่น อีเมล หรือ ที่อยู่
  • อนุญาตให้ใช้รหัสโปรโมชัน
  • อนุญาตให้ลูกค้าธุรกิจระบุหมายเลขประจำตัวผู้เสียภาษี
  • บันทึกรายละเอียดการชำระเงินเพื่อใช้ในอนาคต (กรณีเป็นราคามัดจำหรือผ่อนชำระ)
  • เลือกใช้คำ การทำธุรกรรมแบบ “ชำระ” หรือ “จอง”

5. Preview จะเป็นหน้าต่างตัวอย่างของการทำธุรกรรมของลูกค้า และจะเห็นว่าหากเรามีการเปิดการชำระ QR Promptpay ก็จะแสดงด้วย

6.กดปุ่ม “สร้างลิงก์” จะได้ในส่วนของ Payment Link ดังรูปด้านล่าง

ซึ่งหากอยากทำเป็น QR Code ก็สามารถกดด้วยปุ่ม “รหัส QR” หรือ สร้าง“ปุ่มซื้อ”ที่จะมี Code Stripe มาเป็นตัวอย่างให้นำไปใช้งานได้ด้วย มาลองจ่ายเงินกันดู

ในขั้นตอนการจ่ายเงินผมจะ Scan QR Code -> PromptPay -> ชำระผ่านธนาคาร

Report

เมื่อชำระเสร็จสิ้น เราสามารถดูประวัติการชำระเงินได้ที่เมนู “การชำระเงินและการวิเคราะห์” ซึ่งจากตัวอย่างด้านล่างจะมีการระบุดังนี้ จำนวนเงิน, ข้อมูลลูกค้า, ช่องทางการชำระ และ วันที่ชำระ

หากกดเข้าในดูรายละเอียดจะพบกับ ลำดับเวลาดังรูปด้านล่าง

คราวนี้จะมาสรุปเหตุการณ์อีกครั้งหลังจากที่ลูกค้ามีการชำระเงินมาเรียบร้อยแล้วดังนี้

1. การยืนยันการชำระเงิน: ร้านค้าตรวจสอบสถานะการชำระเงินในแดชบอร์ด

https://dashboard.stripe.com/payments

2. แจ้งเตือนการซื้อ: ร้านค้าจะได้รับอีเมลแจ้งเตือนการสั่งซื้อ และ อีเมลจะแจ้งรายละเอียดการสั่งซื้อ เช่น ชื่อลูกค้า ที่อยู่ รายการสินค้า ราคา และยอดชำระเงิน

3. เตรียมการจัดส่ง:

  • ร้านค้าต้องเตรียมสินค้าและแพ็คเกจสำหรับการจัดส่ง
  • ร้านค้าต้องพิมพ์ใบเสร็จรับเงินได้ที่หน้าการชำระเงินในแดชบอร์ด
ใบเสร็จ

4. จัดส่งสินค้า (สามารถจัดการจากภายนอกระบบ):

  • ร้านค้าต้องจัดส่งสินค้าให้กับลูกค้าโดยเร็วที่สุด
  • ร้านค้าต้องแจ้งหมายเลขติดตามการจัดส่งให้กับลูกค้า

5. การขอคืนเงิน (Refund):

  • ร้านค้าสามารถดำเนินการคืนเงินผ่านแดชบอร์ด Stripe
  • เงินจะถูกโอนกลับไปยังวิธีการชำระเงินของลูกค้า

6. Payout (Settlement):

  • ภายใน 7–14 วันทำการหลังจากการชำระเงินเสร็จสิ้น Stripe จะโอนเงินจากบัญชี Stripe ของร้านค้าไปยังบัญชีธนาคารของร้านค้า
  • วันที่มีการโอนออกจาก Stripe Account ไปยังบัญชีในประเทศไทย จะมีกระบวนการที่ใช้เวลาค่อนข้างนาน อ้างอิงจาก https://docs.stripe.com/payouts#payout-schedule

อธิบายเพิ่มเติม การ Payout หรือ Settlement คือขั้นตอนการเอาเงินจาก Stripe Account เข้าบัญชีร้านค้าซึ่งจะมีขั้นตอน 2 แบบ

https://dashboard.stripe.com/settings/payouts

การตั้งค่าการโอนเงินออกอัตโนมัติ (Auto Payment):

  • รายวัน: Stripe จะโอนเงินให้ทุกวัน เป็นตัวเลือกที่เหมาะสำหรับธุรกิจที่มีธุรกรรมจำนวนมาก
  • รายสัปดาห์: Stripe จะโอนเงินให้เราในวันเฉพาะของสัปดาห์ที่เลือก ตัวอย่างเช่น สามารถตั้งค่าให้ Stripe โอนเงินให้เราทุกวันศุกร์
  • รายเดือน: Stripe จะโอนเงินให้เราในวันที่เฉพาะของเดือนที่คุณเลือก ตัวอย่างเช่น เราสามารถตั้งค่าให้ Stripe โอนเงินให้คุณทุกวันที่ 1 ของแต่ละเดือน

การเบิกจ่ายด้วยตนเอง (Manual Payout or Manual Settlement):

สามารถโอนเงินออกด้วยตนเองได้ทุกเมื่อที่ต้องการ ข้อดีคือเจ้าของบัญชีตรวจสอบได้ด้วยตัวเอง 100%

จบแล้วกับกับการใช้งานแบบพื้นฐาน ซึ่งถ้าเราเริ่มทำความเข้าใจได้แล้ว จะพบว่ายังมีของเล่นอีกมากมายเลยครับ เช่นสามารถวิเคราะห์ข้อจากยอดขาย หรือการเชื่อมต่อกับระบบอื่นๆ ได้ครับ

ในบทความถัดไปจะทำในส่วนของ Developer Mode ซึ่งจะเป็นการเล่น Stripe API กันแบบเล็กๆน้อยๆ เพื่อให้เห็นการทำงานผ่าน API ครับ เพราะฉะนั้นจะรบกวน เพื่อนๆทุกท่าน ทำการลงโปรแกรม Postman Desktop ไว้ด้วยครับ

--

--