#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 Bill Payment API Flow
#Bill Fetch Request API Enhancement
The bill fetch request API has been enhanced to include remitter details within the remitter
object.
Sample Request
{"agent": {"mac": "48-4D-7E-CB-DB-6F","mobile": "string","postalCode": "600001","id": "AX01AI06512391457204","ifsc": "ICIC0000152","imei": "123456789012345","ip": "124.170.23.24","os": "iOS","app": "SmartPay","channel": "INT","geocode": "19.0139,72.8254","terminalId": "6000011234"},+ "remitter": {+ "aadhaar": "123456789012",+ "email": "test@example.com",+ "name": "John Doe",+ "pan": "ABDCE1121E"+ },"biller": {"id": "MAHI00000NATIC"},"customer": {"customerId": "4881317598","mobile": "string","customerParams": [{"name": "John Doe","value": "1895159"}]}}
#Bill Payment Request API Enhancement
The bill payment request API has been enhanced to include remitter details under the remitter
object and account information within the accountInfo
property of the paymentDetails
object.
#RefId Based Payment Request
- The
bill fetch request API
must be called to get the bill details before initiating the payment. - The
refId
from the bill fetch request API must be used to make the payment.
Sample Request
{"refId": "HENSVVR4QOS7X1UGPY7JGUV444P10102202",+ "remitter": {+ "aadhaar": "123456789012",+ "email": "test@example.com",+ "name": "John Doe",+ "pan": "ABDCE1121E"+ },"bills": "Selection on bills in case of list billers","paymentDetails": {"custConvFee": 0,"paymentRefId": "BD019181220291","timestamp": "2020-12-12T13:12:00+05:30","COUcustConvFee": 0,+ "accountInfo": "ICIC0000152|1234567890","amount": 1,"currency": 0,"mode": "Internet Banking","selectedPaymentOptions": [{"amount": 1,"name": "John Doe"}]}}
#Direct Payment Request
Sample Request
{"biller": {"id": "MAHI00000NATIC"},"agent": {"mac": "48-4D-7E-CB-DB-6F","mobile": "string","postalCode": "600001","id": "AX01AI06512391457204","ifsc": "ICIC0000152","imei": "123456789012345","ip": "124.170.23.24","os": "iOS","app": "SmartPay","channel": "INT","geocode": "19.0139,72.8254","terminalId": "6000011234"},+ "remitter": {+ "aadhaar": "123456789012",+ "email": "test@example.com",+ "name": "John Doe",+ "pan": "ABDCE1121E"+ },"paymentDetails": {"custConvFee": 0,"paymentRefId": "BD019181220291","timestamp": "2020-12-12T13:12:00+05:30","COUcustConvFee": 0,+ "accountInfo": "ICIC0000152|1234567890","amount": 1,"currency": 0,"mode": "Internet Banking","selectedPaymentOptions": [{"amount": 1,"name": "John Doe"}]},"bills": "Selection on bills in case of list billers","customer": {"customerId": "4881317598","mobile": "string","customerParams": [{"name": "John Doe","value": "1895159"}]}}
#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