Japan Online Banking
Accept payments via online banking from major Japanese banks with internet banking support and refund capability.
Overview
Japan Online Banking allows customers to pay directly from their bank accounts through their bank's internet banking website. Unlike Pay-easy (which uses ATMs or banking), this method is purely online.
Key Features:
- ✅ Major banks - Leading Japanese banks supported
- ✅ Internet banking - Online-only, no ATM needed
- ✅ Refund support - Full and partial refunds (unlike Konbini/Pay-easy)
- ✅ Higher limits - Larger transaction amounts
- ✅ Bank verification - Direct bank authentication
- ⚠️ Requires online banking - Customer must have internet banking enabled
Supported Banks
Major Japanese banks with internet banking:
- Mizuho Bank (みずほ銀行)
- MUFG Bank (三菱UFJ銀行)
- Sumitomo Mitsui Banking Corporation (三井住友銀行)
- Other major city and regional banks
| Region | Currency | Min Amount | Max Amount | Settlement |
|---|---|---|---|---|
| Japan | JPY | ¥100 | ¥10,000,000+ | 1-3 days |
How It Works
Customer selects online banking → Redirected to bank website → Logs in → Confirms payment → Returns to merchant (2-5 minutes total)
Implementation
Create Source and Charge
- Node.js
- PHP
const omise = require('omise')({
secretKey: 'skey_test_YOUR_SECRET_KEY'
});
// Create online banking source
const source = await omise.sources.create({
type: 'online_banking_jpn',
amount: 100000, // ¥100,000
currency: 'JPY'
});
// Create charge
const charge = await omise.charges.create({
amount: 100000,
currency: 'JPY',
source: source.id,
return_uri: 'https://yourdomain.com/payment/callback'
});
// Redirect to bank
res.redirect(charge.authorize_uri);
<?php
$source = OmiseSource::create(array(
'type' => 'online_banking_jpn',
'amount' => 100000,
'currency' => 'JPY'
));
$charge = OmiseCharge::create(array(
'amount' => 100000,
'currency' => 'JPY',
'source' => $source['id'],
'return_uri' => 'https://yourdomain.com/payment/callback'
));
header('Location: ' . $charge['authorize_uri']);
?>
Refund Support
Unlike Konbini and Pay-easy, online banking supports refunds:
// Full or partial refund within 180 days
const refund = await omise.charges.refund('chrg_test_...', {
amount: 100000 // Full or partial
});
Comparison with Other Japan Methods
| Feature | Online Banking | Pay-easy | Konbini |
|---|---|---|---|
| Platform | Online only | ATM/Online | In-store |
| Max Amount | ¥10M+ | ¥999,999 | ¥300,000 |
| Speed | 2-5 min | 1-24 hrs | 1-24 hrs |
| Refunds | ✅ Yes | ❌ No | ❌ No |
| Requirements | Internet banking | Bank account | Cash/card |
| Best for | High-value, refund-needed | Mid-value | Cash users |
When to Use Online Banking
✅ Use when:
- High-value transactions (>¥100,000)
- Refunds may be needed
- Target audience has internet banking
- Desktop/laptop users
❌ Don't use when:
- Target audience prefers cash (use Konbini)
- Mobile-first experience (use PayPay)
- Customers may not have internet banking enabled
Best Practices
1. Show Supported Banks
<div class="payment-method">
<h3>インターネットバンキング</h3>
<p>以下の銀行のネットバンキングが利用できます:</p>
<div class="banks">
<img src="/banks/mizuho.svg" alt="みずほ銀行">
<img src="/banks/mufg.svg" alt="三菱UFJ銀行">
<img src="/banks/smbc.svg" alt="三井住友銀行">
</div>
</div>
2. Verify Internet Banking
// Show requirement clearly
showRequirement({
title: 'インターネットバンキングが必要です',
description: 'お使いの銀行でインターネットバンキングをご利用いただける必要があります。',
action: 'ネットバンキングを利用する'
});
3. Handle Redirect
app.get('/payment/callback', async (req, res) => {
const charge = await omise.charges.retrieve(req.query.charge_id);
if (charge.status === 'successful') {
await shipOrder(charge.metadata.order_id);
res.redirect('/order-success');
} else {
res.redirect('/payment-failed');
}
});
FAQ
What is Japan Online Banking?
Direct payment from customer's bank account through their bank's internet banking website. Requires customer to have internet banking enabled.
Can I refund online banking payments?
Yes! Unlike Konbini and Pay-easy, online banking supports both full and partial refunds within 180 days.
Which banks are supported?
Major Japanese banks including Mizuho, MUFG, and SMBC. Customers select their bank during checkout.
Should I use this or Pay-easy?
Online Banking: Higher limits, refunds, online-only Pay-easy: ATM option, wider reach, no refunds
Use Online Banking for high-value or refund-needed transactions.
Related Resources
- Japan Payments Overview - All Japan methods
- Pay-easy - ATM/online alternative
- Konbini - Cash-based alternative
- Testing - Test your integration
Next Steps
- Create online banking source
- Redirect to bank selection
- Handle return callback
- Set up webhook handler
- Test with Japanese banks
- Go live