Stripe Payment: Сохранить токен и клиент и произвести платеж позже из токена
Возможно ли это в оплате по полосе,
Сначала мы будем проверять кредитную карту с помощью полосы, тогда мы создаем токен и создаем клиентов.
мы сохраним токен вместо информации о кредитной карте в базе данных, а позже мы будем производить платежи от клиентов на основе токена или клиента вместо информации о кредитной карте.
В javscript файле, как мы обрабатываем stripeResponseHandler
и function stripeResponseHandler(status, response)
?
поскольку мы уже создали токен, используя
Stripe.createToken({
number: cardNumber,
cvc: cardCVC,
exp_month: $('#expiration-month').val(),
exp_year: $('#expiration-year').val()
}, stripeResponseHandler);
в шаге оплаты, как мы вызываем stripeResponseHandler?
Пожалуйста, обратите внимание на требование
1- Сохраните токен, подтвердив информацию о кредитной карте, в этом случае платеж не взимается. сумма/цена будет равна нулю (0).
2- Сохраните этот токен в своей базе данных, но этот токен используется некогда. Если использовать этот токен позже, он не будет работать.
3- Создайте клиент, создайте клиента на stripe.com, и мы также сможем сохранить его в нашей базе данных, но причина в том, что мы не будем перезаряжать с нашего сайта, нам нужно войти в систему на полосе. com и перезаряжать с этого сайта. когда мы перезаряжаем с этого сайта, мы не можем сохранить записи этого в нашей базе данных. Также во время создания клиента мы должны создать перезарядку для последнего. нам также нужна кредитная карта, если мы используем этот клиент. так что это главная проблема.
4- мы можем создать собственную функцию stripeResponseHandler, потому что через stripeResponseHandler проверка карт может быть выполнена на stripe.js на сервере stripe.
Ответы
Ответ 1
Вместо сохранения самого токена я рекомендую создать клиента и сохранить ваш идентификатор клиента. Затем вы можете поручить своего клиента в любое время в будущем. Подробнее см. нашу документацию по с информацией о сохраненной карте.
В файле javscript мы обрабатываем stripeResponseHandler и функцию stripeResponseHandler (статус, ответ).
Вам нужно будет создать функцию и передать ее в качестве stripeResponseHandler
при вызове createToken
. Все это нужно сделать, это вставить свой токен в свою форму и отправить его. Вот простой пример этого: https://gist.github.com/boucher/1750375
Ответ 2
В Stripe для сохранения карты (или банковского счета) для оплаты позже вам необходимо создать клиента, а затем добавить к этому клиенту источники оплаты (card или account_account).
После создания клиента с источником оплаты (или источниками) у вас есть 3 варианта создания платы.
-
Затрагивайте клиента с использованием источника по умолчанию:
Stripe::Charge.create(
amount: 1000,
currency: 'usd',
customer: 'cus_xxxx'
)
-
Затрагивайте клиента с помощью кредитной карты:
Stripe::Charge.create(
amount: 5000,
currency: 'usd',
customer: 'cus_xxxx',
card: 'card_xxxx'
)
-
Затрагивайте клиента с помощью банковского счета:
Stripe::Charge.create(
amount: 8000,
currency: 'usd',
customer: 'cus_xxxx',
bank_account: 'ba_xxxx'
)
Ответ 3
Вместо сохранения токенов создайте объект клиента и сохраните только идентификаторы карты локально.
Когда вы делаете платеж, вы можете опционально определить плату, которую вы должны заплатить. (Если вы передадите идентификатор клиента на stripe.charges.create). В этом случае вам не нужно передавать токен. При таком подходе вам также не нужно иметь дело с карточкой по умолчанию.
stripe.charges.create({
amount: 400,
currency: "usd",
card: "card_xxxxx",
customer: "cus_xxxxxx",
Ответ 4
Используйте этот код, и позже вы можете зафиксировать платеж по идентификатору транзакции, передав захват: true
token = params[:stripeToken]
# Charge the user card:
charge = Stripe::Charge.create(
:amount => 1000,
:currency => "usd",
:description => "Example charge",
:capture => false,
:source => token,
)
для более подробной информации обратитесь ссылка
как указано:
capture: - необязательный, по умолчанию - true
Независимо от того, следует ли немедленно захватить заряд. Когда значение false, плата выдает авторизацию (или предварительную авторизацию), и ее необходимо будет записать позже. Непроверенные заряды истекают через 7 дней. Для получения дополнительной информации см. Авторизацию сборов и урегулирование позже.
Я думаю, что он решает проблему, с которой вы сталкиваетесь