条纹与3D Secure的集成

时间:2018-06-05 10:24:13

标签: express stripe-payments stripe.js

我有一个Express应用程序,我已成功通过支付令牌化测试。由于我在英国并且主要接受英国卡,我相信我需要实施3D安全处理。我真的很难理解官方文档 - 我认为这些例子很少见。来自以下:https://stripe.com/docs/sources/three-d-secure

我使用令牌来源而不是使用令牌付款。这是步骤1.步骤2要求我确定该卡是否支持3D Secure。我一直在做这个客户端,但我不知道如何处理这个 - 我一直在尝试向用户发送卡支付,如果不需要3D Secure。但如果需要,我是否需要创建另一个来源?我是做这个服务器还是客户端?我也无法让return_url字段做任何事情 - 3D安全卡只会失败。

有没有可以帮助我的例子?我发现官方文档只是简单地告诉你如何做什么并没有太多的方式'如何'做事。

我应该添加我使用v3与Elements,而不是Checkout。

感谢您的帮助。

编辑:以下服务器端似乎没有做任何事情:

stripe.sources.create({
amount: 6500,
currency: 'gbp',
type: "three_d_secure",
three_d_secure: {
  card: stripeSource,
},
redirect: {
  return_url: "http://example.com"
}
  })

文档说明"要允许您的客户使用3D Secure验证其身份,请将其重定向到Source对象的redirect [url]属性中提供的URL。"

我的源对象不包含此字段?

编辑:这就是我现在拥有的。重定向有效,但只要我授权付款,卡就会拒绝:

stripe.customers.create({
  email: cust_email,
  source: stripeSource
  }).then(function(customer){
  return stripe.charges.create({
    amount: fee,
    description: "Client Ref: " + clientref,
    currency: "gbp",
    customer: customer.id,
    metadata: {
      'allocation:': allocate
    },
    receipt_email: cust_email,
    source: request.query.source,
  })
}
  ).catch(err => {
    console.log(err)
  })

  stripe.sources.create({
    amount: fee,
    currency: 'gbp',
    type: "three_d_secure",
    three_d_secure: {
      card: stripeSource,
   },
redirect: {
  return_url: "http://localhost:8000/charge"
}
 }).then(function(test) {
    response.redirect(test.redirect.url)
 })

0 个答案:

没有答案