โอนเงินผ่านธนาคาร
ยอมรับการชำระเงินโดยตรงจากบัญชีธนาคารของลูกค้าผ่านแอปบัญชีออนไลน์ บัญ ชีเบิกสเบียบ และการหักเงินโดยตรงออนไลน์ทั่วประเทศไทย มาเลเซีย และสิงคโปร์
ภาพรวม
โอนเงินผ่านธนาคารช่วยให้ลูกค้าชำระเงินโดยตรงจากบัญชีธนาคารของพวกเขาโดยไม่ต้องใช้บัตรเครดิต วิธีการเหล่านี้ได้รับความไว้วางใจเป็นอย่างมากในอาเซียนตะวันออก โดยมีการทะลุของบัญชีธนาคารสูง แต่การใช้บัตรเครดิตต่ำกว่าตลาดตะวันตก
ทำไมถึงโอนเงินผ่านธนาคาร?
- ธนาคารที่เชื่อถือได้ - โดยตรงจากธนาคารที่ลูกค้าไว้วางใจ
- มือถือขั้นแรก - แอปบัญชีออนไลน์ยอดนิยม
- ไม่ต้องการบัตร - ลูกค้าเข้าถึงที่ไม่มีบัตรเครดิต
- ปลอดภัย - ความปลอดภัยระดับธนาคาร
- ค่าธรรมเนียมที่ต่ำกว่า - มักจะถูกกว่าบัตร
- ไร้พรมแดน - การทะลุของบัญชีธนาคารสูงใน SEA
วิธีการชำระเงินที่มี
Mobile Banking (ประเทศไทย)
การรวมตัวโดยตรงกับแอป mobile banking ของธนาคาร - ลูกค้ายืนยันการชำระเงินในแอปบัญชีของพวกเขา
| ธนาคาร | ผู้ใช้ | การจ่ายเงิน | คืนเงินได้ |
|---|---|---|---|
| Bangkok ธนาคาร | 6M+ | 1-3 วัน | ✅ ใช่ |
| Krungthai ธนาคาร (KTB) | 5M+ | 1-3 วัน | ✅ ใช่ |
| Kasikornbank (K-ธนาคาร) | 10M+ | 1-3 วัน | ✅ ใช่ |
| Krungsri (ธนาคาร of Ayudhya) | 4M+ | 1-3 วัน | ✅ ใช่ |
| Siam Commercial ธนาคาร (SCB) | 12M+ | 1-3 วัน | ✅ ใช่ |
Mobile Banking (สิงคโปร์)
| ธนาคาร | การจ่ายเงิน | คืนเงินได้ |
|---|---|---|
| OCBC | 1-3 วัน | ✅ ใช่ |
บัญชีออนไลน์
| วิธีการ | ภูมิภาค | การจ่ายเงิน | คืนเงินได้ |
|---|---|---|---|
| Internet Banking (ประเทศไทย) | ประเทศไทย | 1-3 วัน | ❌ ไม่ |
| FPX (มาเลเซีย) | มาเลเซีย | 1-3 วัน | ❌ ไม่ |
หักเงินโดยตรง
| วิธีการ | ภูมิภาค | การจ่ายเงิน | คืนเงินได้ |
|---|---|---|---|
| Online Direct Debit | ประเทศไทย | 1-3 วัน | ✅ ใช่ |
Mobile Banking vs Internet Banking
| ฟีเจอร์ | Mobile Banking | Internet Banking |
|---|---|---|
| แพลตฟอร์ม | แอปมือถือเท่านั้น | เบราว์เซอร์เดสก์ท็อป |
| ประสบการณ์ | Deep link ที่ราบรื่น | เปลี่ยนเส้นทางไปยังไซต์ของธนาคาร |
| ความเร็ว | รวดเร็ว (30-60 วินาที) | ช้ากว่า (2-3 นาที) |
| คืนเงิน | ✅ สนับสนุน | ❌ ไม่สนับสนุน |
| ยอดนิยมใน | 2023+ | 2018-2022 |
| แนะนำ | ✅ ใช่ | ⚠️ Legacy |
ใช้ Mobile Banking สำหรับการรวมตัวใหม่ มันให้ประสบการณ์ผู้ใช้ที่ดีขึ้น การชำระเงินที่เร็วขึ้น และการสนับสนุนการคืนเงิน Internet Banking เป็น legacy แต่ยังคงใช้ได้อย่างแพร่หลาย
วิธีการทำงานของโอนเงินผ่านธนาคาร
Mobile Banking Flow
ประส บการณ์ของลูกค้า:
- ลูกค้าเลือกธนาคารของพวกเขาที่การชำระเงิน
- แอปบัญชีเปิดขึ้นโดยอัตโนมัติ
- ลูกค้าเข้าสู่ระบบ (หากยังไม่มี)
- ตรวจสอบรายละเอียดการชำระเงิน
- ยืนยันด้วยลายนิ้วมือ/PIN
- กลับไปยังไซต์ผู้ค้า
เวลาทำให้เสร็จโดยทั่วไป: 30-90 วินาที
Internet Banking Flow
ประสบการณ์ของลูกค้า:
- ลูกค้าเลือกธนาคารและคลิกจ่าย
- เปลี่ยนเส้นทางไปยังไซต์บัญชีของธนาคาร
- เข้าสู่ระบบด้วยชื่อผู้ใช้/รหัสผ่าน
- ตรวจสอบและยืนยันการชำระเงิน
- รับการยืนยัน
- เปลี่ยนเส้นทางกลับไปยังผู้ค้า
เวลาทำให้เสร็จโดยทั่วไป: 2-5 นาที
ภาพรวมการใช้งาน
การรวมตัวพื้นฐาน (Mobile Banking)
- Node.js
- PHP
- Python
const omise = require('omise')({
secretKey: 'skey_test_YOUR_SECRET_KEY'
});
// Create source for mobile banking
const source = await omise.sources.create({
type: 'mobile_banking_scb', // or kbank, bbl, bay, ktb
amount: 100000, // Amount in smallest unit
currency: 'THB'
});
// Create charge
const charge = await omise.charges.create({
amount: 100000,
currency: 'THB',
source: source.id,
return_uri: 'https://yourdomain.com/payment/callback'
});
// Redirect customer to banking app
res.redirect(charge.authorize_uri);
<?php
// Create source
$source = OmiseSource::create(array(
'type' => 'mobile_banking_scb',
'amount' => 100000,
'currency' => 'THB'
));
// Create charge
$charge = OmiseCharge::create(array(
'amount' => 100000,
'currency' => 'THB',
'source' => $source['id'],
'return_uri' => 'https://yourdomain.com/payment/callback'
));
// Redirect
header('Location: ' . $charge['authorize_uri']);
?>
import omise
omise.api_secret = 'skey_test_YOUR_SECRET_KEY'
# Create source
source = omise.Source.create(
type='mobile_banking_scb',
amount=100000,
currency='THB'
)
# Create charge
charge = omise.Charge.create(
amount=100000,
currency='THB',
source=source.id,
return_uri='https://yourdomain.com/payment/callback'
)
# Redirect
return redirect(charge.authorize_uri)
การจัดการการโทรกลับและ Webhooks
// Handle return from bank
app.get('/payment/callback', async (req, res) => {
const charge = await omise.charges.retrieve(req.query.charge_id);
if (charge.status === 'successful') {
res.redirect('/payment-success');
} else {
res.redirect('/payment-failed');
}
});
// Handle webhook (recommended)
app.post('/webhooks/omise', (req, res) => {
const event = req.body;
if (event.key === 'charge.complete') {
const charge = event.data;
if (charge.status === 'successful') {
fulfillOrder(charge.metadata.order_id);
}
}
res.sendStatus(200);
});
อ้างอิงประเภท Source
Mobile Banking ประเทศไทย
| ประเภท Source | ชื่อธนาคาร | รหัส |
|---|---|---|
mobile_banking_scb | Siam Commercial ธนาคาร | SCB |
mobile_banking_kbank | Kasikornbank | KBANK |
mobile_banking_bbl | Bangkok ธนาคาร | BBL |
mobile_banking_bay | Krungsri (ธนาคาร of Ayudhya) | BAY |
mobile_banking_ktb | Krungthai ธนาคาร | KTB |
Mobile Banking สิงคโปร์
| ประเภท Source | ชื่อธนาคาร |
|---|---|
mobile_banking_ocbc | OCBC ธนาคาร |
บัญชีออนไลน์
| ประเภท Source | ภูมิภาค | ธนาคาร |
|---|---|---|
internet_banking_th | ประเทศไทย | ธนาคารไทยหลักทั้งหมด |
fpx | มาเลเซีย | 20+ ธนาคารมาเลเซีย |
หักเงินโดยตรง
| ประเภท Source | ภูมิภาค | คำอธิบาย |
|---|---|---|
pay_with_bill_payment | ประเทศไทย | Online Direct Debit |
การเลือกวิธีการที่ถูกต้อง
ตามประเทศ
ประเทศไทย
- หลัก: Mobile Banking (SCB, Kasikornbank)
- ทางเลือก: Internet Banking
- ปกติซ้ำ: Direct Debit
มาเลเซีย
- หลัก: FPX (Internet Banking)
- กรณีการใช้: E-commerce ทั้งหมด
สิง คโปร์
- หลัก: OCBC Mobile Banking
- ทางเลือก: PayNow (QR)
ตามกรณีการใช้งาน
การชำระเงินแบบครั้งเดียว
- Mobile Banking (UX ที่ดีที่สุด)
- Internet Banking (ไร้พรมแดนที่กว้างขึ้น)
การชำระเงินแบบปกติ
- Direct Debit เท่านั้น
- ต้องการการให้สิทธิของลูกค้า
รายการขนาดใหญ่
- โอนเงินผ่านธนาคาร (ขีดจำกัดที่สูงกว่าบัตร)
- Direct Debit (ได้รับอนุญาตล่วงหน้า)
เมทริกซ์เปรียบเทียบ
| ฟีเจอร์ | Mobile Banking | Internet Banking | Direct Debit |
|---|---|---|---|
| แพลตฟอร์ม | มือถือเท่านั้น | เดสก์ท็อป/มือถือ | ใดก็ได้ |
| ความเร็ว | เร็ว | ปานกลาง | เร็ว |
| คืนเงิน | ✅ ใช่ | ❌ ไม่ | ✅ ใช่ |
| ขีดจำกัด | สูง | สูง | สูงมาก |
| ปกติซ้ำ | ❌ ไม่ | ❌ ไม่ | ✅ ใช่ |
| ตั้งค่า | ไม่มี | ไม่มี | จำเป็น |
| ความสมบูรณ์ | 30-90 วินาที | 2-5 นาที | ทันที |
รูปแบบการใช้งาน
ตัวเลือกธนาคารหลายแห่ง
// Display available banks
const THAI_BANKS = [
{ code: 'scb', name: 'SCB', type: 'mobile_banking_scb', logo: '/banks/scb.svg' },
{ code: 'kbank', name: 'Kasikornbank', type: 'mobile_banking_kbank', logo: '/banks/kbank.svg' },
{ code: 'bbl', name: 'Bangkok ธนาคาร', type: 'mobile_banking_bbl', logo: '/banks/bbl.svg' },
{ code: 'bay', name: 'Krungsri', type: 'mobile_banking_bay', logo: '/banks/bay.svg' },
{ code: 'ktb', name: 'Krungthai', type: 'mobile_banking_ktb', logo: '/banks/ktb.svg' }
];
// Create payment with selected bank
async function createBankPayment(bankType, amount, currency) {
const source = await omise.sources.create({
type: bankType,
amount: amount,
currency: currency
});
const charge = await omise.charges.create({
amount: amount,
currency: currency,
source: source.id,
return_uri: `${baseUrl}/payment/callback`
});
return charge.authorize_uri;
}
การตรวจจับมือถือ
function isMobileBankingAvailable() {
// Mobile banking requires mobile device
return /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
}
// Show appropriate options
if (isMobileBankingAvailable()) {
showMobileBankingOptions();
} else {
showInternetBankingOptions();
}
การแสดงโลโก้ธนาคาร
<div class="bank-selector">
<h3>เลือกธนาคาร (Select ธนาคาร)</h3>
<div class="bank-grid">
<button class="bank-option" data-type="mobile_banking_scb">
<img src="/banks/scb.svg" alt="SCB">
<span>SCB</span>
</button>
<button class="bank-option" data-type="mobile_banking_kbank">
<img src="/banks/kbank.svg" alt="Kasikornbank">
<span>Kasikornbank</span>
</button>
<!-- More banks -->
</div>
</div>
แนวทางที่ดีที่สุด
1. Mobile-First สำหรับประสบการณ์สมัยใหม่
// Detect device and show appropriate method
if (isMobile()) {
showMobileBankingOptions();
} else {
showInternetBankingOptions();
showMobileQROption(); // Fallback for desktop
}
2. แสดงโลโก้ของธนาคาร
ใช้โลโก้ธนาคารอย่างเป็นทางการเพื่อสร้างความไว้วางใจและการจดจำ:
<img src="/banks/scb-logo.svg" alt="SCB ธนาคาร" class="bank-logo">
3. แสดงคำแนะนำที่ชัดเจน
<div class="payment-instructions">
<h4>วิธีชำระเงิน (How to Pay):</h4>
<ol>
<li>เลือกธนาคารของคุณ</li>
<li>แอพธนาคารจะเปิดขึ้นอัตโนมัติ</li>
<li>ยืนยันการชำระเงินในแอพ</li>
<li>รอการยืนยันทันที</li>
</ol>
</div>
4. จัดการการหมดเวลา
// Mobile banking expires quickly
const TIMEOUT = 10 * 60 * 1000; // 10 minutes
setTimeout(() => {
if (!paymentCompleted) {
showMessage('Payment expired. Please try again.');
enableRetry();
}
}, TIMEOUT);
5. ใช้ Webhooks เสมอ
// Webhook is primary notification
app.post('/webhooks/omise', handleWebhook);
// Callback is for user experience only
app.get('/payment/callback', handleCallback);
ปัญหาทั่วไปและการแก้ไข
ปัญหา: แอปไม่เปิดขึ้น
โซลูชั่น:
// Check if banking app is installed
setTimeout(() => {
if (!document.hidden) {
showMessage('Banking app not opening? Try these:');
showAlternatives([
'Update your banking app',
'Try internet banking instead',
'Use QR payment'
]);
}
}, 3000);
ปัญหา: หมดเวลาการชำระเงิน
โซลูชั่น: ตั้งเวลาที่สมเหตุสมผลและแสดงข้อความที่ชัดเจน:
if (charge.status === 'expired') {
showMessage('Payment expired. Please start a new transaction.');
}
ปัญหา: บัญชีธนาคารผิด
โซลูชั่น: อนุญาตให้ลูกค้ายืนยันก่อนยืนยัน:
<div class="verification">
<p>Paying from: <strong>SCB Account ***1234</strong></p>
<button>Change ธนาคาร</button>
</div>
คำถามที่พบบ่อย
อะไรคือความแตกต่างระหว่าง mobile banking และ internet banking?
Mobile Banking: ใช้แอป mobile banking ของธนาคารพร้อม deep linking รวดเร็ว UX สมัยใหม่ สนับสนุนคืนเงิน แนะนำสำหรับการรวมตัวใหม่
Internet Banking: เปลี่ยนเส้นทางไปยังเว็บไซต์ของธนาคาร เป็นมิตรกับเดสก์ท็อป ไร้พรมแดนธนาคารที่กว้างขึ้น แต่ไม่มีคืนเงิน วิธี legacy
ฉันควรใช้วิธีการชำระเงินใด?
- ประเทศไทย: Mobile Banking (SCB, Kasikornbank) หรือ Internet Banking เพื่อไร้พรมแดนที่กว้างขึ้น
- มาเลเซีย: FPX Internet Banking (ตัวเลือกเดียว)
- สิงคโปร์: OCBC Mobile Banking หรือ PayNow
โอนเงินผ่านธนาคารสนับสนุนคืนเงินหรือไม่?
- Mobile Banking: ✅ ใช่ ใบอนุญาตเต็มและบางส่วน
- Internet Banking: ❌ ไม่สนับสนุนคืนเงิน
- Direct Debit: ✅ ใช่ คืนเงินสนับสนุน
การจ่ายเงินใช้เวลานานแค่ไหน?
การชำระเงินโอนเงินผ่านธนาคารส่วนใหญ่จะชำระภายใน 1-3 วันธุรกิจ ตรวจสอบแดชบอร์ด Omise ของคุณเพื่อตารางการจ่ายเงินเฉพาะ
ฉันสามารถยอมรับการชำระเงินแบบปกติได้หรือไม่?
Direct Debit เท่านั้นที่สนับสนุนการชำระเงินแบบปกติ Mobile และ Internet Banking สำหรับการชำระเงินแบบครั้งเดียวเท่านั้น
ขีดจำกัดรายการคืออะไร?
ขีดจำกัดแตกต่างกันไปตามธนาคารและประเภทบัญชีของลูกค้า แต่โดยทั่วไป:
- ต่ำสุด: ฿1 (THB), RM1 (MYR), $1 (SGD)
- สูงสุด: ฿2,000,000+ ต่อรายการ
สูงกว่าขีดจำกัดบัตรมาก
ทรัพยากรที่เกี่ยวข้อง
- Payment Methods Overview - วิธีการที่มีทั้งหมด
- Digital Wallets - การชำระเงินมือถือทางเลือก
- QR Payments - PromptPay, PayNow, DuitNow
- Accept Payments - คู่มือการใช้งาน
- Webhooks - จัดการการแจ้งเตือน
- Testing - โอนเงินธนาคารทดสอบ
ขั้นตอนถัดไป
- เลือกตลาดของคุณ - ประเทศไทย มาเลเซีย หรือสิงคโปร์
- เลือกประเภทการชำระเงิน - Mobile banking, internet banking หรือ direct debit
- การใช้งาน integration - ทำตามคู่มือเฉพาะธนาคาร
- ทดสอบอย่างอุ่นใจ - ทดสอบกับแต่ละธนาคารที่รองรับ
- ไปโปรดักชัน - เปิดใช้งานสำหรับการไปสด
พร้อมเริ่มต้นหรือไม่? เลือกธนาคารของคุณ:
ประเทศไทย:
มาเลเซีย:
สิงคโปร์: