добавить кредитную карту к существующему пользователю

Я добавил эту кредитную карту, когда клиент впервые регистрируется

// CREDIT CARD CODE (STRIPE)

$q_get_user = "select * from users where `id` = '$user_id' ";
$r_get_user = mysqli_query($conn,$q_get_user);
$get_user = mysqli_fetch_assoc($r_get_user);if(1) {
\Stripe\Stripe::setApiKey("sk_live_9N676756776");try {

$t = \Stripe\Token::create(
array(
"card" => array(
"name" => $get_user['first_name']." ".$get_user['last_name'],
"number" => $credit_num,
"exp_month" => $credit_month,
"exp_year" => $credit_year,
"cvc" => $credit_ccv
)
)
);

if($t->id != '') {
try {
$c = \Stripe\Customer::create(array(
"description" => "Customer for ".$get_user['email'],
"source" => $t->id)
);
if($c->id != '') {
$stripe_token_response = mysqli_real_escape_string($conn, json_encode($t));
$stripe_token_id = mysqli_real_escape_string($conn, $t->id);
$stripe_customer_response = mysqli_real_escape_string($conn, json_encode($c));
$stripe_customer_id = mysqli_real_escape_string($conn, $c->id);
$stripe_card_id = mysqli_real_escape_string($conn, $c->default_source);
}

} catch (Exception $e) {
//print_r($e->getMessage());
header('Location: /credits?error=cc&message='.urlencode($e->getMessage()));die;
}
}

} catch (Exception $e) {
//print_r($e->getMessage());
header('Location: /credits?error=cc&message='.urlencode($e->getMessage()));die;

}}

// END - CREDIT CARD CODE (STRIPE)

Как сделать так, чтобы новый клиент мог добавить его к существующему клиенту? Поэтому клиент добавляет новую карту (их будет больше одной)

1

Решение

Вы отправляете данные карты через API напрямую, что, вероятно, не то, что вы хотите сделать. Это означает, что вы получаете номера карт на вашем сервере, который имеет некоторые серьезные последствия соблюдения PCI. Я настоятельно рекомендую вам изменить интеграцию, чтобы вы всегда сначала указывали данные карты, используя Stripe.js или же Нашивка на стороне клиента отправить данные карты непосредственно в Stripe и получить уникальный токен карты (tok_XXX), который вы затем безопасно отправите на свой сервер, чтобы создать Клиента или добавить в качестве Карты.

Вы можете найти описание процесса обновления карты Вот; единственное отличие, которое вам нужно, состоит в том, что вместо того, чтобы сделать это, чтобы заменить карту:

$cu->source = $_POST['stripeToken']; // obtained with Checkout

Вы хотите сделай это добавить новый:

$customer->sources->create(array("source" => $t->id));
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector