You hit the Process Transaction API as a JSON request (S2S) from the client or backend server and then Paytm processes the transaction. In response, a polling screen is shown to the user with a session expiry timer and a message that the UPI collect request has been sent to the user on the registered VPA. The user also receives a push notification on the UPI app and/or SMS on their mobile number registered with UPI app, inferring that a UPI Collect request has been sent to them. Please refer to the sample request/response below:
Request
curl -X POST 'https://securestage.paytmpayments.com/theia/api/v1/processTransaction?mid=INTEGR7769XXXXXX9383&orderId=ORDERID_98765' \
--header 'Content-Type: application/json' \
--data '{"head":{"txnToken":"f0bed899539742309eebd8XXXX7edcf61588842333227"},"body":{"requestType":"NATIVE","mid":"INTEGR7769XXXXXX9383","orderId":"ORDERID_98765","paymentMode":"UPI","payerAccount":"7777777777@paytm"}}'
Response
{
"head": {
"responseTimestamp": "1595910861048",
"version": "v1"
},
"body": {
"resultInfo": {
"resultStatus": "S",
"resultCode": "0000",
"resultMsg": "Success"
},
"bankForm": {
"pageType": "redirect",
"isForceResendOtp": false,
"redirectForm": {
"actionUrl": "https://securestage.paytmpayments.com/theia/api/v1/upiPollPage?mid=INTEGR7769XXXXXX9383&orderId=ORDERID_98765",
"method": "POST",
"type": "redirect",
"headers": {
"Content-Type": "application/x-www-form-urlencoded"
},
"content": {
"MERCHANT_VPA": "tlalit5-testintegration@paym",
"CHANNEL": "PGPTM",
"externalSrNo": "90200728000284938800",
"MCC": "5641",
"payerVpa": "7777777777@paytm",
"txnAmount": "1",
"txnToken": "f0bed899539742309eebd8XXXX7edcf61588842333227"
}
}
}
}
}
Note: Merchant can also make its own polling screen. Please contact us for more details.