Skip to content
This repository was archived by the owner on Oct 18, 2022. It is now read-only.

ably-forks/fastspring-saasy

 
 

Repository files navigation

Ruby library to access the FastSpring Saasy API.

gem install fastspring-saasy

Setup account credentials

FastSpring::Account.setup do |config|
  config[:username] = 'user'
  config[:password] = 'password'
  config[:company] = 'company'
end

Get subscription

sub = FastSpring::Subscription.find('reference')

Renew subscription

sub.renew

Cancel subscription

sub.cancel!

Create subscriptions url

FastSpring::Subscription.create_subscription_url('test_product', 'new_co')
=> http://sites.fastspring.com/acme/product/test_product?referrer=new_co

Flexible subscriptions url

FastSpring::Subscription.subscription_url(:detail, product: 'test_product', referrer: 'new_co')
=> http://sites.fastspring.com/acme/product/test_product?referrer=new_co  

FastSpring::Subscription.subscription_url(:detail, product: 'test_product')
=> http://sites.fastspring.com/acme/product/test_product

FastSpring::Subscription.subscription_url(:order, product: 'test_product', referrer: 'new_co')
=> http://sites.fastspring.com/acme/product/test_product?action=order&referrer=new_co

FastSpring::Subscription.subscription_url(:add, product: 'test_product', referrer: 'new_co')
=> http://sites.fastspring.com/acme/product/test_product?action=add&referrer=new_co

FastSpring::Subscription.subscription_url(:adds, product: 'test_product', referrer: 'new_co')
=> http://sites.fastspring.com/acme/product/test_product?action=adds&referrer=new_co

FastSpring::Subscription.subscription_url(:api)
=> http://sites.fastspring.com/acme/api/order

FastSpring::Subscription.subscription_url(:instant, product: 'test_product', referrer: 'new_co', tags: 'tag1=10,tag2,tag3=30', contact_company: 'ABC Company', contact_phone: '123-4567890', contact_email: 'john+smith@abccompany.com', contact_fname: 'John', contact_lname: 'Smith')
=> https://sites.fastspring.com/acme/instant/test_product?contact_company=ABC+Company&contact_email=john%2Bsmith%40abccompany.com&contact_fname=John&contact_lname=Smith&contact_phone=123-4567890&referrer=new_co&tags=tag1%3D10%2Ctag2%2Ctag3%3D30

Update subscriptions

sub = FastSpring::Subscription.find('reference')
sub.update_attributes(tags: 'tag1=10,tag2,tag3=30', company: 'ABC Company')

FastSpring::Subscription.update_subscription('reference', tags: 'tag1=10,tag2,tag3=30', company: 'ABC Company')

Orders

order = FastSpring::Order.find('reference')
order.items.each do |item|
  # item.inspect
end

order.payments.each do |payment|
  # payment.inspect
end

#customer details
order.purchaser.inspect

Localized Store Pricing

store_pricing = FastSpring::LocalizedStorePricing.find(['/standard'], http_request)

puts store_pricing.inspect

FastSpring have their own gem at github.com/fastspring/fastspring-ruby

Copyright © 2012 Richard Patching. See LICENSE.txt for further details.

About

Ruby lib for the FastSpring Saasy API

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Ruby 100.0%