class Pin::Refund
Attributes
amount[RW]
charge[RW]
created_at[RW]
currency[RW]
error_message[RW]
success[RW]
token[RW]
Public Class Methods
all(charge_or_charge_id)
click to toggle source
Calls superclass method
Pin::Base::all
# File lib/pin-payments/refund.rb, line 17 def all(charge_or_charge_id) super(path: path_for(charge_or_charge_id)) end
create(charge_or_charge_id, amount = nil)
click to toggle source
provide a charge object, or charge ID, and it will be refunded optionally provide an amount in cents, greater than equal to 100, to refund defaults to the full amount of the charge
Calls superclass method
Pin::Base::create
# File lib/pin-payments/refund.rb, line 11 def create(charge_or_charge_id, amount = nil) raise "`amount` must be greater than or equal to 100" if !amount.nil? && amount < 100 super({amount: amount}, path_for(charge_or_charge_id)) end
Protected Class Methods
api_path()
click to toggle source
# File lib/pin-payments/refund.rb, line 22 def api_path "/charges/%s/refunds" end
Private Class Methods
parse_charge_id(charge_or_charge_id)
click to toggle source
# File lib/pin-payments/refund.rb, line 31 def parse_charge_id(charge_or_charge_id) if charge_or_charge_id.respond_to?(:token) # charge charge_or_charge_id.token else # already an ID charge_or_charge_id end end
path_for(charge_or_charge_id)
click to toggle source
# File lib/pin-payments/refund.rb, line 27 def path_for(charge_or_charge_id) api_path % parse_charge_id(charge_or_charge_id) end