如何为单个客户ID添加多个卡并使用条纹直接转移资金



在条纹支付网关中可能有可能?

我们将使用Stripe进行付款,首先我要创建令牌。

$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 = StripeCustomer::create(array(
                                "card" => $token,
                                "description" => "New customer",
                                "email" => $users->email
                                    )
                    );

创建充电后。

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

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

首先,您切勿在生产中创建令牌服务器端。为了符合PCI SAQ A的资格,您必须使用Checkout或Stripe.js。

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

  • 您可以使用它直接创建电荷,而无需完全使用客户对象,通过将令牌ID("tok_...")传递到source参数中。在这种情况下,卡信息将"丢失",您将需要再次收集信息,并创建一个新的令牌来再次为此卡充电。

  • 您可以使用它来创建一个新客户。

  • 您可以使用它向现有客户添加卡。

使用客户对象创建电荷时,您需要在customer参数中传递客户ID("cus_...")。如果您不通过source参数,则将使用客户的默认卡。如果要为非默认卡充电,则除了customer参数外,还需要在source参数中传递该卡的ID("card_...")。

cf。此stackoverflow答案。

最新更新