Razorpay 支付会不断退还金额
Razor pay payment will refunding amount continuously
我正在开发电子商务应用程序。我使用 razor pay 作为支付网关。付款成功,但金额将自动退还。问题是什么?有些人建议使用自动捕获 API。怎么做?
这是我的代码..
final Activity activity = this;
final Checkout co = new Checkout();
try {
JSONObject options = new JSONObject();
options.put("name", "Fortune");
options.put("description", "");
options.put("currency", "INR");
options.put("amount", amount);
options.put("payment_capture", true);
co.open(activity, options);
} catch (Exception e) {
Toast.makeText(activity, "Error in payment: " + e.getMessage(), Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
您需要从后端获取金额。
第 1 步:- 付款成功后,您将收到一个 paymentId 作为 Razorpay 的回复
第 2 步:- 该 ID 以及您需要将其发送到 razorpay 的金额,然后金额将被捕获。
request({
method: 'POST',
url: 'https://<YOUR_KEY_ID<YOUR_KEY_SECRET>@api.razorpay.com/v1/payments/' + generatedRazorpayId +'/capture',
form: {
amount: amountPaid
}
}, function (error, response, body) {
console.log('Status:', response.statusCode);
console.log('Headers:', JSON.stringify(response.headers));
console.log('Response:', body);
});
如果您使用的是 firebase,则需要触发该功能。
我正在开发电子商务应用程序。我使用 razor pay 作为支付网关。付款成功,但金额将自动退还。问题是什么?有些人建议使用自动捕获 API。怎么做?
这是我的代码..
final Activity activity = this;
final Checkout co = new Checkout();
try {
JSONObject options = new JSONObject();
options.put("name", "Fortune");
options.put("description", "");
options.put("currency", "INR");
options.put("amount", amount);
options.put("payment_capture", true);
co.open(activity, options);
} catch (Exception e) {
Toast.makeText(activity, "Error in payment: " + e.getMessage(), Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
您需要从后端获取金额。
第 1 步:- 付款成功后,您将收到一个 paymentId 作为 Razorpay 的回复
第 2 步:- 该 ID 以及您需要将其发送到 razorpay 的金额,然后金额将被捕获。
request({
method: 'POST',
url: 'https://<YOUR_KEY_ID<YOUR_KEY_SECRET>@api.razorpay.com/v1/payments/' + generatedRazorpayId +'/capture',
form: {
amount: amountPaid
}
}, function (error, response, body) {
console.log('Status:', response.statusCode);
console.log('Headers:', JSON.stringify(response.headers));
console.log('Response:', body);
});
如果您使用的是 firebase,则需要触发该功能。