条纹支付网关可以吗?
我们将使用条带付款,首先我创建令牌。
$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',
)
);
但我无法在单个客户中找到保存多张卡片。 请帮帮我。
答案 0 :(得分:4)
首先,您不应该在生产中创建令牌服务器端。要获得PCI SAQ A的资格,您必须使用Checkout或Stripe.js创建卡片令牌客户端。
在服务器上收到令牌后,您可以通过几种不同的方式使用它:
通过在"tok_..."
参数中传递令牌ID(source
),您可以直接使用它create a charge,而无需使用客户对象。在这种情况下,卡信息将丢失"并且您将需要再次收集信息并创建一个新令牌,以便将来再次为此卡充值。
您可以将其用于create a new customer。
当creating charges包含客户对象时,您需要在"cus_..."
参数中传递客户的ID(customer
)。如果您未传递source
参数,则将使用客户的默认卡。如果您想要为非默认卡充电,那么除了customer
参数外,您还需要在{{{{{}}中传递该卡的ID("card_..."
) 1}}参数。