2

我试图弄清楚如何在表单输入字段中输入的单笔费用中使用条纹接受信用卡。

示例:user1 登录并创建帖子,在字段中输入 $20 并单击提交。帖子被创建,并从他的卡中收取 20 美元。用户 2 也这样做,但投入 45 美元并输入他的信用卡并提交表单。

我已经完成了以下工作;- 设计设置 - 角色 - 安装条纹 gem 和帐户设置

我还没有找到可以解释条带单次收费的示例,一切都是基于订阅的。

我是新手,所以我试图模仿订阅示例但没有成功。

4

2 回答 2

7

以下是我使用 Stripe 和 ActiveMerchant gem 执行单次收费的方式。

transaction = ActiveMerchant::Billing::StripeGateway.new(:login => STRIPE_SECRET_KEY)

paymentInfo = ActiveMerchant::Billing::CreditCard.new(
            :number             => "4242424242424242",
            :month              => "12",
            :year               => "2020",
            :verification_value => "411")

purchaseOptions = {:billing_address => {
    :name     => "Customer Name",
    :address1 => "Customer Address Line 1",
    :city     => "Customer City",
    :state    => "Customer State",
    :zip      => "Customer Zip Code"
}}

response = transaction.purchase((17.50 * 100).to_i, paymentInfo, purchaseOptions)

if response.success? then
  logger.debug "charge successful"
end
于 2013-01-08T01:36:25.113 回答
0

您需要使用 Stripe.js 来获取令牌,然后传递该令牌字符串而不是信用卡对象。

出于测试目的,您可以访问https://stripe.com/docs/stripe-js并从如下图所示的表单中获取令牌: 在此处输入图像描述

如何在 Rails 控制台中使用它:

gateway = ActiveMerchant::Billing::StripeGateway.new(:login => STRIPE_SECRET_KEY)
gateway.purchase(1200, "tok_1E0CzPDdSOg3FLH0IFmWo1T2")
于 2019-02-04T19:27:06.930 回答