首页 > 解决方案 > 如何在firebase上为razorpay创建order_id?我正在将 react-native 与 firebase 一起用于移动应用程序

问题描述

我尝试将用户的 uuid 提供为 order_id,但后来我读到它每次都应该不同。所以,我试图从我的前端提供一个随机生成的 uuid 作为 order_id,但它只在第一次重定向到付款页面之后,它抛出了一个错误:“id 不存在”如果有人可以帮忙,先感谢您!

这是razorpay提供的参考文件:https ://razorpay.com/docs/payment-gateway/react-native-integration/standard/android/

但是,如果根据本机反应来解释创建 order_id 会有所帮助。

标签: firebasereact-nativegoogle-cloud-firestorerazorpay

解决方案


不要将 UUID 用作订单 ID,因为它不能帮助您必须从 Razorpay API 生成订单。作为响应,它将向您发送服务器生成的订单 ID

https://razorpay.com/docs/api/orders/#create-an-order

fetch("https://api.razorpay.com/v1/orders", {
  method: "POST",
  headers: {
    Accept: "application/json",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    amount: 50000,
    currency: "INR",
  }),
})
  .then((response) => response.json())
  .then((order) => console.log(order));

作为回应,创建的订单看起来像

{
  "id": "order_EKwxwAgItmmXdp",
  "entity": "order",
  "amount": 50000,
  "amount_paid": 0,
  "amount_due": 50000,
  "currency": "INR",
  "offer_id": null,
  "status": "created",
  "attempts": 0,
  "notes": [],
  "created_at": 1582628071
}

推荐阅读