完成交易后,是否可以存储客户的信用卡信息?

时间:2017-04-09 14:41:25

标签: paypal stripe-payments payment payment-processing stripe.net

我想实现一个非常用户友好的结帐渠道。首先,我将从2个观点解释问题: - 我看待它们的方式。

假设我在电子商务应用中用户,我希望购买流程如下: 1. Choose some products2. enter shipping and billing3. pay securely with no fuss,也许 - 我想创建一个有这项业务的帐户,但只是可能。我还没有完全信任他们。

如果我决定创建一个帐户 - 我想选择来选择将哪些信息保存到此用户帐户中 - 通过发货和结算我通常都可以,并且保存信用卡信息非常有用 - 但两者都需要优先选择。也许我只是需要这个帐户来跟踪我的订单及其相关信息。我不想在任何地方保存我的任何细节..

一般情况下,我不会觉得有人拿着我的信用卡特别舒服 - 即使它没有存储在他们的服务器上,即使它非常安全,非常符合pci标准,非常非常......(像条纹一样)。 我想明确选择此处保存的个人数据。通过选中框或类似物。

与此相反,

我讨厌购买东西时需要做的第一件事 - 是用电子邮件和密码或社交平台注册。我不想让Facebook或谷歌知道我在哪里唱歌以及我买什么东西。我只是想买点东西然后用它来结束。不一定要在这家公司创建用户帐户。现在,我将通过电子邮件跟踪订单。

另外,作为用户,如果我之前创建了一个帐户,并且我现在已经登录,我希望我的当前订单和信用卡信息(如果我)已经自动完成了运费和结算明细决定先保存此信息)

好的,现在作为开发人员,我想通过实施以下结帐渠道来解决这些问题。结帐开始时 - 我有2个可能的分支:

登录用户

案例1

  1. 送货详情 - 自动填充

  2. 结算明细 - 自动填充

  3. 付款

    以前使用和保存的信用卡列表或 - 选择新卡。含义有两个选项:

    pay with Paypal - redirect to Paypal page
    
    pay with Stripe - Default Stripe Modal
    
  4. 确认 - 谢谢你的消息后,我问:你想保存这张信用卡吗?
  5. 案例2: 用户未登录,没有帐户 - 或者不想登录:

    1. 消息:如果您已有帐户,请登录.. - 如果没有,请转到CASE1:

    2. 送货详情 - 手动输入

    3. 结算明细 - 默认情况下自动填充 - 但如果与发货明细不同,则手动输入。

    4. 付款 - 两个选项:

      pay with Paypal - redirect to Paypal page
      
      pay with Stripe - Default Stripe Modal
      
    5. 确认 -

      谢谢你的消息,然后:

      您想与我们建立一个帐户吗?

      如果是,请在此处提供电子邮件(自动填写)和密码输入以及2个复选框:

        save shipping and billing details
        save credit card information.
      

      用户选择他/她想要的内容 - 然后创建一个新帐户,完成并重定向。

      如果不是,结账流程结束。完成并重定向。没有创建帐户。

    6. 问题: 请注意第3点(案例1)和第4点(案例2) - 必须处理付款,然后我才会询问用户是否可以保存信用卡。

      问题是 - 我无法预先决定 - 因为我不知道用户是否想要与我们一起创建帐户。如果他决定不 - 那么我未经他的同意就储存了他的信用卡。当涉及信用卡时,这听起来很糟糕。

      我相信,为什么大多数网站都要求在订单之前登录或注册。他们通过强制用户创建帐户来提供糟糕的用户体验来解决这个问题。

      如何解决这个问题?我更喜欢使用条纹模式 - 因为它是安全的(沙盒iframe)而且我不需要触摸信用卡号码,进行验证等等 - 而且我更喜欢使用Paypal重定向解决方案同样的原因。

      问题: 付款流程完成后如何存储信用卡信息?我当然在谈论Stripe和Paypal Volt - 而不是在我们的服务器上。

      或者我以错误的方式处理这个问题? 感谢任何见解,我无法找到有关此特定主题的信息,并且我已经在所有这些文档中进行了绘制..谢谢:)

1 个答案:

答案 0 :(得分:1)

如果您使用令牌(tok_XXXX)创建一次性费用,则之后您无法再次使用该令牌。我想说正确的流程是创建一个客户来保存卡,然后在该客户和卡上产生费用。

然后,在下一步,如果客户决定不存储他们的卡详细信息,您只需删除客户或卡,因为您不想保存它。