Я пытаюсь реализовать Stripe Checkout, используя пользовательскую интеграцию в приложении rails. В моей форме проверки отображается зеленая галочка с сообщением, которую она подала, но платеж не обрабатывается. Простая интеграция работает хорошо, как и платежи по подписке на другие части моего сайта.Stripe Checkout с пользовательской интеграцией в Rails
Как и простая интеграция, я пытаюсь разместить собственный скрипт интеграции внутри form_tag - я следовал за Rails Checkout guide, который, к сожалению, написан только для простой интеграции. Как и у руководства, у меня есть контроллер сборов, с новыми и создающими действия, чтобы показать форму и создать обвинения.
Плата контроллера:
class ChargesController < ApplicationController
def new
end
def create
# Amount in cents
@amount = 500
customer = Stripe::Customer.create(
:email => params[:stripeEmail],
:card => params[:stripeToken]
)
charge = Stripe::Charge.create(
:customer => customer.id,
:amount => @amount,
:description => 'Rails Stripe customer',
:currency => 'usd'
)
rescue Stripe::CardError => e
flash[:error] = e.message
redirect_to charges_path
end
end
И в моем новом представлении, форма настройки следующим образом:
<%= form_tag charges_path do %>
<script src="https://checkout.stripe.com/checkout.js"></script>
<button id="customButton" class="btn btn-large btn-primary">Buy Now</button>
<script>
var handler = StripeCheckout.configure({
key: '<%= ENV["STRIPE_PUBLIC_KEY"] %>',
image: '/assets/my_logo.png',
token: function(token, args) {
// Use the token to create the charge with a server-side script.
}
});
document.getElementById('customButton').addEventListener('click', function(e) {
// Open Checkout with further options
handler.open({
name: 'My Company',
description: 'Product ($60.00)',
amount: 60*100,
shippingAddress: true
});
e.preventDefault();
});
</script>
<% end %>
Я попытался просто обо всем, что можно придумать, но форма не будет быть представленным для запуска действия создания. Я вижу примечание, чтобы использовать скрипт на стороне сервера, но может ли кто-нибудь указать мне в правильном направлении на то, что я могу потерять?
Любая помощь очень ценится !! Благодаря!
вы нашли ответ? –