根据 Razor 支付文档,您使用卡/钱包支付成功后,您需要验证支付。
[https://razorpay.com/docs/payment-gateway/quick-integration/][1]
“这是一个强制性步骤,允许您确认返回到结帐表单的详细信息的真实性,以便成功付款。”
以下python代码已作为示例提供:
import razorpay
client = razorpay.Client(auth = ('<key_id>', '<key_secret>'))
params_dict = {
'razorpay_order_id': '12122',
'razorpay_payment_id': '332',
'razorpay_signature': '23233'
}
client.utility.verify_payment_signature(params_dict)
但我没有看到客户端对象没有名称为:实用程序的成员。 我找不到任何好的工作样本。 请提供有关此步骤的一些帮助。 提前致谢!
答案 0 :(得分:0)
这就是我如何实例化实用程序类的方法。
如果转到VSCode(F12)中razorpay.Client的定义,可以看到它导入了实用程序类。
现在,如果您转到实用程序类的定义,您可以看到它是如何启动的。
基于此,我想出了以下代码。请注意 verify_payment_signature() 不返回任何值。但如果有任何问题,它会作为一个例外。 (例如:从输入中删除一个参数并再次执行)。
# Install from VSCode command line : >python -m pip install razorpay
import razorpay
# this is your account credentials got from the dash board
client = razorpay.Client(auth = ('rzp_test_xxx', 'yyy'))
# These values are got from Razor pay paymentUI response
params_dict = {
'razorpay_order_id': 'order_xxx',
'razorpay_payment_id': 'pay_yyy',
'razorpay_signature': 'zzzzz'
}
try:
util = razorpay.Utility(client)
util.verify_payment_signature(params_dict)
except Exception as e:
print("Unexpected error:", e)