
เปิดร้านค้าออนไลน์ด้วย WooCommerce บน WordPress แล้ว สิ่งต่อมาที่ขาดไม่ได้คือ Payment Gateway ที่ให้ลูกค้าชำระเงินได้สะดวก สำหรับร้านค้าในไทย มีตัวเลือกหลายตัวให้เลือกใช้ ทั้งที่รับบัตรเครดิต QR Promptpay และการโอนเงิน
บทความนี้จะอธิบายว่า Payment Gateway คืออะไร เปรียบเทียบตัวเลือกยอดนิยมสำหรับร้านค้าไทย พร้อมขั้นตอนตั้งค่า Omise for WooCommerce ซึ่งเป็นที่นิยมมากที่สุดในไทย
Payment Gateway คืออะไร
Payment Gateway คือบริการที่เชื่อมต่อร้านค้าออนไลน์กับระบบธนาคาร รับข้อมูลบัตรเครดิตหรือ QR Promptpay จากลูกค้า ตรวจสอบและอนุมัติการชำระเงิน แล้วโอนเงินมาให้ร้านค้า ทำงานเป็น "คนกลาง" ที่รักษาความปลอดภัยของข้อมูลการชำระเงิน
WooCommerce รองรับ Payment Gateway ผ่าน Extension/Plugin เสริม ซึ่งแต่ละ Gateway มี Plugin ของตัวเองที่ Install แล้วตั้งค่า API Key ได้เลย
ตัวเลือก Payment Gateway สำหรับร้านค้าไทย
1. Omise (แนะนำที่สุดสำหรับไทย)
Omise เป็น Payment Gateway ที่ถูกสร้างขึ้นมาเพื่อตลาด Southeast Asia โดยเฉพาะ รองรับบัตรเครดิต Visa/Mastercard, บัตรธนาคารไทย, QR Promptpay, TrueMoney Wallet และ Installment Plan ผ่านธนาคาร
- ค่าธรรมเนียม: 3.65%/รายการสำหรับบัตรเครดิต, 1%/รายการสำหรับ Promptpay (บางแพ็กเกจ)
- ไม่มีค่า Setup Fee ไม่มีค่ารายเดือน
- Plugin ฟรีใน WordPress.org: "Omise WooCommerce"
- รองรับ Sandbox Mode สำหรับทดสอบ
- Dashboard ภาษาไทย
2. 2C2P
2C2P เป็น Gateway ที่นิยมในระดับองค์กร รองรับช่องทางชำระเงินมากที่สุดในไทย ทั้ง บัตรเครดิต, Internet Banking ทุกธนาคาร, Counter Service, 7-Eleven และ QR Code
- เหมาะสำหรับร้านค้าขนาดกลาง-ใหญ่ที่ต้องการ Channel หลากหลาย
- ค่าธรรมเนียมโดยทั่วไปสูงกว่า Omise เล็กน้อย
- มี WooCommerce Plugin อยู่บน GitHub และ WordPress.org
3. Stripe (แนะนำสำหรับขายลูกค้าต่างประเทศ)
Stripe เป็น Gateway มาตรฐานสากล รองรับบัตรเครดิตจากทั่วโลก, Apple Pay, Google Pay และสกุลเงินกว่า 135 สกุล เหมาะสำหรับร้านค้าที่มีลูกค้าต่างประเทศ
- ค่าธรรมเนียม: 2.9% + $0.30/รายการ (USD)
- WooCommerce Payments ใช้ Stripe เป็น Backend
- รองรับ Stripe ไทยแล้วตั้งแต่ 2023
4. QR Promptpay (ผ่าน Omise หรือ Bank Plugin)
QR Promptpay เป็นที่นิยมมากในไทย ลูกค้าสแกน QR จาก Mobile Banking แล้วโอนทันที ค่าธรรมเนียมถูกกว่าบัตรเครดิตมาก บาง Gateway รับไปก่อนแล้วตรวจสอบอัตโนมัติ บางตัวต้องตรวจสอบสลิปเอง
5. PayPal
PayPal เหมาะสำหรับขายสินค้า Digital หรือมีลูกค้าต่างประเทศ ค่าธรรมเนียมสูงแต่ลูกค้าต่างประเทศไว้วางใจ WooCommerce มี PayPal Integration ในตัว
ติดตั้ง WooCommerce ก่อน
ถ้ายังไม่มี WooCommerce ให้ติดตั้งก่อน:
- ไปที่ WordPress Admin → Plugins → Add New
- ค้นหา
WooCommerce - Install และ Activate
- รัน Setup Wizard: ตั้งค่าเงินไทยบาท (THB), ที่อยู่ร้าน, ประเภทสินค้า
- ใน Setup Wizard ขั้น "Payment" เลือก Gateway ที่ต้องการเพิ่มทีหลังได้
ข้อกำหนดสำคัญ: ก่อนเปิด Payment Gateway จริง ร้านค้าต้องมี SSL Certificate บังคับ เพื่อเข้ารหัสข้อมูลบัตรเครดิตของลูกค้า AsiaGB Hosting มี SSL ฟรีทุก Hosting Plan ใช้ได้ทันที
ขั้นตอนตั้งค่า Omise for WooCommerce
ขั้นที่ 1: สมัคร Omise Account
- ไปที่ omise.co แล้วกด เริ่มต้นใช้งาน
- กรอกข้อมูลธุรกิจและเอกสารตามที่ขอ (ใช้เวลาอนุมัติ 1-3 วันทำการ)
- ระหว่างรออนุมัติสามารถใช้ Test API Key เพื่อทดสอบได้ทันที
- หลังอนุมัติ ไปที่ Dashboard → Settings → Keys จะเห็น Live API Key
ขั้นที่ 2: ติดตั้ง Plugin
- ไปที่ WordPress → Plugins → Add New
- ค้นหา
Omise WooCommerce - Install และ Activate Plugin ชื่อ "Omise" โดย Omise
ขั้นที่ 3: ตั้งค่า API Keys
- ไปที่ WooCommerce → Settings → Payments
- เลือก Omise แล้วคลิก Manage / Set up
- กรอก Public Key และ Secret Key จาก Omise Dashboard
- เปิดใช้ Test Mode ในตอนแรก (ใช้ Test API Keys)
- บันทึก แล้วทดสอบด้วย Test Card Number ก่อน Go-Live
Test Card Number สำหรับ Omise Sandbox: ใช้เลขบัตร 4242 4242 4242 4242 วันหมดอายุใดก็ได้ในอนาคต CVV ใดก็ได้ เป็นบัตรทดสอบมาตรฐาน (Visa Test Card) ที่ Omise รองรับ
ขั้นที่ 4: ตั้งค่า Payment Methods ที่ต้องการ
Omise Plugin รองรับหลาย Method สามารถเปิด/ปิดได้แยกกัน:
- Credit/Debit Card — เปิดตามค่าเริ่มต้น
- Promptpay QR — เปิดเพิ่มได้ใน Omise Settings
- TrueMoney Wallet — เปิดได้ถ้า Account ผ่านการอนุมัติ
- Installment — ผ่อน 0% ผ่านธนาคาร (ต้องขอเปิดเพิ่มเติมกับ Omise)
ตั้งค่า Stripe บน WooCommerce
- ติดตั้ง Plugin WooCommerce Stripe Payment Gateway (ฟรี, 900,000+ installs)
- ไปที่ WooCommerce → Settings → Payments → Stripe
- เปิดใช้ Stripe
- ไปที่ stripe.com/dashboard → Developers → API Keys คัดลอก Publishable Key และ Secret Key
- วาง Key ใน WooCommerce Stripe Settings
- เปิด Webhook: คัดลอก Webhook URL จาก WooCommerce แล้วเพิ่มใน Stripe Dashboard → Webhooks
- ทดสอบด้วย Stripe Test Card:
4242 4242 4242 4242
ตั้งค่า COD (Cash on Delivery) และ Bank Transfer
WooCommerce มี COD และ Bank Transfer รวมอยู่แล้วโดยไม่ต้อง Plugin เพิ่ม
Bank Transfer (BACS)
- ไปที่ WooCommerce → Settings → Payments → Direct Bank Transfer
- เปิดใช้งาน
- กรอกข้อมูลบัญชีธนาคาร: Bank Name, Account Name, Account Number, Branch
- เพิ่มได้หลายบัญชีถ้ามีธนาคารหลายแห่ง
- Instructions: กรอกคำแนะนำที่จะแสดงให้ลูกค้าเห็นหลัง Order เช่น "โปรดโอนเงินภายใน 24 ชั่วโมง พร้อมส่งหลักฐานการโอนทาง Line: @yourshop"
Cash on Delivery
- ไปที่ WooCommerce → Settings → Payments → Cash on Delivery
- เปิดใช้งาน
- ตั้งค่า Shipping Zones ที่รับ COD ได้ (เฉพาะในกรุงเทพ หรือทั้งประเทศ)
- กำหนด Fee เพิ่มเติมถ้ามีค่าบริการ COD
การตั้งค่า Webhook สำหรับ Payment Gateway
Webhook คือการแจ้งเตือนแบบ Real-time ที่ Payment Gateway ส่งมาให้ร้านค้าเมื่อมีเหตุการณ์สำคัญ เช่น การชำระเงินสำเร็จ การ Refund หรือการยกเลิก Webhook สำคัญมากเพราะถ้าไม่มี WooCommerce จะไม่ทราบว่าลูกค้าชำระเงินแล้ว และ Order Status จะไม่อัพเดตอัตโนมัติ
ตั้งค่า Webhook สำหรับ Omise
- Login Omise Dashboard → ไปที่ Settings → Webhooks
- คลิก Add Webhook Endpoint
- กรอก URL:
https://yourdomain.com/?wc-api=omise - เลือก Events ที่ต้องการรับ:
charge.complete,charge.failed,refund.create - บันทึก แล้วทดสอบด้วยปุ่ม Send Test Event
ตั้งค่า Webhook สำหรับ Stripe
- Login Stripe Dashboard → ไปที่ Developers → Webhooks
- คลิก Add Endpoint
- กรอก Endpoint URL:
https://yourdomain.com/?wc-api=stripe - เลือก Events:
payment_intent.succeeded,payment_intent.payment_failed,charge.refunded - คัดลอก Webhook Signing Secret แล้วใส่ใน WooCommerce Stripe Settings
ข้อควรระวัง: ถ้า Hosting มี Firewall หรือ Security Plugin เช่น Wordfence อาจบล็อก Webhook Request จาก IP ของ Payment Gateway ให้ Whitelist IP Address ของ Omise และ Stripe ใน Firewall ก่อนเสมอ มิฉะนั้น Order จะค้างอยู่ในสถานะ Pending ตลอด
เปรียบเทียบค่าธรรมเนียม Payment Gateway ไทย
ค่าธรรมเนียม Payment Gateway มีผลโดยตรงต่อกำไรของร้านค้า ควรคำนวณต้นทุนรวมก่อนตัดสินใจเลือกใช้ โดยเฉพาะถ้าคาดว่ายอดขายส่วนใหญ่มาจากช่องทางใดช่องทางหนึ่ง
| Gateway | ช่องทางชำระเงิน | ค่าธรรมเนียม (โดยประมาณ) | เหมาะกับ |
|---|---|---|---|
| Omise | บัตรเครดิต, PromptPay, TrueMoney, Installment | 3.65% บัตรเครดิต / ~1% PromptPay | SME ไทย, Startup |
| 2C2P | บัตรเครดิต, Internet Banking, Counter Service | ตามแพ็กเกจ (สูงกว่า Omise) | ร้านค้าขนาดกลาง-ใหญ่ |
| Stripe | Visa, Mastercard, Apple Pay, Google Pay | 2.9% + $0.30/รายการ | ลูกค้าต่างประเทศ |
| QR PromptPay ตรง (Bank API) | QR PromptPay ทุก App ธนาคาร | ฟรี (ค่าพัฒนาครั้งแรก) | ร้านค้าที่มี Volume สูง |
| COD | เงินสดปลายทาง | ฟรี (ต้นทุนโลจิสติกส์) | ลูกค้าที่ไม่มีบัตร/ไม่ไว้ใจออนไลน์ |
| Bank Transfer (BACS) | โอนตรงบัญชีธนาคาร | ฟรี | B2B, คำสั่งซื้อใหญ่ |
สำหรับร้านค้าขนาดเล็กถึงกลางในไทย แนะนำเริ่มด้วย Omise + Bank Transfer + COD ก่อน เพราะครอบคลุมลูกค้าไทยได้เกือบ 100% ด้วยค่าใช้จ่ายต่ำ เมื่อมียอดขายมากขึ้นค่อยพิจารณาเพิ่ม Stripe เพื่อลูกค้าต่างประเทศ
การแก้ไขปัญหาที่พบบ่อยใน WooCommerce Payment
ปัญหา Payment ที่พบบ่อยส่วนใหญ่มาจาก 3 สาเหตุหลัก ได้แก่ API Key ผิด, Webhook ไม่ทำงาน และ SSL มีปัญหา การ Debug อย่างเป็นระบบช่วยแก้ปัญหาได้เร็วขึ้นมาก
ปัญหาที่พบบ่อยและวิธีแก้
- ชำระเงินสำเร็จแต่ Order ยังเป็น Pending — ตรวจสอบ Webhook URL ว่าถูกต้องและ Firewall ไม่บล็อก เปิด WooCommerce Logs ดู Error (WooCommerce → Status → Logs)
- ปุ่ม Place Order ไม่ทำงาน — มักเกิดจาก JavaScript Error ของ Plugin อื่น ลองปิด Plugin ทีละตัวหรือเปลี่ยน Theme ชั่วคราวเพื่อหาตัวที่ขัดแย้ง
- Declined Card ทุกครั้ง — ตรวจสอบว่าใช้ Live Key แทน Test Key แล้ว และ Account ผ่านการอนุมัติจาก Gateway แล้ว
- หน้า Checkout โหลดช้า — WooCommerce Scripts ไม่ควร Load บนทุกหน้า ตั้งค่า Checkout Fragment ให้ถูกต้อง หรือใช้ Cache Plugin ที่รองรับ WooCommerce เช่น LiteSpeed Cache
- Mixed Content Warning — รูปภาพหรือ CSS บางอย่างยังโหลดผ่าน HTTP ใช้ Plugin Really Simple SSL เพื่อแปลง URL ทั้งหมดเป็น HTTPS อัตโนมัติ
ถ้าแก้ปัญหาเองไม่ได้ WooCommerce มี System Status Report ที่ช่วยวินิจฉัยปัญหา ไปที่ WooCommerce → Status → System Status แล้วดูส่วน "Payment Gateways" ว่ามี Error หรือ Warning อะไรบ้าง
ทดสอบ Sandbox Mode ก่อน Go-Live
ก่อนเปิดร้านจริง ต้องทดสอบ Payment Flow ทั้งหมดใน Sandbox Mode เพื่อให้แน่ใจว่าทุกอย่างทำงานถูกต้อง
| # | รายการทดสอบ | สถานะ |
|---|---|---|
| 1 | ลูกค้าเลือกสินค้าและ Checkout ได้ปกติ | ทดสอบ |
| 2 | หน้า Payment รับบัตรเครดิต Test Card สำเร็จ | ทดสอบ |
| 3 | Order Status เปลี่ยนเป็น "Processing" อัตโนมัติ | ทดสอบ |
| 4 | ได้รับ Email ยืนยัน Order (ร้านค้า + ลูกค้า) | ทดสอบ |
| 5 | ทดสอบบัตรที่ถูกปฏิเสธ (Declined Card) | ต้องทดสอบ |
| 6 | Webhook ได้รับ Event จาก Gateway ถูกต้อง | ทดสอบ |
| 7 | SSL แสดง https:// บนหน้า Checkout | บังคับ |
SSL บังคับสำหรับ Payment — เหตุใดถึงสำคัญ
SSL Certificate บังคับโดย PCI DSS (Payment Card Industry Data Security Standard) ซึ่งเป็นมาตรฐานความปลอดภัยสำหรับเว็บที่รับบัตรเครดิต หากไม่มี HTTPS:
- Browser แสดง Warning "Not Secure" ที่ทำให้ลูกค้าไม่กล้าชำระเงิน
- Payment Gateway ส่วนใหญ่ปฏิเสธการทำงานบน HTTP
- Google Ranking ลดลงเพราะไม่มี HTTPS
- ผิดกฎหมายตาม PCI DSS ถ้าเก็บข้อมูลบัตรโดยไม่เข้ารหัส
AsiaGB Hosting มี SSL Certificate ฟรีทุก Hosting Plan เปิดใช้ได้ทันทีผ่าน DirectAdmin โดยไม่มีค่าใช้จ่ายเพิ่ม และต่ออายุอัตโนมัติ ถ้าต้องการ SSL สำหรับหลายโดเมน (Wildcard SSL) ราคา 5,000 บาท/ปี
Hosting WordPress + WooCommerce ที่รองรับ Payment Gateway ไทย
AsiaGB Hosting รองรับ WooCommerce เต็มรูปแบบ มี SSL ฟรี, DirectAdmin, SSD Storage, Uptime 99% และ Backup อัตโนมัติทุกวันที่ 1 และ 15 ของเดือน เริ่มต้นเพียง 500 บาท/ปี
ดูแพ็กเกจ Hosting →