在react-native中的callback_url成功响应后如何关闭razorpay Webview?

时间:2019-06-26 18:48:00

标签: react-native razorpay

我正在将React-native-razorpay集成到我的react-native应用程序中进行支付。我可以完成付款,并在RazorpayCheckOut的付款选项中提供callback_url,我什至可以调用我的后端服务器并更新付款操作,但是当server的callback_url向应用程序提供成功消息时,我无法可以阅读消息并关闭在我的本机应用程序中打开的razorpay Web视图。

有什么方法可以关闭razorpay的ebview并在收到callback_url成功消息后返回到应用程序吗?

1 个答案:

答案 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}`);
  });
}}>