From f9341b8d738db1bd3563576f1f832d94582d54bb Mon Sep 17 00:00:00 2001 From: VarunSonava Date: Thu, 22 Jan 2026 10:51:01 +0530 Subject: [PATCH 1/2] Remove debit attempt failure webhook, add addonschema example --- .../reverse-penny-drop/api-integration.mdx | 198 +++++++----------- 1 file changed, 76 insertions(+), 122 deletions(-) diff --git a/content/data/bav/reverse-penny-drop/api-integration.mdx b/content/data/bav/reverse-penny-drop/api-integration.mdx index a3cb40d0..392f7440 100644 --- a/content/data/bav/reverse-penny-drop/api-integration.mdx +++ b/content/data/bav/reverse-penny-drop/api-integration.mdx @@ -383,7 +383,7 @@ Setu provides webhook authentication. For more details, refer to -##### 1. RPD_VERIFICATION_UPDATE Webhook +##### RPD_VERIFICATION_UPDATE Webhook This webhook is sent when the end user makes a payments. @@ -452,13 +452,17 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ "swift": "", "upi": "true" } - } + }, "additionalData": { // if you have specified while creating RPD request "key1" : "value1", "key2" : "value2" - } + }, + "receiptId": "AXI75fc85a15ce6449491b79f8509c55a96", + "transactionId": "602185974626" } - } + }, + "status": "BAV_REVERSE_PENNY_DROP_PAYMENT_SUCCESSFUL", + "productInstanceId": "abcdefgh-c1b5-4219-a64b-abcabc123456", "traceId" : "7097e53a-baq9-4122-9d3d-8s8433b4f33e", } `} @@ -471,6 +475,73 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ Example 2 + +
+ + In case of successful bank verification, with add-on schema configured + +
+ {` +{ + "event" : "RPD_VERIFICATION_UPDATE", + "timeStamp" : "2021-11-12T00:12:29+05:30", + "data" : { + "rpd" : { + "success" : true, + "id" : "7097e53a-ba29-48a2-983d-878433b4f33e", // the RPD request id + "upiBillId" : "907442106379798024", + "data" : { + "bankAccountName" : "Eve", + "bankAccountIfsc" : "SBIN0000001", + "bankAccountNumber" : "48097036412", + "payerVpa" : "test@upi", + "accountType" : "BANK_ACCOUNT", // or UNKNOWN or PPI + "bankAccountType" : "SAVINGS", // Optional, can be null + "ifscCrossCheck" : true, + "ifscDetails" : { + "address": "EXPRESS TOWERS,GROUND FLOOR,NARIMAN POINT,MUMBAI 400021", + "branch": "Development Bank of Singapore IMPS", + "center": "MUMBAI", + "city": "MUMBAI", + "contact": "+912266388888", + "district": "MUMBAI", + "imps": "true", + "iso3166": "IN-MH", + "micr": "400641002", + "name": "Development Bank of Singapore", + "neft": "true", + "rtgs": "true", + "state": "MAHARASHTRA", + "swift": "", + "upi": "true" + } + }, + "additionalData": { // if you have specified while creating RPD request + "key1" : "value1", + "key2" : "value2" + }, + "receiptId": "AXI75fc85a15ce6449491b79f8509c55a96", + "transactionId": "602185974626", + "addOnFields": { + "psp_app": "PayApp" + } + } + }, + "status": "BAV_REVERSE_PENNY_DROP_PAYMENT_SUCCESSFUL", + "traceId" : "7097e53a-baq9-4122-9d3d-8s8433b4f33e", + "productInstanceId": "abcdefgh-c1b5-4219-a64b-abcabc123456", +} + `} + + +
+
+ + + + Example 3 + +
@@ -502,7 +573,7 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ - Example 3 + Example 4 @@ -540,123 +611,6 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_
-##### 2. RPD_DEBIT_ATTEMPT_FAILED Webhook - -This webhook is sent when the end user tries to make a payments but the debit fails due to some reason. - - -
- statusCode of this event can be one of the following: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
statusCodestatusDescription
R01The customer's debit attempt failed.
R02Payment authorization took too long.
R03The customer's bank is taking too long to respond.
R04The debit process took too long.
R05Connection timed out during the credit request process.
R06The transaction exceeds the risk threshold.
R07The customer's bank is unavailable.
R08This transaction isn't permitted for the beneficiary.
R09Connection timed out during the debit request process.
R12Beneficiary bank response time is too high.
R13The total debit amount exceeded the set limit.
R14Transaction details mismatch.
R16 - The requested function is not supported for the beneficiary. -
R20 - Receiver/beneficiary is not available, causing a timeout. -
R22The debit acknowledgement was not received.
R25Duplicate transaction request.
R100Any other upstream server error.
-
-
- -###### Examples - - - Example 1 - - - -
- In case of customer's debit attempt failed -
- - {` -{ - "data": { - "rpd": { - "id": "178ce32b-bf43-4797-9423-027d3722df08", - "additionalData": null, // customer's own data if they provided - "statusCode": "R01", - "statusDescription": "The customer's debit attempt failed." - } - }, - "event": "RPD_DEBIT_ATTEMPT_FAILED", - "timeStamp": "2023-08-24T12:59:11.427233" -} - `} - -
-
-
#### Get Details API From f3c9cb14e5f9d8587edf34a218bf3755f5c2c5dd Mon Sep 17 00:00:00 2001 From: VarunSonava Date: Thu, 22 Jan 2026 12:36:02 +0530 Subject: [PATCH 2/2] add account type values, update upibillid alphanumeric --- .../reverse-penny-drop/api-integration.mdx | 33 +++++++++---------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/content/data/bav/reverse-penny-drop/api-integration.mdx b/content/data/bav/reverse-penny-drop/api-integration.mdx index 392f7440..0571fb75 100644 --- a/content/data/bav/reverse-penny-drop/api-integration.mdx +++ b/content/data/bav/reverse-penny-drop/api-integration.mdx @@ -140,14 +140,14 @@ If successful, you will get a JSON response. Two of the fields in the response w "shortUrl": "https://sandbox.bills.pe/wh9kk4mwuktg", "status": "BAV_REVERSE_PENNY_DROP_CREATED", "traceId": "1-640f227f-784ece1c005e4f9e653947ca", - "upiBillId": "1114053970646533628", - "upiLink": "upi://pay?pa=bauvatest@kaypay&pn=BauvaTest&am=1.00&tr=1114053970646533628&tn=Account%20Verification&cu=INR&mode=04", + "upiBillId": "a6577bb0ae4d9301cf47c1", + "upiLink": "upi://pay?pa=bauvatest@kaypay&pn=BauvaTest&am=1.00&tr=a6577bb0ae4d9301cf47c1&tn=Account%20Verification&cu=INR&mode=04", "validUpto": "2023-03-13T13:20:52.277688" } `} Note: This 'id' is your 'requestId'. Please use - this 'requestId' for rest the API reference. + this 'requestId' for rest of the API reference. ), @@ -265,9 +265,8 @@ This API lets you test the end to end flow without an actual payment. This will {`POST /api/verify/ban/reverse/mock_payment/:requestId { - "paymentStatus": "successful" // or 'expired'. Default = 'successful' -} - + "paymentStatus": "successful" // or 'expired' or 'failed' +} `}
@@ -404,7 +403,7 @@ _`accountType` can be `BANK_ACCOUNT`, `PPI` or `UNKNOWN`_
_`bankAccountType` is an optional data field, you may not receive the value always. (Please contact with Setu team to know more about this feature.)_ -_The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ +_The value can be `SAVINGS`, `CURRENT`, `VIRTUAL_ACCOUNT`, `OVERDRAFT`, `UOD`, `SOD`, `PPIWALLET` ###### Examples @@ -426,7 +425,7 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ "rpd" : { "success" : true, "id" : "7097e53a-ba29-48a2-983d-878433b4f33e", // the RPD request id - "upiBillId" : "907442106379798024", + "upiBillId" : "a6577bb0ae4d9301cf47c1", "data" : { "bankAccountName" : "Eve", "bankAccountIfsc" : "SBIN0000001", @@ -489,7 +488,7 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ "rpd" : { "success" : true, "id" : "7097e53a-ba29-48a2-983d-878433b4f33e", // the RPD request id - "upiBillId" : "907442106379798024", + "upiBillId" : "a6577bb0ae4d9301cf47c1", "data" : { "bankAccountName" : "Eve", "bankAccountIfsc" : "SBIN0000001", @@ -557,7 +556,7 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ "rpd" : { "success" : false, "id" : "7097e53a-ba29-48a2-983d-878433b4f33e", - "upiBillId" : "907442106379798024", + "upiBillId" : "a6577bb0ae4d9301cf47c1", "data" : null, "error" : { "code" : "BAV_REVERSE_PENNY_DROP_EXPIRED", // or BAV_REVERSE_PENNY_DROP_FAILED @@ -588,7 +587,7 @@ _The value can be `SAVINGS`, `CURRENT`, `NRO`, `NRE`_ "rpd": { "success": true, "id": "1af36b4e-681e-48a2-a15c-3b92da00e4c4", - "upiBillId": "1005100812449350916", + "upiBillId": "a6577bb0ae4d9301cf47c1", "data": null, "additionalData": { "key1": value1, @@ -682,9 +681,9 @@ This is an optional API. This API lets you know the bank verification status. "payerVpa": "customer@vpa" }, "id": "1b740e7a-5a81-4b88-ad43-110a08935286", - "shortUrl": "https://sandbox.bills.pe/wh9kk4mwuktg", - "upiBillId": "1114053970646533628", - "upiLink": "upi://pay?pa=bauvatest@kaypay&pn=BauvaTest&am=1.00&tr=1114053970646533628&tn=Account%20Verification&cu=INR&mode=04", + "shortUrl": "https://sandbox.bills.pe/a6577bb0ae4d9301cf47c1", + "upiBillId": "a6577bb0ae4d9301cf47c1", + "upiLink": "upi://pay?pa=bauvatest@kaypay&pn=BauvaTest&am=1.00&tr=a6577bb0ae4d9301cf47c1&tn=Account%20Verification&cu=INR&mode=04", "validUpto": "2023-03-13T13:20:52.277688" "traceId": "1-640f228a-4dded97e470971343adae3da", "additionalData": { @@ -720,9 +719,9 @@ This is an optional API. This API lets you know the bank verification status. "status": "BAV_REVERSE_PENNY_DROP_PII_PURGED", "data": null, "id": "1b740e7a-5a81-4b88-ad43-110a08935286", - "shortUrl": "https://sandbox.bills.pe/wh9kk4mwuktg", - "upiBillId": "1114053970646533628", - "upiLink": "upi://pay?pa=bauvatest@kaypay&pn=BauvaTest&am=1.00&tr=1114053970646533628&tn=Account%20Verification&cu=INR&mode=04", + "shortUrl": "https://sandbox.bills.pe/a6577bb0ae4d9301cf47c1", + "upiBillId": "a6577bb0ae4d9301cf47c1", + "upiLink": "upi://pay?pa=bauvatest@kaypay&pn=BauvaTest&am=1.00&tr=a6577bb0ae4d9301cf47c1&tn=Account%20Verification&cu=INR&mode=04", "validUpto": "2023-03-13T13:20:52.277688" "traceId": "1-640f228a-4dded97e470971343adae3da", "additionalData": {