【问题标题】:How to add multiple card for a single customer id and transfer money directly using stripe?如何为单个客户ID添加多张卡并使用条带直接转账?
【发布时间】:2017-04-07 06:37:18
【问题描述】:

条纹支付网关可以吗?

我们将使用条纹支付,首先我正在创建令牌。

$result = Stripe_Token::create(
                    array(
                        "card" => array(
                            "name" => $user['name'],
                            "number" => base64decrypt($user['card_number']),
                            "exp_month" => $user['month'],
                            "exp_year" => $user['year'],
                            "cvc" => base64decrypt($user['cvc_number'])
                        )
                    )
                );

使用令牌后创建客户保存卡。

 $customer = \Stripe\Customer::create(array(
                                "card" => $token,
                                "description" => "New customer",
                                "email" => $users->email
                                    )
                    );

在创建费用之后。

$charge = \Stripe\Charge::create(
                 array('card' => $token->token,
                                'amount' => $token->amount * 100,
                                'currency' => 'usd',
                                )
            );

但我找不到在单个客户中保存多张卡。 请帮帮我。

【问题讨论】:

    标签: php stripe-payments


    【解决方案1】:

    首先,您不应该在生产环境中创建服务器端令牌。要获得PCI SAQ A 的资格,您必须使用CheckoutStripe.js 在客户端创建卡令牌。

    在您的服务器上收到令牌后,您可以通过几种不同的方式使用它:

    • 您可以通过在source 参数中传递令牌ID ("tok_...") 直接将其用于create a charge,而不使用客户对象。在这种情况下,卡信息将“丢失”,您需要再次收集信息并创建一个新令牌以在未来再次向该卡收费。

    • 你可以用它来create a new customer

    • 你可以用它来add a card to an existing customer

    creating charges 带有客户对象时,您需要在customer 参数中传递客户的ID("cus_...")。如果不传递source 参数,则将使用客户的默认卡。如果要对非默认卡进行收费,那么除了customer 参数外,您还需要在source 参数中传递卡的ID ("card_...")。

    参照。 this StackOverflow answer.

    【讨论】:

      猜你喜欢
      • 2016-09-04
      • 1970-01-01
      • 2018-03-04
      • 2017-07-18
      • 1970-01-01
      • 1970-01-01
      • 2018-04-22
      • 1970-01-01
      • 2020-01-08
      相关资源
      最近更新 更多