Merb Merchant
This library is a merb specific fork of the awesome gem ActiveMerchant: [activemerchant.org]
It aims for a lower memory footprint (no active_support dependency) and better integration with Merb view, and configuration with Merb::Config
Supported Direct Payment Gateways
The ActiveMerchant Wiki contains a table of features supported by each gateway.
-
Authorize.Net CIM - US
-
Authorize.Net - US
-
Beanstream.com - CA
-
Braintree - US
-
CardStream - GB
-
CyberSource - US
-
DataCash - GB
-
Efsnet - US
-
eWAY - AU
-
E-xact - CA, US
-
LinkPoint - US
-
Modern Payments - US
-
Moneris - CA
-
NetRegistry - AU
-
NETbilling - US
-
PayJunction - US
-
PaySecure - AU
-
PayPal Express Checkout - US, CA, SG, AU
-
PayPal Payflow Pro - US, CA, SG, AU
-
PaymentExpress - AU, MY, NZ, SG, ZA, GB, US
-
Plug’n Pay - US
-
Protx - GB
-
Psigate - CA
-
Quickpay - DK
-
Realex - IE, GB
-
Sage Payment Solutions - US, CA
-
SecurePay - AU
-
SecurePay - US
-
SecurePayTech - NZ
-
SkipJack - US, CA
-
TransFirst - US
-
TrustCommerce - US
-
USA ePay - US
-
Verifi - US
-
ViaKLIX - US
-
Wirecard - DE
Supported Offsite Payment Gateways
Download
Currently this library is available with git from:
git://github.com/merbjedi/merb_merchant.git
Installation
From Git
You can check out the latest source from git:
> git pull git://github.com/merbjedi/merb_merchant.git
As a Merb Plugin
dependency “merb_merchant”
As a Rails plugin
If you are looking for a Rails Plugin, use the original ActiveMerchant: activemerchant.org
From Ruby Gems
Installation from RubyGems
> gem install merb_merchant
Sample Usage
require 'rubygems'
require 'merb_merchant'
# Use the TrustCommerce test servers
MerbMerchant::Billing::Base.mode = :test
# MerbMerchant accepts all amounts as Integer values in cents
# $10.00
amount = 1000
# The card verification value is also known as CVV2, CVC2, or CID
credit_card = MerbMerchant::Billing::CreditCard.new(
:first_name => 'Bob',
:last_name => 'Bobsen',
:number => '4242424242424242',
:month => '8',
:year => '2012',
:verification_value => '123'
)
# Validating the card automatically detects the card type
if credit_card.valid?
# Create a gateway object for the TrustCommerce service
gateway = MerbMerchant::Billing::TrustCommerceGateway.new(
:login => 'TestMerchant',
:password => 'password'
)
# Authorize for the amount
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.
end
end