我无法验证付款签名。
这就是razorpay提供的代码。
$attributes = array('razorpay_signature' => $razorpay_signature, 'razorpay_payment_id' => $razorpay_payment_id , 'razorpay_order_id' => $razorpay_order_id);
$signatureVerified = $api->utility->verifyPaymentSignature($attributes);
当我检查的时候。
if($signatureVerified) {
echo 'signature verified';
} else {
echo "signature didn't verify";
}
我得到的只是,签名没有验证。
附言:我有付款签名,订单
实际上,您不需要为验证付款分配变量
您需要将其放入try catch块以执行验证
如下所示。
try{
$attributes = array(
'razorpay_order_id' => $request->razorpay_order_id,
'razorpay_payment_id' => $request->razorpay_payment_id,
'razorpay_signature' => $request->razorpay_signature
);
$api->utility->verifyPaymentSignature($attributes);
}
catch(SignatureVerificationError $e){
$response = 'failure' ;
$error = 'Razorpay Error : ' . $e->getMessage();
}
return response('success');
因此,如果失败,它将进入catch block,否则它将返回成功
函数不返回任何内容,只是在签名不匹配时抛出异常。这似乎让很多人感到困惑,所以有一个PR来增加回报值:链接。将包含在下一版本中。
我已经添加了razorpay测试版本和支付流程工程,但当我试图验证时,我得到以下错误 通知:未定义的索引:razorpay_order_id在C:\用户\阿明\文档\NetBeansProjects\OLX\付款\verify.php行24您的付款失败 Razorpay错误:传递的签名无效 我在这里遵循了代码结构形式https://github.com/razorpay/razorpay-php-
我在Android应用程序中使用Razorpay进行支付。 目前,支付工作正常。 现在我需要使用Razorpay实现经常性支付(自动续订/订阅)。 我找不到任何干净的文件。请随时为我更新有价值的信息。
因为node-forge(一个非常方便的加密工具)还不支持“ECDSA with SHA256”(链接),我找不到其他替代品。我转向OpenSSL。经过一些调查,签名似乎是以“CMS签名数据”格式打包的。所以我发现openssl手册中的这个命令应该可以完成以下任务: openssl cms-verify-informed DER-in signature.DER-content content.t
我计划将Razorpay支付网关集成到我的客户网站中,该网站已在WordPress中开发,其中的场景如下。 用户将填写他的需求查询表。 然后根据客户的要求,业主将回复成本和一些代码给客户(通过移动/电子邮件通信)。 客户将在网站的支付页面提交表单(姓名,金额,代码为备注和电子邮件ID),该表单将重定向到支付网关页面。 在WordPress网站上,该插件(Razorpay Quick Payment
链接是:https://developer.paypal.com/webapps/developer/docs/integration/mobile/verify-mobile-payment/#look-up-a-payment-using-the-rest-api 谢谢你的建议
我们使用Paypal Express作为结账,使用Omnipay php库。现在买家输入密码并同意在paypal站点上付款后,他会被返回到首页的成功页面。 我现在想知道,我如何才能验证支付真的是成功的?手动调用成功页面并不是很难实现虚假的成功支付... 我得到一个付款ID和一个标记在后面-重定向。 多谢帮忙。