Konbini (การชำระเงินที่ร้านสะดวกซื้อ)
รับการชำระเงินสดที่ร้านสะดวกซื้อกว่า 55,000 แห่งทั่วญี่ปุ่น รวมถึง 7-Eleven, FamilyMart, Lawson และเครือข่ายหลักอื่นๆ เหมาะสำหรับลูกค้าที่ต้องการหรือต้องการตัวเลือกการชำระเงินสด
ภาพรวม
Konbini (コンビニ決済) เป็นวิธีการชำระเงินที่ใช้กันอย ่างแพร่หลายในญี่ปุ่น ที่ช่วยให้ลูกค้าชำระเงินสำหรับการซื้อออนไลน์ด้วยเงินสดที่ร้านสะดวกซื้อ ด้วยร้านสะดวกซื้อกว่า 55,000 แห่งทั่วประเทศที่เปิด 24/7 การชำระเงิน konbini ให้ความสะดวกและความไว้วางใจสำหรับลูกค้าที่ไม่มีบัตรเครดิตหรือไม่ต้องการใช้ออนไลน์
คุณสมบัติหลัก:
- ✅ สาขากว่า 55,000 แห่ง - ครอบคลุมทั่วญี่ปุ่น
- ✅ เปิด 24/7 - ร้านสะดวกซื้อเปิดตลอดเวลา
- ✅ ไม่ต้องมีบัญชีธนาคาร - ชำระเงินสดเท่านั้น
- ✅ วิธีการที่เชื่อถือได้ - เป็นที่นิยมในทุกช่วงอายุ
- ✅ มีใบเสร็จรับเงิน - หลักฐานการชำระเงินจริง
- ✅ ไม่มีการเรียกเก็บเงินคืน - การชำระเงินสดเป็นที่สิ้นสุด
ร้านค้าที่รองรับ
เครือร้านสะดวกซื้อหลักที่รับการชำระเงิน konbini:
| เครือข่าย | จำนวนสาขา | หมายเหตุ |
|---|---|---|
| 7-Eleven | 21,000+ | ระบบ Multi-Copy Machine |
| FamilyMart | 16,000+ | เทอร์มินัล Famiポート |
| Lawson | 14,000+ | เทอร์มินัล Loppi |
| Mini Stop | 2,000+ | เทอร์มินัล Loppi |
| Seicomart | 1,100+ | ระดับภูมิภาค (Hokkaido) |
| Daily Yamazaki | 1,000+ | ระบบใบเสร็จรับเงิน |
ภูมิภาคที่รองรับ
| Region | Currency | Min Amount | Max Amount | API Version |
|---|---|---|---|---|
| Japan | JPY | ¥200 | ¥49,999 | 2017-11-02 |
วิธีการทำงาน
ประสบการณ์ของลูกค้า:
- ลูกค้าเลือก "Konbini" ที่หน้าชำระเงิน
- เลือกเครือร้านสะดวกซื้อที่ต้องการ
- รับรหัสชำระเงินและคำแนะนำ
- เยี่ยมชมร้านสะดวกซื้อที่เลือกภายในระยะเวลาการชำระเงิน
- ใช้เทอร์มินัลในร้าน (Famiポート, Loppi ฯลฯ) หรือแสดงรหัสที่เคาน์เตอร์
- ชำระเงินสดและรับใบเสร็จรับเงิน
- ผู้ขายจัดส่งคำสั่งซื้อหลังจากยืนยันการชำระเงิน
เวลาที่ใช้โดยทั่วไป: 30 นาที - 7 วัน (ขึ้นอยู่กับเวลาที่ลูกค้าเยี่ยมชมร้าน)
การใช้งาน
ขั้นตอนที่ 1: สร้าง Konbini Source
- cURL
- Node.js
- PHP
- Python
- Ruby
- Go
- Java
- C#
curl https://api.omise.co/sources \
-u skey_test_YOUR_SECRET_KEY: \
-d "type=econtext" \
-d "amount=100000" \
-d "currency=JPY" \
-d "name=田中太郎" \
-d "email=tanaka@example.com" \
-d "phone_number=08012345678"
const omise = require('omise')({
secretKey: 'skey_test_YOUR_SECRET_KEY'
});
const source = await omise.sources.create({
type: 'econtext',
amount: 100000, // ¥100,000
currency: 'JPY',
name: '田中太郎',
email: 'tanaka@example.com',
phone_number: '08012345678'
});
<?php
$source = OmiseSource::create(array(
'type' => 'econtext',
'amount' => 100000,
'currency' => 'JPY',
'name' => '田中太郎',
'email' => 'tanaka@example.com',
'phone_number' => '08012345678'
));
?>
import omise
omise.api_secret = 'skey_test_YOUR_SECRET_KEY'
source = omise.Source.create(
type='econtext',
amount=100000,
currency='JPY',
name='田中太郎',
email='tanaka@example.com',
phone_number='08012345678'
)
require 'omise'
Omise.api_key = 'skey_test_YOUR_SECRET_KEY'
source = Omise::Source.create({
type: 'econtext',
amount: 100000,
currency: 'JPY',
name: '田中太郎',
email: 'tanaka@example.com',
phone_number: '08012345678'
})
source, err := client.Sources().Create(&operations.CreateSource{
Type: "econtext",
Amount: 100000,
Currency: "JPY",
Name: "田中太郎",
Email: "tanaka@example.com",
PhoneNumber: "08012345678",
})
Source source = client.sources().create(new Source.CreateParams()
.type("econtext")
.amount(100000L)
.currency("JPY")
.name("田中太郎")
.email("tanaka@example.com")
.phoneNumber("08012345678"));
var source = await client.Sources.Create(new CreateSourceRequest
{
Type = "econtext",
Amount = 100000,
Currency = "JPY",
Name = "田中太郎",
Email = "tanaka@example.com",
PhoneNumber = "08012345678"
});
การตอบกลับ:
{
"object": "source",
"id": "src_test_5rt6s9vah5lkvi1rh9c",
"type": "econtext",
"flow": "offline",
"amount": 100000,
"currency": "JPY",
"name": "田中太郎",
"email": "tanaka@example.com",
"phone_number": "08012345678",
"references": {
"payment_code": "1234567890123",
"expires_at": "2024-02-15T23:59:59Z"
}
}
ขั้นตอนที่ 2: สร้าง Charge
curl https://api.omise.co/charges \
-u skey_test_YOUR_SECRET_KEY: \
-d "amount=100000" \
-d "currency=JPY" \
-d "source=src_test_5rt6s9vah5lkvi1rh9c" \
-d "return_uri=https://yourdomain.com/orders/confirmation"
ขั้นตอนที่ 3: แสดงคำแนะนำการชำระเงิน
app.post('/checkout/konbini', async (req, res) => {
try {
const { amount, order_id, customer_name, customer_email, customer_phone } = req.body;
// ตรวจสอบจำนวนเงิน (¥200 - ¥49,999)
if (amount < 200 || amount > 49999) {
return res.status(400).json({
error: 'จำนวนเงินต้องอยู่ระหว่าง ¥200 ถึง ¥49,999'
});
}
// ตรวจสอบฟิลด์ที่จำเป็น
if (!customer_name || !customer_email || !customer_phone) {
return res.status(400).json({
error: 'ต้องระบุชื่อ อีเมล และหมายเลขโทรศัพท์สำหรับการชำร ะเงิน Konbini'
});
}
// สร้าง source
const source = await omise.sources.create({
type: 'econtext',
amount: amount,
currency: 'JPY',
name: customer_name,
email: customer_email,
phone_number: customer_phone
});
// สร้าง charge
const charge = await omise.charges.create({
amount: amount,
currency: 'JPY',
source: source.id,
return_uri: `${process.env.BASE_URL}/orders/${order_id}/confirmation`,
metadata: {
order_id: order_id
}
});
// แสดงคำแนะนำการชำระเงิน
res.render('konbini-instructions', {
payment_code: charge.source.references.payment_code,
expires_at: charge.source.references.expires_at,
amount: charge.amount,
order_id: order_id,
customer_name: customer_name
});
} catch (error) {
console.error('Konbini error:', error);
res.status(500).json({ error: error.message });
}
});
การรองรับการคืนเงิน
การชำระเงิน Konbini ไม่รองรับการคืนเงินผ่าน Omise เมื่อลูกค้าชำระเงินสดที่ร้านสะดวกซื ้อแล้ว ไม่สามารถคืนเงินผ่าน API ได้ คุณต้องจัดการการคืนเงินด้วยตนเอง (เช่น การโอนเงินผ่านธนาคารให้กับลูกค้า)
ปัญหาทั่วไปและการแก้ไข
ปัญหา: การชำระเงินหมดอายุโดยไม่มีการชำระเงิน
สาเหตุ: ลูกค้าไม่ได้ชำระเงินภายในระยะเวลาการชำระเงิน
วิธีแก้ไข:
// ส่งอีเมลเตือนก่อนหมดอายุ
async function sendPaymentReminders(orderId) {
const payment = await db.payments.findOne({ order_id: orderId });
const expiresAt = new Date(payment.expires_at);
const now = new Date();
const hoursUntilExpiry = (expiresAt - now) / (1000 * 60 * 60);
// ส่งการเตือนความจำ 24 ชั่วโมงก่อนหมดอายุ
if (hoursUntilExpiry <= 24 && hoursUntilExpiry > 23) {
await sendEmail({
to: payment.customer_email,
subject: 'กำลังใกล้ถึงกำหนดชำระเงิน',
body: `เหลือเวลาอีก 24 ชั่วโมงก่อนหมดอายุ กรุณาชำระเงินโดยเร็วที่สุด`
});
}
}
แนวทางปฏิบัติที่ดีที่สุด
1. ให้คำแนะนำที่ชัดเจนเป็นภาษาญี่ปุ่น
// ข้อความทั้งหมดที่เผชิญหน้ากับลูกค้าควรเป็นภาษาญี่ปุ่น
const instructions = {
title: 'コンビニでのお支払い方法',
steps: [
'最寄りのコンビニエンスストアに行きます',
'店内の端末でお支払い番号を入力します',
'印刷された申込券をレジに持っていきます',
'現金でお支払いください',
'お支払い後、確認メールが届きます'
]
};
2. ส่งการแจ้งเตือนหลายครั้ง
// ไทม์ไลน์อีเมล
async function sendKonbiniNotifications(order, payment) {
// ทันที: คำแน ะนำการชำระเงิน
await sendPaymentInstructions(order, payment);
// วันที่ 3: เตือนความจำหากยังไม่ชำระเงิน
scheduleEmail(order, payment, 3, 'reminder');
// วันที่ 6: เตือนความจำครั้งสุดท้าย (สำหรับระยะเวลา 7 วัน)
scheduleEmail(order, payment, 6, 'final_reminder');
// หมดอายุ: แจ้งเตือนการยกเลิก
scheduleEmail(order, payment, 7, 'expiry');
}
คำถามที่พบบ่อย
การชำระเงิน Konbini คืออะไร?
การชำระเงิน Konbini (ร้านสะดวกซื้อ) ช่วยให้ลูกค้าชำระเงินสำหรับการซื้อออนไลน์ด้วยเงินสดที่ร้านสะดวกซื้อกว่า 55,000 แห่งทั่วญี่ปุ่น รวมถึง 7-Eleven, FamilyMart และ Lawson เหมาะสำหรับลูกค้าที่ต้องการหร ือต้องการตัวเลือกการชำระเงินสด
ลูกค้าต้องมีบัญชีธนาคารหรือบัตรเครดิตหรือไม่?
ไม่ การชำระเงิน Konbini เป็นเงินสดเท่านั้นและไม่ต้องการบัญชีธนาคารหรือบัตรเครดิต ลูกค้าเพียงแค่ชำระเงินสดที่เคาน์เตอร์ร้านสะดวกซื้อ
ข้อจำกัดของธุรกรรมคืออะไร?
- ขั้นต่ำ: ¥200 ต่อธุรกรรม
- สูงสุด: ¥49,999 ต่อธุรกรรม
- ระยะเวลาการชำระเงิน: โดยทั่วไป 3-14 วัน (สามารถปรับแต่งได้)
ร้านสะดวกซื้อใดรับการชำระเงิน Konbini?
เครือข่ายหลักรวมถึง:
- 7-Eleven (21,000+ สาขา)
- FamilyMart (16,000+)
- Lawson (14,000+)
- Mini Stop (2,000+)
- Seicomart (1,100+ ใน Hokkaido)
- Daily Yamazaki (1,000+)
ใช้เวลานานเท่าไรในการยืนยันการชำระเงิน?
การยืนยันการชำระเงินมักจะเป็นทันทีหรือภายในไม่กี่นาทีหลังจากที่ลูกค้าชำระเงินที่ร้านสะดวกซื้อ Webhook จะแจ้งเตือนคุณทันทีเมื่อได้รับการชำระเงิน
ฉันสามารถคืนเงินการชำระเงิน Konbini ได้หรือไม่?
ไม่ได้ การชำระเงิน Konbini ไม่สามารถคืนเงินผ่าน Omise API ได้ เนื่องจากเป็นการชำระเงินสด หากคุณต้องการคืนเงินให้กับลูกค้า คุณต้องจัดการการคืนเงินด้วยตนเอง (เช่น การโอนเงินผ่านธนาคาร) นอก Omise