Stripe Rails: недействительное целое число: 1,06
Я не могу разобраться с этим.
Моя форма передает параметры 106
который £1.06
,
Зарядка карты:
amount = params[:amount].to_f
begin
charge = Stripe::Charge.create(
:amount => amount / 100,
:currency => "gbp",
:source => token,
:description => "Example charge"
)
rescue Stripe::CardError => e
# The card has been declined
end
Как предотвратить:
Неверное целое число: 1,06
Откуда берется целое число? Я преобразовал это в float
,
1 ответ
Решение
Согласно Stripe API параметр Reference number должен быть целочисленным и восприниматься как центы. Так что вы должны пройти params[:amount]
прямо как сумма.
begin
charge = Stripe::Charge.create(
:amount => params[:amount],
:currency => "gbp",
:source => token,
:description => "Example charge"
)
rescue Stripe::CardError => e
# The card has been declined
end