module Pin::API::Charges
Public Instance Methods
capture_charge(token)
click to toggle source
# File lib/pin/api/charges.rb, line 20 def capture_charge(token) raw_response = api_call(:put, "charges/#{token}/capture") pin_response(raw_response, Pin::Models::Charge.new(raw_response['response'])) end
charge(token, params={})
click to toggle source
# File lib/pin/api/charges.rb, line 8 def charge(token, params={}) raw_response = api_call(:get, "charges/#{token}", params) pin_response(raw_response, Pin::Models::Charge.new(raw_response['response'])) end
charge_search(params={})
click to toggle source
# File lib/pin/api/charges.rb, line 14 def charge_search(params={}) raw_response = api_call(:get, 'charges/search', params) pin_response(raw_response, raw_response['response'].map { |e| Pin::Models::Charge.new(e) }) end
charges(page=1)
click to toggle source
# File lib/pin/api/charges.rb, line 3 def charges(page=1) raw_response = api_call(:get, 'customers', {page: page}) pin_response(raw_response, raw_response['response'].map { |e| Pin::Models::Charge.new(e) }) end
create_charge(email, description, amount, currency, ip_address, token_or_card, capture=true)
click to toggle source
# File lib/pin/api/charges.rb, line 26 def create_charge(email, description, amount, currency, ip_address, token_or_card, capture=true) require_field email, :email require_field description, :description require_field amount, :amount require_field currency, :currency require_field ip_address, :ip_address params = { :email => email, :description => description, :amount => amount, :currency => currency, :ip_address => ip_address, :capture => capture } if token_or_card.is_a?(Hash) then params[:card] = token_or_card else params[token_or_card =~ /^cus_/ ? :customer_token : :card_token] = token_or_card end raw_response = api_call(:post, 'charges', params) pin_response(raw_response, Pin::Models::Charge.new(raw_response['response'])) end