| Class | PaySimple::Subscription |
| In: |
lib/paysimple.rb
|
| Parent: | Object |
# Process one-time sale against existing subscription begin
customer_number = 12345
response = PaySimple::Subscription.charge(customer_number, :Amount => 34.56)
if response['Response'] == "Approved"
puts "One-time charge successful."
else
puts "An error occurred: #{response['Error']}"
end
rescue Exception => e
puts "An error occurred: #{e.message}"
end
# Bill Jennifer $12.00 monthly begin
customer_number = PaySimple::Subscription.create(
:CustomerID => 12345,
:BillingAddress => {
:FirstName => "Jennifer",
:LastName => "Smith"
},
:CreditCardData => {
:CardNumber => '4444555566667779',
:CardExpiration => '0908'
},
:Schedule => :monthly,
:Next => "2008-09-05",
:Amount => 12.00
)
puts "Subscription created with Customer Number: #{customer_number}"
rescue Exception => e
puts "An error occurred: #{e.message}"
end
# Delete subscription begin
customer_number = 12345 response = PaySimple::Subscription.delete(customer_number) puts "Subscription removed from active use."
rescue Exception => e
puts "An error occurred: #{e.message}"
end
# Find an existing subscription begin
customer_number = 12345
customer = PaySimple::Subscription.find(customer_number)
puts "Found subscription for #{ [customer["BillingAddress"]["FirstName"], customer["BillingAddress"]["LastName"]].join(" ")}"
rescue Exception => e
puts "An error occurred: #{e.message}"
end
# Search for transactions begin
response = PaySimple::Subscription.query(
[
{ :Field => 'amount', :Type => 'gt', :Value => '5.0' }
]
)
response.transactions.each do |transaction|
puts "CustomerID = #{transaction['CustomerID']}, Amount = #{transaction['Details']['Amount']}"
end
rescue Exception => e
puts "An error occurred: #{e.message}"
end
# Update subscription to use new credit card begin
customer_number = 12345
response = PaySimple::Subscription.update(
customer_number,
:CreditCardData => {
:CardNumber => '4444555566667779',
:CardExpiration => '0908'
}
)
puts "Subscription updated"
rescue Exception => e
puts "An error occurred: #{e.message}"
end