UPI
UPI (Unified Payments Interface) adalah jalur pembayaran instan India yang dioperasikan oleh National Payments Corporation of India (NPCI). Dua format QR berdampingan: skema URI upi://pay sederhana (simpel, bekerja di setiap aplikasi UPI) dan NPCI BR Code, subset EMVCo MPM dengan Merchant Account Information (tag 26) yang membawa VPA. Per 2024, UPI memproses lebih dari 11 miliar transaksi per bulan; setiap aplikasi perbankan dan pembayaran India mendukungnya.
Skema URI:
upi://pay?pa=VPA&pn=NAME&am=AMT&cu=INR, format UPI QR paling sederhana. Bekerja di setiap aplikasi UPI. Spesifikasi induk:EMVCo MPM v1.1. UPI mereservasi tag akun pedagang
26 dalam format BR Code. Regulator:Reserve Bank of India (RBI), menerbitkan sirkular UPI; NPCI adalah operatornya.
Dua format QR
- Skema URI upi://. Maksud pembayaran berkode URL sederhana. Digunakan oleh setiap UPI QR yang menghadap konsumen (stiker Paytm/Google Pay/PhonePe di pedagang kecil). Dapat dibaca oleh setiap aplikasi UPI.
- NPCI BR Code (EMVCo MPM). Format berkode TLV dengan tag
26untuk UPI Merchant Account Information. Digunakan untuk QR terpadu/interoperable (Bharat QR) dan penerapan enterprise besar di mana QR dapat sekaligus membawa UPI + RuPay + kartu.
Parameter skema URI upi://
| Param | Nama | Wajib | Catatan |
|---|---|---|---|
pa | Alamat penerima (VPA) | Ya | Format: user@handle. Contoh: alice@oksbi, merchant@paytm. |
pn | Nama penerima | Ya | Berkode URL. Ditampilkan kepada pembayar untuk konfirmasi. |
am | Jumlah | Tidak | String desimal: 10.00. Hilangkan untuk QR statis "masukkan jumlah". |
cu | Mata uang | Tidak | Selalu INR. UPI hanya INR berdasarkan regulasi. |
tn | Catatan transaksi | Tidak | Memo teks bebas ditampilkan ke pembayar, maks. 50 karakter. |
tr | Referensi transaksi | Tidak | ID yang disediakan pedagang untuk rekonsiliasi. |
mc | Kode kategori pedagang | Tidak | MCC ISO 18245 4 digit. Wajib untuk akun pedagang, opsional untuk P2P. |
tid | ID terminal | Tidak | Pengenal terminal POS. |
url | URL faktur/produk | Tidak | Tautan dalam yang dapat dibuka pembayar setelah pembayaran untuk mengambil tanda terima. |
NPCI BR Code, struktur tag 26
Ketika QR terpadu menggunakan format BR Code alih-alih upi:// biasa, payload khusus UPI berada di tag 26 sebagai TLV bersarang:
| Sub-tag | Nama | Panjang | Catatan |
|---|---|---|---|
00 | GUI, Pengenal Unik Global | variabel | Nilai tetap upi.npci.org. Mengidentifikasi skema sebagai UPI. |
01 | VPA | variabel | Alamat pembayaran virtual. Contoh: merchant@oksbi. |
02 | Kode pedagang | variabel | Pengenal pedagang yang ditugaskan NPCI untuk rekonsiliasi acquirer. |
Aturan format VPA
- Format:
user@handle, nama pengguna diikuti@dan handle PSP yang mengidentifikasi penyedia layanan pembayaran. - Bagian nama pengguna. 3–63 karakter, alfanumerik plus
.,-,_. Tidak membedakan huruf besar/kecil per spesifikasi, tetapi beberapa aplikasi memperlakukannya sebagai sensitif huruf besar/kecil (lihat jebakan). - Bagian handle. Ditetapkan PSP. Handle umum:
@oksbi(SBI),@okicici(ICICI),@okhdfcbank(HDFC),@paytm(Paytm),@ybl(PhonePe → Yes Bank),@ibl(PhonePe → IDFC FIRST),@apl(Amazon Pay via Axis). - Panjang total. Maks. ~50 karakter termasuk
@. - Resolusi. Saat pemindaian, aplikasi pembayar me-resolve VPA → rekening bank melalui NPCI. Resolusi mengembalikan nama pemegang akun yang terdaftar, yang ditampilkan aplikasi pembayar untuk konfirmasi.
Vektor pengujian kanonik, skema URI upi://
VPA merchant@oksbi, nama TEST MERCHANT, jumlah tetap ₹10.00, dengan referensi INV-2026-0001:
upi://pay?pa=merchant@oksbi&pn=TEST%20MERCHANT&am=10.00&cu=INR&tn=Invoice%20INV-2026-0001&tr=INV-2026-0001Stiker statis minimal "masukkan jumlah":
upi://pay?pa=merchant@oksbi&pn=TEST%20MERCHANT&cu=INRJebakan umum
- Sensitivitas huruf besar/kecil VPA dalam praktik. Spesifikasi NPCI menyatakan VPA tidak peka huruf besar/kecil. Dalam praktik beberapa aplikasi (PhonePe lama, Paytm) gagal pada VPA dengan huruf campuran. Selalu keluarkan huruf kecil:
alice@oksbibukanAlice@OKSBI. - Pengkodean URL nama penerima. Parameter
pnmenerima spasi dan karakter beraksen, yang harus dikode persen.TEST MERCHANT→TEST%20MERCHANT. Aplikasi yang tidak mendekode dengan benar menampilkan nama tidak jelas di layar konfirmasi. - Mata uang harus INR. UPI hanya INR berdasarkan regulasi RBI. Nilai
culainnya dihilangkan secara diam-diam atau ditolak. Penerima internasional memerlukan kepatuhan RBI Liberalised Remittance Scheme dan tidak menggunakan UPI. - Jumlah harus positif.
am=0atauam=-5ditolak. Untuk QR "masukkan jumlah", hilangkan parameteramsepenuhnya. - Simbol ₹ dalam jumlah. Jangan pernah menyertakan simbol rupee atau "Rs." dalam nilai
am.am=10.00, bukanam=₹10.00. - Penipuan overlay di POS. Stiker UPI fisik adalah vektor penipuan yang terdokumentasi di India. Penyerang menempelkan stiker dengan VPA mereka sendiri di atas stiker pedagang. Sirkular anti-penipuan RBI mengharuskan pedagang menampilkan VPA yang diharapkan sebagai teks cetak di sebelah QR agar pembayar dapat memverifikasi.
- GST + analogi 1099-K. Tanda terima komersial UPI dihitung untuk pengajuan GST. Pedagang dengan tanda terima agregat melebihi ₹20 lakh/tahun harus mendaftar GST; yang melebihi ₹10 crore harus menghasilkan e-faktur di Portal Pendaftaran Faktur GST. Data transaksi UPI dibagikan dengan Jaringan GST (GSTN) untuk rekonsiliasi.
- Permohonan investasi dibatasi. SEBI melarang UPI untuk permohonan sekuritas yang tidak terdaftar. QR UPI yang mempromosikan "imbal hasil dijamin", pra-penjualan token, atau skema MLM memicu penegakan SEBI.
- Aturan Perlindungan Konsumen (E-Commerce). QR UPI tercetak yang menerima pembayaran adalah penawaran komersial berdasarkan Aturan E-Commerce 2020. Pedagang harus menampilkan kebijakan pengembalian di sebelah QR. Pembayaran UPI langsung final; pengembalian dana harus dimulai sebagai UPI push terpisah dari pedagang kembali ke pembayar.
Kompatibilitas aplikasi UPI
| Aplikasi | upi:// URI | NPCI BR Code | Catatan |
|---|---|---|---|
| Google Pay (Tez) | Ya | Ya | Aplikasi UPI terbesar berdasarkan volume. |
| PhonePe | Ya | Ya | Dukungan UPI + BR Code penuh. |
| Paytm | Ya | Ya | UPI penuh + cadangan dompet Paytm mereka sendiri. |
| Amazon Pay | Ya | Ya | Melalui Axis Bank (handle @apl). |
| BHIM | Ya | Ya | Implementasi referensi NPCI. Garis dasar aman untuk pengujian. |
| Setiap aplikasi bank besar (SBI YONO, ICICI iMobile, HDFC PayZapp, Axis Mobile) | Ya | Ya | Semua bank yang terdaftar UPI menyertakan dukungan UPI di aplikasi konsumen mereka. |
| Kamera iOS/Android generik | Sebagian | Tidak | Kamera bawaan mem-parse skema upi:// dan menawarkan "Buka di aplikasi UPI" di perangkat terbaru, tetapi tidak merender BR Code TLV secara langsung. |
Lihat juga
- /upi-qr-code/, generator UPI dengan validasi VPA dan pengkodean
upi://langsung. - /standards/emvco/, spesifikasi induk EMVCo MPM.
- /standards/pix/, PIX Brasil, skema saudara yang juga menggunakan tag 26 EMVCo.
- /standards/, kembali ke indeks standar.