在 Django RazorPay 支付网关中获取客户信息
Getting customer information in Django RazorPay payment gateway
我刚刚在我的 django 项目中集成了 Razorpay 支付网关,我是这个支付网关的新手。当我启动付款时,razorpay 会向我展示一个 付款界面(像这张图片) 并且有写 [= 的选项21=]客户联系人和电子邮件。这是我的问题,当 customer 单击继续按钮时,我如何才能取回这两个字段 contact 和 email。
这是我的代码:
模板文件
<h2>Product Checkout</h2>
<p>Product: {{ order_obj.product.name }}</p>
<p>Total: {{ order_obj.total }}</p>
<form method="POST"> {% csrf_token %}
<script src="https://checkout.razorpay.com/v1/checkout.js"
data-key="rxxxxxxxxxxxxitP7h"
data-amount= {{order_amount }}
data-currency={{order_currency}}
data-buttontext="Pay with Razorpay"
data-name="xxxxxInc"
data-description="We are listning"
data-image="https://www.bihhs.in/wp-content/uploads/2020/05/jj-logo.png"
data-prefill.name="company name"
data-prefill.email="abc@gmail.com"
data-theme.color="#F37254">
</script><input type="hidden" custom="Hidden Element" name="hidden">
</form>
Views.py 文件
client = razorpay.Client(auth=("rzxxxxxxxaitP7h", "dZH5xxxxxxxxFmzG"))
payment = client.order.create(dict(amount=order_amount, currency=order_currency))
if payment:
order_obj.mark_paid()
print(payment)
print(payment.get('email'))
您应该在响应 json 中得到一个 id
。根据此处的文档 RazorpayAPI Reference,然后您可以使用该 ID 获取订单的详细信息。然后您使用该订单 ID 创建付款,付款完成后您将获得一个付款 ID。有一些方法可以使用 Payment ID
获取付款,如果用户已填写,则应该包含这些详细信息。
为了您的参考,这些是 python Razorpay 的方法指南:
Payment Reference Python Razorpay
这是更改的伪代码:
client = razorpay.Client(auth=("rzxxxxxxxaitP7h", "dZH5xxxxxxxxFmzG"))
order_details = client.order.create(dict(amount=order_amount, currency=order_currency))
if payment:
order_obj.mark_paid()
payment_id= client.order.payments(str(order_details["id"]))
payment_details= client.payment.fetch(str(payment_id)
payment_email= payment_details["email"]
print (payment)
print(payment_details)
我刚刚在我的 django 项目中集成了 Razorpay 支付网关,我是这个支付网关的新手。当我启动付款时,razorpay 会向我展示一个 付款界面(像这张图片) 并且有写 [= 的选项21=]客户联系人和电子邮件。这是我的问题,当 customer 单击继续按钮时,我如何才能取回这两个字段 contact 和 email。
这是我的代码: 模板文件
<h2>Product Checkout</h2>
<p>Product: {{ order_obj.product.name }}</p>
<p>Total: {{ order_obj.total }}</p>
<form method="POST"> {% csrf_token %}
<script src="https://checkout.razorpay.com/v1/checkout.js"
data-key="rxxxxxxxxxxxxitP7h"
data-amount= {{order_amount }}
data-currency={{order_currency}}
data-buttontext="Pay with Razorpay"
data-name="xxxxxInc"
data-description="We are listning"
data-image="https://www.bihhs.in/wp-content/uploads/2020/05/jj-logo.png"
data-prefill.name="company name"
data-prefill.email="abc@gmail.com"
data-theme.color="#F37254">
</script><input type="hidden" custom="Hidden Element" name="hidden">
</form>
Views.py 文件
client = razorpay.Client(auth=("rzxxxxxxxaitP7h", "dZH5xxxxxxxxFmzG"))
payment = client.order.create(dict(amount=order_amount, currency=order_currency))
if payment:
order_obj.mark_paid()
print(payment)
print(payment.get('email'))
您应该在响应 json 中得到一个 id
。根据此处的文档 RazorpayAPI Reference,然后您可以使用该 ID 获取订单的详细信息。然后您使用该订单 ID 创建付款,付款完成后您将获得一个付款 ID。有一些方法可以使用 Payment ID
获取付款,如果用户已填写,则应该包含这些详细信息。
为了您的参考,这些是 python Razorpay 的方法指南: Payment Reference Python Razorpay
这是更改的伪代码:
client = razorpay.Client(auth=("rzxxxxxxxaitP7h", "dZH5xxxxxxxxFmzG"))
order_details = client.order.create(dict(amount=order_amount, currency=order_currency))
if payment:
order_obj.mark_paid()
payment_id= client.order.payments(str(order_details["id"]))
payment_details= client.payment.fetch(str(payment_id)
payment_email= payment_details["email"]
print (payment)
print(payment_details)