API Test Keys
Set Or Reset UPI PIN
POST/v1/upi/tpap/fundsources/:id/upi_pin?expand[]=vpasClick to copy
Customer’s card details and OTP are required to set or reset UPI PIN. These details are validated at the payment source provider’s (bank) end before allowing to set the PIN. Use this endpoint to generate the OTP via the remitter bank while setting the UPI PIN.
Is this page helpful?
Curl
1curl -X POST 'api.rzp.<bank>.com/v1/upi/tpap/fundsources/:id/upi_pin?expand[]=vpas' \2-u [YOUR_KEY_ID]:[YOUR_SECRET] \3-H "Content-type: application/json" \4-H "x-device-fingerprint: <device_fingerprint>" \5-H "x-device-fingerprint-timestamp: 1496918882000" \6-H "x-customer-reference: customer-id-from-customer" \7-d '{8"action":"set",9"upi_credentials":{10// credentials received from CL11},12"upi_transaction_id":"123qwert12",13"vpa":"abc@upiexample",14"card":{15"last6":"123456",16"expiry_month":"02",17"expiry_year":"26"18},19"device":{20"geocode":"1234.1213",21"ip":"198.1.1.1"22}23}'
Response
1{2"entity":"upi.fundsource",3"id":"fs_1234",4"type":"savings",5"customer_name":"name",6"masked_account_number":"xx9987",7"ifsc":"IFSC001",8"upi_pin_set":true,9"upi_pin_length":4,10"otp_length":4,11"atm_pin_length":4,12"fundsource_provider":{13"name":"HDFC Bank",14"upi_iin":"600007",15"upi_enabled":false,16"mobile_registration_format":"FORMAT1",17"logo_url":"<bank logo url>"18},19"vpas":{20"entity":"collection",21"count":1,22"items":[23{24"mobile":"9999999999",25"address":"anc@handle",26"status":"active",27"primary":true28}29]30}31}
Query Parameters
idstringThe payment source identifier.
Request Parameters
action *
enumIndicates whether the action is a set or reset. Both set and reset happen from the same API, so we should specify the action to distinguish between them. Possible values:
setreset
upi_credentials *
stringThe encrypted UPI PIN. NPCI credentials is the output from the WebCL page.
upi_transaction_id *
stringThe unique identifier of the transaction across all entities, created by the originator.
card *
objectCard details.
Show child parameters (3)
vpa *
stringVPA of the customer for which the PIN is set.
device stringDevice details.
Show child parameters (2)
Response Parameters
entitystring Name of the entity. Here, it is fundsource.
idstringUnique identifier of the entity.
typestringType of account.
customer_namestringName of the account holder.
masked_account_numberstringMasked account number.
ifscstringIFSC of the bank.
upi_iinstringUPI Issuer Identification Numbers (iin) of the payment source provider issued by NPCI.
upi_pin_setbooleanIndicates whether the UPI PIN is set. Possible values:
true: UPI PIN is set.false: UPI PIN is not set.
upi_pin_lengthintegerLength of the UPI PIN.
otp_lengthintegerLength of the OTP.
atm_pin_lengthintegerLength of the ATM PIN.
fundsource_providerobjectPayment source provider details. Here, if the payment source is a bank, payment source providers will be bank information.
Show child parameters (5)
vpasarrayDetails of the VPAs linked to the payment source.
Show child parameters (3)
Set Or Reset UPI PIN
POST/v1/upi/tpap/fundsources/:id/upi_pin?expand[]=vpasClick to copy
Customer’s card details and OTP are required to set or reset UPI PIN. These details are validated at the payment source provider’s (bank) end before allowing to set the PIN. Use this endpoint to generate the OTP via the remitter bank while setting the UPI PIN.
Is this page helpful?
Query Parameters
idstringThe payment source identifier.
Request Parameters
action *
enumIndicates whether the action is a set or reset. Both set and reset happen from the same API, so we should specify the action to distinguish between them. Possible values:
setreset
upi_credentials *
stringThe encrypted UPI PIN. NPCI credentials is the output from the WebCL page.
upi_transaction_id *
stringThe unique identifier of the transaction across all entities, created by the originator.
card *
objectCard details.
Show child parameters (3)
vpa *
stringVPA of the customer for which the PIN is set.
device stringDevice details.
Show child parameters (2)
Response Parameters
entitystring Name of the entity. Here, it is fundsource.
idstringUnique identifier of the entity.
typestringType of account.
customer_namestringName of the account holder.
masked_account_numberstringMasked account number.
ifscstringIFSC of the bank.
upi_iinstringUPI Issuer Identification Numbers (iin) of the payment source provider issued by NPCI.
upi_pin_setbooleanIndicates whether the UPI PIN is set. Possible values:
true: UPI PIN is set.false: UPI PIN is not set.
upi_pin_lengthintegerLength of the UPI PIN.
otp_lengthintegerLength of the OTP.
atm_pin_lengthintegerLength of the ATM PIN.
fundsource_providerobjectPayment source provider details. Here, if the payment source is a bank, payment source providers will be bank information.
Show child parameters (5)
vpasarrayDetails of the VPAs linked to the payment source.
Show child parameters (3)
Curl
1curl -X POST 'api.rzp.<bank>.com/v1/upi/tpap/fundsources/:id/upi_pin?expand[]=vpas' \2-u [YOUR_KEY_ID]:[YOUR_SECRET] \3-H "Content-type: application/json" \4-H "x-device-fingerprint: <device_fingerprint>" \5-H "x-device-fingerprint-timestamp: 1496918882000" \6-H "x-customer-reference: customer-id-from-customer" \7-d '{8"action":"set",9"upi_credentials":{10// credentials received from CL11},12"upi_transaction_id":"123qwert12",13"vpa":"abc@upiexample",14"card":{15"last6":"123456",16"expiry_month":"02",17"expiry_year":"26"18},19"device":{20"geocode":"1234.1213",21"ip":"198.1.1.1"22}23}'
Response
1{2"entity":"upi.fundsource",3"id":"fs_1234",4"type":"savings",5"customer_name":"name",6"masked_account_number":"xx9987",7"ifsc":"IFSC001",8"upi_pin_set":true,9"upi_pin_length":4,10"otp_length":4,11"atm_pin_length":4,12"fundsource_provider":{13"name":"HDFC Bank",14"upi_iin":"600007",15"upi_enabled":false,16"mobile_registration_format":"FORMAT1",17"logo_url":"<bank logo url>"18},19"vpas":{20"entity":"collection",21"count":1,22"items":[23{24"mobile":"9999999999",25"address":"anc@handle",26"status":"active",27"primary":true28}29]30}31}