PPI Integration
Integration guide for PPI issuers (wallet providers) adding UPI interoperability to prepaid instruments.
| Aspect | Detail |
|---|---|
| Partner Type | PPI issuer (wallet company) with RBI PPI license |
| App Ownership | Partner builds wallet app with UPI capability |
| Integration Mode | M2P PPI Android/iOS SDK + optional Direct API |
| M2P Role | UPI Switch (via sponsor bank), Profile, Transaction + wallet linkage |
| Partner Role | Wallet app, KYC, wallet balance management, UPI features |
Key Differences from Bank PSP / TPAP
| Aspect | Bank PSP / TPAP | PPI |
|---|---|---|
| Account Type | Real bank accounts | Prepaid wallet accounts (Full KYC only) |
| Account Linking | User selects bank → fetches accounts | Wallet auto-linked (no bank selection) |
| VPA Format | user@handle | user@ppihandle |
| KYC | Bank handles KYC | PPI issuer handles KYC |
| Balance | Bank account balance | Wallet balance (separate ledger) |
| Transaction Limits | Full UPI limits | PPI limits based on wallet type |
Onboarding Paths
When M2P manages the PPI wallet, a single API call handles everything:
Register PPI Profile
POST /upi/v1/wrapper/ppi/registerProfile
Single call: creates profile + auto-creates VPA + auto-links wallet.
Set UPI PIN (Optional)
POST /upi/v1/wrapper/profile/setCredentialsReq
Only required when PPI goes live on TPAP. Otherwise, PPI transactions are pre-approved and do not require PIN entry.
registerProfile call.Direct Onboarding
POST /upi/v1/wrapper/ppi/directOnboarding — Register profile for external PPI provider
Create VPA
POST /upi/v1/wrapper/profile/createVpa — Create user@ppihandle
Fetch Accounts
POST /upi/v1/wrapper/profile/listAccounts — Fetch PPI wallet details
Link Account
POST /upi/v1/wrapper/profile/addAccount — Add account to UPI profile
Set UPI PIN (Optional)
POST /upi/v1/wrapper/profile/setCredentialsReq — Only needed for TPAP interoperability
Transaction & Mandate APIs
Transaction and Mandate APIs are the same as Bank PSP (reqPayReq, collectAuth, txnStatus, balanceInquiry, mandate operations) — subject to PPI limits.
What the Partner Builds (PPI-Specific)
| # | Action | Description |
|---|---|---|
| 1 | Wallet app (Android + iOS) | Wallet app with UPI payment features |
| 2 | PPI SDK integration | Integrate M2P PPI SDK (different from PSP SDK) |
| 3 | KYC flow | In-app KYC (Aadhaar eKYC / Video KYC / document upload) |
| 4 | Wallet top-up | Fund load flow (UPI / net banking / card) |
| 5 | Wallet dashboard | Balance display, transaction history, management |
| 6 | Webhook consumer | Receive payment notifications |
| 7 | QR scanner | For P2M payments |
Additional M2P Actions
| # | Action | Description |
|---|---|---|
| 1 | Sponsor bank mapping | Map PPI to sponsor bank's PSP infrastructure |
| 2 | PPI handle registration | Register PPI-specific handle with NPCI |
| 3 | Wallet ledger integration | Connect to wallet balance/ledger system |
| 4 | KYC tier configuration | Configure Full KYC wallet limits |
| 5 | PPI NPCI certification | PPI-specific NPCI test cases |
