我需要向Paymill付款,我希望能够使用 Ruby 语言来实现这一点。
更新:
我确实在 github 上公开发布了 paymill_on_rails 。它是一个基于 Rails 4.0.0 和paymill-ruby的 Paymill 订阅系统,在 ruby-2.0.0-p247 上运行
另请参阅家庭项目
Heroku上还部署了一个示例应用程序。请随时分叉并最终做出贡献。
我需要向Paymill付款,我希望能够使用 Ruby 语言来实现这一点。
更新:
我确实在 github 上公开发布了 paymill_on_rails 。它是一个基于 Rails 4.0.0 和paymill-ruby的 Paymill 订阅系统,在 ruby-2.0.0-p247 上运行
另请参阅家庭项目
Heroku上还部署了一个示例应用程序。请随时分叉并最终做出贡献。
我正在使用来自https://github.com/dkd/paymill-ruby的 paymill gem
它非常易于使用,只需按照自述文件进行操作,您就会了解它的可能性。它还支持订阅。
我设法使用以下步骤很容易地实现了这一点:
在Paymill创建一个新帐户。
从 Paymill 设置页面获取公钥和私钥
安装activemerchant gem:
gem install activemerchant
我使用以下脚本进行购买
请注意,只要您没有在 Paymill 激活您的帐户,它就会在测试模式下运行。因此,实际上不会转移任何资金。他们还列出了永远不会被借记的测试信用卡。
require 'rubygems'
require 'active_merchant'
require 'json'
# Use the TrustCommerce test servers
ActiveMerchant::Billing::Base.mode = :test
gateway = ActiveMerchant::Billing::PaymillGateway.new(
:public_key => 'MY_PAYMILL_PUBLIC_KEY',
:private_key => 'MY_PAYMILL_PRIVATE_KEY')
gateway.default_currency = 'USD'
# ActiveMerchant accepts all amounts as Integer values in cents
amount = 1000 # $10.00
# The card verification value is also known as CVV2, CVC2, or CID
credit_card = ActiveMerchant::Billing::CreditCard.new(
:first_name => 'Bob',
:last_name => 'Bobsen',
:number => '5500000000000004',
:month => '8',
:year => Time.now.year+1,
:verification_value => '000')
# Validating the card automatically detects the card type
if credit_card.valid?
# Capture the amount from the credit card
response = gateway.purchase(amount, credit_card)
if response.success?
puts "Successfully charged $#{sprintf("%.2f", amount / 100)} to the credit card #{credit_card.display_number}"
else
raise StandardError, response.message
end
end