Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Ruby client library for PoundPay
Ruby

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
examples/simple_application
lib
spec
.autotest
.gitignore
.rspec
.rvmrc
Gemfile
README.rdoc
Rakefile
poundpay.gemspec

README.rdoc

Poundpay

Poundpay is a payments platform for marketplaces

Adding Poundpay to Rails

  1. Add the following to your Gemfile

    gem 'poundpay', '~> 0.2.0'
  2. At the command prompt, install the gem with bundler

    bundle install
  3. Create the file config/poundpay.yml and add your configurations. Note: Make sure your YAML file ends with a blank line; otherwise, Ruby will give you a completely unintelligible error message

    development:
      developer_sid: DV0383d447360511e0bbac00264a09ff3c
      auth_token: c31155b9f944d7aed204bdb2a253fef13b4fdcc6ae1540200449cc4526b2381a
      www_url: https://www-sandbox.poundpay.com
      api_url: https://api-sandbox.poundpay.com
    
    production:
      developer_sid: DV8dd93f0f3c6411e0863f00264a09ff3c
      auth_token: d8c4ea1bafd3fcac8c1062a72c22bcdb09321deb1041df257165cd6449def0de
  4. Create the file config/initializers/poundpay.rb and add the following

    Poundpay.configure_from_yaml "config/poundpay.yml"
  5. Protect your callback controller

    before_filter :verify_poundpay_callback

Creating a payment

@payment = Poundpay::Payment.create(
  :amount                  => 20000,
  :payer_fee_amount        => 0,
  :payer_email_address     => "fred@example.com",
  :recipient_fee_amount    => 500,
  :recipient_email_address => "david@example.com",
  :description             => "Beats by Dr. Dre")

Serving IFRAME

<script src="https://www.poundpay.com/js/poundpay.js"></script>

<div id="pound-root"></div>

<script>
  function handlePaymentSuccess() {
    // do something
  }

  function handlePaymentError() {
    // handle error
  }

  PoundPay.init({
    payment_sid: "<%= @payment.sid %>",
    success: handlePaymentSuccess,
    error: handlePaymentError,
    cardholder_name: "Fred Nietzsche", // Optional
    server: "<%= Poundpay.www_url %>"
  });
</script>

Payment methods

payment = Poundpay::Payment.find(payment_sid)
payment.escrow   # AUTHORIZED -> ESCROWED.  Credit card is charged
payment.release  # ESCROWED   -> RELEASED.  Recipient receives money
payment.cancel   # ESCROWED   -> CANCELED.  Payer receives refund

Setting callback url

me = Poundpay::Developer.me
me.callback_url = "http://awesomemarketplace.com/poundpay/callback"
me.save!
Something went wrong with that request. Please try again.