【问题标题】:How do I add payment details in Setup intent Method - Stripe Python如何在设置意图方法中添加付款详细信息 - Stripe Python
【发布时间】:2021-07-29 18:48:55
【问题描述】:

您好,我想在 SetupIntent.create 方法中添加付款详细信息。

我会使用类似这样的 API 来做到这一点:

import requests

url = "https://api.stripe.com/v1/setup_intents"
params = {
    "key": "sk_live_xxxxx",
    "payment_method_data[type]": "card",
    "confirm": True,
    "customer": "cu_xxxx",
    "payment_method_data[card][number]": "cc number",
    "payment_method_data[card][exp_month]": "exp_mnth",
    "payment_method_data[card][exp_year]": "exp_year",
    "payment_method_data[card][cvc]": "xxx"
}
response = requests.post(url, params=params).text
print(response)

但是如何用 Python Stripe Lib 做到这一点?

我试过这个代码:

import stripe

stripe.api_key = "sk_live_xxxxx"

r = stripe.PaymentIntent.create(
                              payment_method_types=["card"],
                              customer="cu_xxx",
                              confirm=True
    )

print(r)

但是,我将如何在其中添加付款详细信息?

我查看了文档及其示例,但它仅包含添加付款方式类型的示例,而不是诸如 cc 编号、cvc、到期月份和年份之类的付款详细信息。

我想添加客户并附上付款方式并向他收费。谁能帮帮我?

谢谢!

【问题讨论】:

    标签: python stripe-payments payment


    【解决方案1】:

    使用SetupIntent 时,您将保存客户付款凭据以供日后收费,通常是在会话外。创建(或确认)SetupIntent 时需要PaymentMethod 对象 ID。

    建议您在前端应用程序中使用 Stripe.js 进行capture customer payment details,并在创建(或确认)SetupIntent 时传递生成的 PaymentMethod 对象 ID (pm_xxx)。然后,Stripe.js 可以处理生成的 PaymentMethod 所需的任何操作,例如 3DS 身份验证。

    有一个完整的 SetupIntent 集成示例 here,它使用 Python 客户端库和 Stripe.js

    【讨论】:

    • 感谢您的回答!起初,我不 js。我之前尝试过这种方法,但是当我尝试向客户收费时,它说:“未找到付款方式”。也请举一些例子?
    • @Jainam 您可以在创建 SetupIntent 时传递可选的 card dictionary。 强烈建议不要使用此方法,因为您放弃了 Stripe 提供的任何 PCI 合规性。相反,您应该使用 Stripe.js 来收集付款详细信息。关注link I shared,获取 Python 和 Stripe.js 的完整集成示例。
    猜你喜欢
    • 2019-04-22
    • 1970-01-01
    • 1970-01-01
    • 2015-07-22
    • 2015-04-24
    • 2018-04-05
    • 2021-12-31
    • 2018-10-09
    • 2021-07-12
    相关资源
    最近更新 更多