Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Paypal adaptive payments for activemerchant
branch: master

This branch is 3 commits ahead, 27 commits behind lamp:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib/active_merchant/billing/gateways
script
spec
.gitignore
README

README

Paypal Adaptive Payments Library for ActiveMerchant

Supports payments, preapprovals, refunds and currency conversions

Requirements:

  .Rails 2.3.x
  .Json
  .Builder
  .ActiveMerchant 1.5.x

to install

    git clone git://github.com/lamp/paypal_adaptive_gateway.git
    cd /path/to/paypal_adaptive_gateway
    ./script/install /path/to/active/merchant
  
to use

  in application_controller.rb
  
    def gateway
      @gateway ||= PaypalAdaptivePaymentGateway.new(
       :login => 'your_email',
       :password => 'your_password',
       :signature => ' your_signature',
       :appid => 'your_app_id'
      )
    end
  
  in the payment process
  
    #for chained payments
    def checkout
      recipients = [{:email => 'receiver_email',
                     :amount => some_amount,
                     :primary => true},
                    {:email => 'receiver_email',
                     :amount => recipient_amount,
                     :primary => false}
                     ]
      response = gateway.pay(
        :return_url => url_for(:action => 'action', :only_path => false),
        :cancel_url => url_for(:action => 'action', :only_path => false),
        :notify_url => url_for(:action => 'notify_action', :only_path => false),
        :receiver_list => recipients
      )
      redirect_to response.redirect_url_for
    end
    
    set the :primary flag to false for each recipient for a split payment
    
  to debug
  
    use either gateway.debug or response.debug this gives you the json response, the xml sent and the url it was posted to. 
  
Something went wrong with that request. Please try again.