UPI

UPI (Unified Payments Interface) est le rail de paiement instantané indien, opéré par le National Payments Corporation of India (NPCI). Deux formats QR coexistent : le schéma URI upi://pay simple (fonctionne dans chaque app UPI) et le NPCI BR Code, un sous-ensemble EMVCo MPM avec les Informations de Compte Marchand (tag 26) portant la VPA. UPI a traité plus de 11 milliards de transactions par mois en 2024 ; toutes les apps bancaires et de paiement indiennes le supportent.

Spécification canonique :NPCI UPI Product Overview et NPCI OC 97, Standardization of UPI QR Code Format.
Schéma URI :upi://pay?pa=VPA&pn=NAME&am=AMT&cu=INR, le format QR UPI le plus simple. Fonctionne dans chaque app UPI.
Spécification parente :EMVCo MPM v1.1. UPI réserve le tag de compte marchand 26 au format BR Code.
Régulateur :Reserve Bank of India (RBI), émet des circulaires UPI ; NPCI est l'opérateur.

Deux formats QR

Paramètres du schéma URI upi://

ParamètreNomRequisNotes
paAdresse du bénéficiaire (VPA)OuiFormat : user@handle. Exemple : alice@oksbi, merchant@paytm.
pnNom du bénéficiaireOuiEncodé en URL. Affiché au payeur pour confirmation.
amMontantNonChaîne décimale : 10.00. Omettre pour les QR statiques "saisir le montant".
cuDeviseNonToujours INR. UPI est INR uniquement par réglementation.
tnNote de transactionNonMémo texte libre affiché au payeur, max. 50 caractères.
trRéférence de transactionNonID fourni par le marchand pour la réconciliation.
mcCode de catégorie marchandNonMCC ISO 18245 à 4 chiffres. Obligatoire pour les comptes marchands, optionnel pour P2P.
tidID de terminalNonIdentifiant du terminal POS.
urlURL de facture/produitNonLien profond que le payeur peut ouvrir après le paiement pour récupérer le reçu.

NPCI BR Code, structure du tag 26

Quand un QR unifié utilise le format BR Code plutôt que le simple upi://, la charge utile spécifique UPI réside dans le tag 26 sous forme de TLV imbriqué :

Sous-tagNomLongueurNotes
00GUI, identifiant unique mondialvariableValeur fixe upi.npci.org. Identifie le schéma comme UPI.
01VPAvariableL'adresse de paiement virtuelle. Exemple : merchant@oksbi.
02Code marchandvariableIdentifiant marchand attribué par NPCI pour la réconciliation avec l'acquéreur.

Règles de format VPA

Vecteur de test canonique, schéma URI upi://

VPA merchant@oksbi, nom TEST MERCHANT, montant fixe ₹10.00, avec référence INV-2026-0001 :

upi://pay?pa=merchant@oksbi&pn=TEST%20MERCHANT&am=10.00&cu=INR&tn=Invoice%20INV-2026-0001&tr=INV-2026-0001

Autocollant statique minimal "saisir le montant" :

upi://pay?pa=merchant@oksbi&pn=TEST%20MERCHANT&cu=INR

Pièges courants

Compatibilité des apps UPI

Appupi:// URINPCI BR CodeNotes
Google Pay (Tez)OuiOuiLa plus grande app UPI par volume.
PhonePeOuiOuiSupport UPI + BR Code complet.
PaytmOuiOuiSupport UPI complet + fallback portefeuille Paytm propre.
Amazon PayOuiOuiVia Axis Bank (handle @apl).
BHIMOuiOuiImplémentation de référence NPCI. Base sûre pour les tests.
Toutes les grandes apps bancaires (SBI YONO, ICICI iMobile, HDFC PayZapp, Axis Mobile)OuiOuiToutes les banques inscrites UPI livrent le support UPI dans leur app grand public.
Caméra iOS/Android génériquePartielNonLes caméras natives parsent le schéma upi:// et proposent "Ouvrir dans l'app UPI" sur les appareils récents, mais ne rendent pas le BR Code TLV directement.

Voir aussi

Références de spécification vérifiées le 2026-04-19. NPCI UPI Product Overview (2024), NPCI OC 97, UPI QR Standardization, EMVCo MPM v1.1.