条纹 - 检查客户是否存在

时间:2014-12-21 09:45:17

标签: ruby-on-rails ruby stripe-payments

在条带文档中,他们有:

customer = Stripe::Customer.create(email: params[:stripeEmail], card: params[:stripeToken])
charge = Stripe::Charge.create(customer: customer.id, amount: price, description: '123', currency: 'usd')

但是我认为每次付款都是错误的,我们必须先检查一下客户是否存在,我只是尝试使用测试帐户,结果发现有一些不同的客户使用相同的电子邮件但不同的ids。

如何检查客户是否已存在?

2 个答案:

答案 0 :(得分:8)

没有检查Stripe的结尾以确保客户的独特性(电子邮件,卡片,名称等),这是您必须要做的事情。

通常,当您使用特定电子邮件地址创建客户时,您需要将从API返回的客户ID与电子邮件地址相关联。然后,下次检查此电子邮件地址是否已在您的系统中,并创建新客户或重新使用上一次的客户ID。

答案 1 :(得分:3)

您可以通过将电子邮件作为 form-urlencoded 参数来调用GET /customers来检查客户是否存在。您将收到200 OK响应,但如果此客户电子邮件不在,则返回的data []将为空。

https://stripe.com/docs/api/customers/list