我正在将React-native-razorpay集成到我的react-native应用程序中进行支付。我可以完成付款,并在RazorpayCheckOut的付款选项中提供callback_url,我什至可以调用我的后端服务器并更新付款操作,但是当server的callback_url向应用程序提供成功消息时,我无法可以阅读消息并关闭在我的本机应用程序中打开的razorpay Web视图。
有什么方法可以关闭razorpay的ebview并在收到callback_url成功消息后返回到应用程序吗?
答案 0 :(得分:0)
根据此处列出的示例代码https://github.com/razorpay/react-native-razorpay
RazorPay返回data.razorpay_payment_id
作为响应。
您可以使用该payment_id从后端获取付款状态
我在后端API中使用了ruby gem来获取付款状态
Razorpay::Payment.fetch("payment_id")
https://razorpay.com/docs/server-integration/ruby/
<TouchableHighlight onPress={() => {
var options = {
description: 'Credits towards consultation',
image: 'https://i.imgur.com/3g7nmJC.png',
currency: 'INR',
key: 'rzp_test_1DP5mmOlF5G5ag',
amount: '5000',
name: 'foo',
prefill: {
email: 'void@razorpay.com',
contact: '9191919191',
name: 'Razorpay Software'
},
theme: {color: '#F37254'}
}
RazorpayCheckout.open(options).then((data) => {
// handle success
alert(`Success: ${data.razorpay_payment_id}`);
}).catch((error) => {
// handle failure
alert(`Error: ${error.code} | ${error.description}`);
});
}}>