React Native PhonePe SDK自定义UPI Open Intent始终返回FAILURE错误排查
React-Native PhonePe SDK 自定义UPI Open Intent流程报错问题
问题现象
- 集成React-Native PhonePe SDK时,采用自定义UPI Open Intent流程,传入base64编码的请求体和SHA256校验值后,始终返回错误:
{"error": "Transaction Interrupted!", "status": "FAILURE"} - 切换为标准结账流程(用户手动输入UPI ID发起支付)时,所有功能正常
- 使用相同测试凭证,直接调用自定义UPI Intent接口能正常获取重定向URL,但通过SDK调用则报错
代码片段(app.js)
import PhonePePaymentSDK from 'react-native-phonepe-pg'; PhonePePaymentSDK.init( "UAT", "PGTESTPAYUAT", "F4:1E:2F:64:BA:E6:19:1A:A7:C2:29:6D:5F:5D:2F:0A:29:E8:6E:5B", true ).then(result => { console.log("sdk intitialisation successfull", result); }).catch(error => { setMessage("error:" + error.message); }) PhonePePaymentSDK.startPGTransaction( "ewogICJtZXJjaGFudElkIjogIlBHVEVTVFBBWVVBVCIsCiAgIm1lcmNoYW50VHJhbnNhY3Rpb25JZCI6ICJ0cmFuc2FjdGlvbl8xMjMiLAogICJtZXJjaGFudFVzZXJJZCI6ICI5MDIyMzI1MCIsCiAgImFtb3VudCI6IDEwMDAsCiAgIm1vYmlsZU51bWJlciI6ICI5OTk5OTk5OTk5IiwKICAiY2FsbGJhY2tVcmwiOiAiaHR0cHM6Ly93ZWJob29rLnNpdGUvY2FsbGJhY2stdXJsIiwKICAicGF5bWVudEluc3RydW1lbnQiOiB7CiAgICAidHlwZSI6ICJVUElfSU5URU5UIiwKICAgICJ0YXJnZXRBcHAiOiAiY29tLnBob25lcGUuYXBwIgogIH0sCiAgImRldmljZUNvbnRleHQiOiB7CiAgICAiZGV2aWNlT1MiOiAiQU5EUk9JRCIKICB9Cn0=", // base64请求体 "2b5b25e756441323391dd1612810c59f021463bb0082cdf5fe18c9a6f1a5dc21###1", // SHA256校验值 "/pg/v1/pay", { 'Content-Type': 'application/json' }, "com.phonepe.app", "https://webhook.site/callback-url" ).then(a => { console.log("tracsaction res", a); }).catch(error => { console.log("trsaction api error", error); })
请求体示例(解码后)
{ "merchantId": "PGTESTPAYUAT", "merchantTransactionId": "transaction_123", "merchantUserId": "90223250", "amount": 1000, "mobileNumber": "9999999999", "callbackUrl": "https://webhook.site/callback-url", "paymentInstrument": { "type": "UPI_INTENT", "targetApp": "com.phonepe.app" }, "deviceContext": { "deviceOS": "ANDROID" } }
测试环境说明
使用官方UAT测试凭证(商户ID:PGTESTPAYUAT等)进行测试
内容的提问来源于stack exchange,提问作者Nishanth
相关产品推荐
相关产品推荐

