Krungsri Mobile Banking
Accept instant payments via Krungsri Mobile app from Bank of Ayudhya (Krungsri), one of Thailand's Big 5 banks with 4+ million users and strong corporate banking presence.
Payment Flow

Step-by-step mobile banking payment process:
❶ Select Bank - Customer chooses their bank at merchant checkout
❷ Redirect to bank - System redirects to bank's payment authorization page
❸ Open banking app - Deep link automatically launches the bank's mobile app
- On iOS: Opens via Universal Links
- On Android: Opens via App Links
- Customer sees "Open in [Bank] App" prompt
❹ Authenticate - Customer logs into banking app (if not already logged in)
- PIN entry (6 digits)
- Fingerprint scan
- Face ID recognition
❺ Review payment - Transaction details displayed in app:
- Merchant name
- Payment amount
- Order reference
- Account to debit from
❻ Authorize payment - Customer confirms the transaction
- Enter additional PIN/OTP if required by bank
- Tap "Confirm Payment" button
❼ Payment processed - Bank immediately transfers funds
❽ Confirmation - Success screen shown in app
- Transaction reference number
- Receipt available for download
❾ Return to merchant - Customer redirected back to merchant website
- Automatic redirect or "Return to Merchant" button
- Order confirmation page displayed
Typical completion time: 30-90 seconds
Overview
Krungsri Mobile is the banking app from Bank of Ayudhya (BAY), commonly known as Krungsri. As one of Thailand's largest banks and part of the Mitsubishi UFJ Financial Group, Krungsri serves both retail and corporate customers with innovative digital banking solutions.
Key Features:
- ✅ Fast confirmation - Near real-time payment verification (typically within seconds)
- ✅ 4+ million users - Strong presence in Bangkok and major cities
- ✅ International backing - Part of MUFG (Japan's largest bank)
- ✅ High limits - Up to ฿150,000 per transaction
- ✅ Modern UX - Award-winning mobile app
- ✅ Refund support - Full and partial refunds
Supported Region
| Region | Currency | Min Amount | Max Amount | Daily Limit |
|---|---|---|---|---|
| Thailand | THB | ฿20.00 | ฿150,000 | Varies* |
*Daily limits depend on customer's account type
How It Works
Customer selects Krungsri → App opens → Authenticates → Confirms payment → Returns to merchant (30-90 seconds)
Implementation
Create Source and Charge
- Node.js
- PHP
- Python
const omise = require('omise')({
secretKey: 'skey_test_YOUR_SECRET_KEY'
});
// Create source (BAY = Bank of Ayudhya)
const source = await omise.sources.create({
type: 'mobile_banking_bay',
amount: 100000, // ฿1,000
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 to Krungsri Mobile app
res.redirect(charge.authorize_uri);
<?php
$source = OmiseSource::create(array(
'type' => 'mobile_banking_bay',
'amount' => 100000,
'currency' => 'THB'
));
$charge = OmiseCharge::create(array(
'amount' => 100000,
'currency' => 'THB',
'source' => $source['id'],
'return_uri' => 'https://yourdomain.com/payment/callback'
));
header('Location: ' . $charge['authorize_uri']);
?>
import omise
omise.api_secret = 'skey_test_YOUR_SECRET_KEY'
source = omise.Source.create(
type='mobile_banking_bay',
amount=100000,
currency='THB'
)
charge = omise.Charge.create(
amount=100000,
currency='THB',
source=source.id,
return_uri='https://yourdomain.com/payment/callback'
)
return redirect(charge.authorize_uri)
Refund Support
// Full or partial refund within 30 days
const refund = await omise.charges.refund('chrg_test_...', {
amount: 100000 // Full or partial amount
});
Testing
Test Amount: ฿1,000 (100000 smallest unit) Expected: Successful payment in test mode
FAQ
What is Krungsri?
Krungsri (Bank of Ayudhya) is one of Thailand's Big 5 banks. It's owned by MUFG (Mitsubishi UFJ Financial Group), Japan's largest bank, providing strong international backing.
What are the transaction limits?
- Minimum: ฿20
- Maximum: ฿2,000,000 per transaction
- Daily limits vary by customer account type
Can I refund Krungsri payments?
Yes, full and partial refunds are supported within 30 days of the original transaction.
Related Resources
- Mobile Banking Overview - All mobile banking options
- Bank Transfers Overview - All bank payment methods
- Testing - Test your integration