#Remitter Details Integration Guide
#Overview
NPCI has introduced comprehensive remittance information handling across two distinct integration flows to accommodate acceptance of remittance data from Agent Institutions for Credit Card Bill Payments. These enhancements ensure compliance with NPCI specifications while providing flexibility for different integration approaches.
#Remitter Details Specification
Property | Type | Constraints | Purpose | Notes |
---|---|---|---|---|
accountInfo | String (variable) | Must correspond to selected payment mode | Contains customer's remittance information in NPCI-compatible format | Required field |
remitter | Object | - | Captures information about the person making the payment | May differ from credit card holder |
#Remitter Object Properties
Property | Type | Constraints | Purpose | Notes |
---|---|---|---|---|
name | String | min: 1, max: 50 | Remitter's full name | Auto-fallback: 'Not Available' for CC payments if not provided |
email | String | min: 1, max: 50 | Remitter's email address | - |
pan | String | min: 1, max: 50 | Remitter's PAN number | - |
aadhaar | String | min: 1, max: 50 | Remitter's Aadhaar number | - |
#Key Notes
- NPCI Compatibility: The
accountInfo
field must be formatted according to NPCI specifications and to be passed with all Bill Payments and theremitter
object to be passed with all Credit Card Bill Payments. - Credit Card Fallback: When remitter name is not provided for credit card payments, the system automatically sends "Not Available" to NPCI
- Remitter vs Cardholder: The person making the payment (remitter) may be different from the credit card holder
#Remitter Details in WL + Custom Payment Flow
#Payment Event Webhook Enhancement
The webhook API for payment events will now support remitter details under the remitter
object and account information within the accountInfo
property in the incoming payload (See Webhook API Reference).
Sample Request
{"orderId": "COUWLje9V7wWs9N3w","transactionId": "UNIQUE_PAYMENT_TRANSACTION_ID","paymentDateTime": "YYYY-MM-DD HH:MM:SS in UTC","amount": "100.00","paymentMode": "CASH|UPI|IMPS|NEFT|AEPS|ACCOUNT TRANSFER|INTERNET BANKING|WALLET|DEBIT CARD|CREDIT CARD|PREPAID CARD|Bharat QR|USSD","paymentStatus": "SUCCESS|FAILURE",+ "remitter": {+ "name": "XX",+ "pan": "xxxx",+ "email": "XXXX",+ "aadhaar": "XXX"+ },+ "accountInfo": "ICIC0000152|1234567890"}
#Payment Status API Enhancement
The payment status API must now include remitter details under the remitter object and account information within the accountInfo property in the response payload (See Payment Status API Reference).
Sample Response
{"status": "success/invalid-order-id","message": "","data": {"orderId": "COUWLje9V7wWs9N3w","transactionId": "UNIQUE_PAYMENT_TRANSACTION_ID","paymentDateTime": "YYYY-MM-DD HH:MM:SS in UTC","amount": "100.00","paymentMode": "CASH|UPI|IMPS|NEFT|AEPS|ACCOUNT TRANSFER|INTERNET BANKING|WALLET|DEBIT CARD|CREDIT CARD|PREPAID CARD|Bharat QR|USSD","paymentStatus": "SUCCESS|FAILURE",+ "remitter": {+ "name": "XX",+ "pan": "xxxx",+ "email": "XXXX",+ "aadhaar": "XXX"+ },+ "accountInfo": "ICIC0000152|1234567890"}}
#NPCI Specifications
#Account Information Format by Payment Mode
Payment Mode | Value Example | Length Constraints | NPCI Code | Description |
---|---|---|---|---|
IMPS | 9240111|9004644121 | Fixed: 18 | MMID|MobileNo | MMID and mobile number used for payment |
NEFT, AccountTransfer, BharatQR, InternetBanking | SRAN0000341|9912345123456 | Min: 3, Max: 50 | IFSC|AccountNo | IFSC and account number used for payment |
CreditCard, DebitCard, PrepaidCard | 1234567890123456|123456 | Min: 3, Max: 50 | CardNum|AuthCode | Card number and authorization code used for payment |
UPI | dummy@ybl | Min: 3, Max: 50 | VPA | Virtual Provider Address used for payment |
Wallet | PayTM|9004644121 | Min: 12, Max: 50 | WalletName|MobileNo | Wallet name and mobile number used for payment |
AEPS, BHIM Aadhaar Pay | 123456789012|1234567 | Min: 3, Max: 50 | Aadhaar|IIN | Aadhaar number and IIN used for payment |
Cash, USSD | <Payment remarks> | Min: 1, Max: 50 | Remarks | Remarks when payment mode is cash |
#Code Format Examples
The following table provides detailed formatting specifications for different NPCI codes:
Code | Format | Example |
---|---|---|
Remarks | Alphanumeric Special Min Length: 1, Max Length: 50 | UNI000 |
CardNum|AuthCode | Alphanumeric with characters on either side of '|' separator Min Length: 3, Max Length: 50 | 1234567890123456|123456 |
IFSC|AccountNo | Alphanumeric with characters on either side of '|' separator Min Length: 3, Max Length: 50 | SRAN0000341|01234567 |
MMID|MobileNo | Numeric with characters on either side of '|' separator Fixed Length: 18 | 9240111|9004644121 |
WalletName|MobileNo | Alphanumeric with characters on either side of '|' separator Min Length: 12, Max Length: 50 | TA Wallet|9004644121 |
VPA | Alphanumeric Special Min Length: 3, Max Length: 50 | manoj@icici |
Aadhaar|IIN | Alphanumeric with characters on either side of '|' separator Min Length: 3, Max Length: 50 | 123456789012|1234567 |
#Field Handling Rules
#Mandatory Behavior
- The
accountInfo
field must contain NPCI-compatible values corresponding to the selected payment mode - For credit card bill payments, both the
accountInfo
andremitter
objects must be provided.
#Optional Field Handling
- If remitter details or account information are not available, the fields should be omitted entirely
- System automatically handles fallback scenarios