我正在使用Stripe Payments,并希望为客户提供更改信用卡的可能性。参考https://stripe.com/docs/api#create_subscription - >来源,我尝试了以下PHP代码:
<div id="chat" style="height: 359px; width: 146px">
<p id="answer">
</p>
</div>
<input id="send" type="text" value="ارسال" style="width: 120px" />
这很有效,但不幸的是,它无意中也创建了一个新的客户ID:
原始客户ID是 cus_6elZAJHMELXkKI ,我想保留它。
是否有人知道在不创建新客户的情况下更新卡的PHP代码?
非常感谢你!
PS:万一你需要它 - 这是最初的代码 创建了客户和订阅:
$customer = \Stripe\Customer::retrieve($client_id); $customer = \Stripe\Customer::create(array( "source" => $token) //the token contains credit card details );
答案 0 :(得分:8)
我刚刚找到了答案,也许它对你们有所帮助:
您可以将旧卡替换为新卡,如下所示:
$customer = \Stripe\Customer::retrieve($client_id);
$new_card = $customer->sources->create(array("source" => $token));
$customer->default_source = $new_card->id;
$customer->save();
答案 1 :(得分:0)
答案很有帮助,但评论者认为旧卡未被删除是正确的。
假设您只给客户一张卡,您可以这样做:
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
<body>
</div>
<div class="box">
<p id="logo">FocusTimer</p>
<div id="timer">
</div>
<i class="fa fa-play" onclick="setInterval(myTimer,1000);"></i>
<i class="fas fa-pause"></i>
</div>
</body>