Stripe payments 条带-处理来自同一IP的多笔付款

Stripe payments 条带-处理来自同一IP的多笔付款,stripe-payments,stripe-connect,stripe.js,Stripe Payments,Stripe Connect,Stripe.js,我们有一个简单的表单,允许我们的客户为我们的服务付款。我们使用的是“StripeCheckout”JS库,一切正常 我们的一些客户向我们提供信用卡信息,希望我们代表他们付款。这显然是一个安全问题,但我们的客户信任我们:)这是条带上的一个问题,因为它不允许从同一IP进行多次支付(这是可以理解的) 想知道stripe是否提供了不同的API,以便能够使用相同的IP实现这一点(即处理来自我们运营中心的多个客户付款)?如果您已经有卡号(或者客户愿意将卡号提供给您)然后,您可以使用API在条带中创建一个卡对

我们有一个简单的表单,允许我们的客户为我们的服务付款。我们使用的是“StripeCheckout”JS库,一切正常

我们的一些客户向我们提供信用卡信息,希望我们代表他们付款。这显然是一个安全问题,但我们的客户信任我们:)这是条带上的一个问题,因为它不允许从同一IP进行多次支付(这是可以理解的)


想知道stripe是否提供了不同的API,以便能够使用相同的IP实现这一点(即处理来自我们运营中心的多个客户付款)?

如果您已经有卡号(或者客户愿意将卡号提供给您)然后,您可以使用API在条带中创建一个卡对象,一旦您有了支付源(可以是您创建的卡),您就可以使用它创建一个收费对象

我不认为IP地址真的会进入它,除了可能执行的任何速率限制条带-但这可能是对API密钥的限制,而不仅仅是源IP


当你碰触时,有卡的细节有很多可能的风险-即使你的客户确实信任你-我鼓励你考虑通过他们的API从客户端创建卡对象,并且如果可能的话,只将卡ID和令牌传递给后端。这样,您就可以减少存储的原始卡号,甚至系统内部的原始卡号带来的风险。可能很少有公司能够比Stripe做得更好,因此也可以通过依赖Stripe来存储和处理卡的详细信息来利用它们的安全性

使用条带幂等请求解决此问题的最佳解决方案。我们在处理付款时遇到了类似的问题。多次处理用户付款

幂等键确保每个幂等键只处理一次成功的支付,就可以进行多次失败的尝试。看

而且在

让我们考虑一个例子,您想用唯一的OrjyId处理订单付款,所以很明显,您需要一个成功的订单支付。因此,您可以在创建电荷时传递幂等键。您不需要保存用户的卡详细信息,只有使用stripe.js创建的一次性令牌才能工作

require "stripe"
Stripe.api_key = "sk_test_BQokikJOvBiI2HlWgH4olfQ2"

Stripe::Charge.create({
  :amount => 2000,
  :currency => "usd",
  :source => "tok_visa", # obtained with Stripe.js
  :description => "Charge for joseph.davis@example.com"
}, {
  :idempotency_key => "FVnElesDto9UXlOr"
})
每个电荷对象的幂等键应是唯一的


谢谢你,大卫。目前,我正在按照您建议的方式进行操作,即创建卡,然后将令牌传递给服务器端脚本进行处理。卡片详细信息输入到条纹屏幕中,因此我们不维护任何敏感信息。