如何在条带中保存卡片详细信息(javascript)
正如你们看到我的问题时,我感到困惑,因为每次我得到一些不同的东西时,我都会看到许多用于保存卡片的文章和条带文档解决方案。我的应用程序流程类似于第一个用户,他将获得两个选项如何在条带中保存卡片详细信息(javascript),javascript,firebase,react-native,stripe-payments,Javascript,Firebase,React Native,Stripe Payments,正如你们看到我的问题时,我感到困惑,因为每次我得到一些不同的东西时,我都会看到许多用于保存卡片的文章和条带文档解决方案。我的应用程序流程类似于第一个用户,他将获得两个选项 以前保存的卡 输入新卡 输入新卡 在此过程中,我从客户处获取卡的详细信息,然后生成令牌并发送该令牌和将从db获取的customerId(如果是老客户),这意味着客户已经生成,在后端我首先创建客户(如果没有找到customerId)使用添加付款信息后获得的条带令牌,然后使用customerId向客户收费 stripe.charg
stripe.charges.create({
amount:amount,
description: '',
currency: 'usd',
customer: customerid
})
现在我的问题开始了
我无法使用添加付款详细信息后获得的代币,因为该代币仅用于一次,我无法直接使用customerId向客户收费,那么我将来如何向客户收费,以及如何获取保存的付款方式列表并删除或更新它们。当您从Stripe收到代币时,然后,应在后续调用中使用该令牌创建具有该令牌的客户。您可以使用
条带.customers.create
调用来执行此操作。然后将该令牌转换为可重复使用的源。见:
下次检索该客户时,您会注意到该源仍然存在于customer对象中。见:
创建另一笔费用时,请使用customer对象中的新source_id,而不是source参数。如果您不提供,它将使用该客户的默认设置
如果需要向客户添加其他卡,请使用卡创建API。这将允许您为客户创建、更新和删除卡。请参阅:当您从Stripe收到令牌时,该令牌应在随后的调用中使用,以使用该令牌创建客户。您可以使用
条带.customers.create
调用来执行此操作。然后将该令牌转换为可重复使用的源。见:
下次检索该客户时,您会注意到该源仍然存在于customer对象中。见:
创建另一笔费用时,请使用customer对象中的新source_id,而不是source参数。如果您不提供,它将使用该客户的默认设置
如果需要向客户添加其他卡,请使用卡创建API。这将允许您为客户创建、更新和删除卡。请参阅:首先,当您的客户在前端添加卡时,您可以将其保存为一种付款方式,并在以后使用 前端:
const result=wait stripe.createPaymentMethod({
键入:“卡”,
卡片:cardElement,
账单详情:{
//客户的一些详细信息,如电子邮件、姓名等
},
});
您必须将result.paymentMethod.id
发送到后端,并使用该paymentMethod
创建条带客户
stripe.customers.create({
电邮地址:,
发票设置:{
默认付款方式:paymentMethodId,
},
付款方式:paymentMethodId,
});
//paymentMethodId是从前端传递的付款方法id
您可以查看以下文档:
注意:您只能在数据库中保存客户id,stripe将处理所有其他id。您不必尝试在数据库中保存某些内容以备日后使用。首先,当您的客户在前端添加卡时,您可以将其保存为付款方式并在以后使用 前端:
const result=wait stripe.createPaymentMethod({
键入:“卡”,
卡片:cardElement,
账单详情:{
//客户的一些详细信息,如电子邮件、姓名等
},
});
您必须将result.paymentMethod.id
发送到后端,并使用该paymentMethod
创建条带客户
stripe.customers.create({
电邮地址:,
发票设置:{
默认付款方式:paymentMethodId,
},
付款方式:paymentMethodId,
});
//paymentMethodId是从前端传递的付款方法id
您可以查看以下文档:
注意:您只能在数据库中保存客户id,stripe将处理所有其他id。您不必尝试在数据库中保存某些内容以供以后使用。条带支持很少的存储卡详细信息的选项。您可以在首次付款后存储paymentMethod或存储卡详细信息,然后再付款 在付款前存储卡详细信息:
CustomerCreateParams params=CustomerCreateParams.builder()
.setName(“客户名称”)
.setEmail(“customer@email")
.build();
Customer=Customer.create(参数)代码>条带支持少量存储卡详细信息的选项。您可以在首次付款后存储paymentMethod或存储卡详细信息,然后再付款
在付款前存储卡详细信息:
混凝土剥离器
CustomerCreateParams params=CustomerCreateParams.builder()
.setName(“客户名称”)
.setEmail(“customer@email")
.build();
Customer=Customer.create(参数)
这意味着当我在添加付款后获得代币并使用该代币创建客户时,它将成为默认付款方式,下次我再次添加新卡时,它将更新客户并添加新的默认付款方式,如果我检索客户对象,我将获得默认付款方式。我不知道下次如何使用它向客户收费。例如:-stripe.charges.create({金额:2000,货币:美元,苏