Magento 2 剃刀支付插件版本 - 3.7.5 "Razorpay Error: Razorpay Error: Razorpay paymentId missing for payment v



我正在使用Magento 2 api创建订单。当使用COD时,它工作正常,但在Razorpay的情况下,它会出现错误:

Razorpay错误:RazorpayError:支付缺少Razorpay paymentId验证。。。

Magento 2 razorpay插件版本已使用-3.7.5

我也面临类似的问题,并在插件中找到了根本原因。分享我在Razorpay插件文件中所做的更改。

Magento 2 API我得到的问题

POST:'/guest carts/'$cart_id。'/订单;

解决方案需要传递additional_data参数。以下参数,我传递给API

'additional_data' => array(
"razorpay_payment_id"=> $paymethodDetails['razorpay_payment_id'],
"rzp_payment_id"=> $paymethodDetails['razorpay_payment_id'],
"razorpay_signature"=> $paymethodDetails['razorpay_signature'],
"rzp_signature"=> $paymethodDetails['razorpay_signature'],
"razorpay_order_id"=> $paymethodDetails['razorpay_order_id'],
"rzp_order_id"=> $paymethodDetails['razorpay_order_id'],
"rzp_order_amount"=> $paymethodDetails['rzp_order_amount']),

你会发现一些不同键的数据重复。

在这之后,我从插件文件中得到了以下错误

未定义的变量:/app/code/Razorpay/Magento/Model/PaymentMethod.php中的rzp_order_id,位于第371行

我在文件PaymentMethod.php的第371行中进行了以下更改

//Original 
$rzp_order_id = $rzp_order_id; 
//Updated
$rzp_order_id = $request['paymentMethod']['additional_data']['rzp_order_id']

帖子说我在375 线上收到了另一个错误

未定义的变量:第375行上/app/code/Razorpay/Magento/Model/PaymentMethod.php中的rzpOrderAmount

将其更改为

//Updated
$rzpOrderAmount = $request['paymentMethod']['additional_data']['rzp_order_amount'];

经过这些更改,我能够成功下订单

最新更新