module SpreedlyCore::NullifiableTransaction

Public Instance Methods

credit(amount=nil, ip_address=nil) click to toggle source

Credit amount. If amount is nil, then credit the entire previous purchase or captured amount

# File lib/spreedly-core-ruby/transactions.rb, line 90
def credit(amount=nil, ip_address=nil)
  body = if amount.nil?
           {:ip => ip_address}
         else
           {:transaction => {:amount => amount, :ip => ip_address}}
         end
  self.class.verify_post("/transactions/#{token}/credit.xml",
                         :body => body, :has_key => "transaction") do |response|
    CreditTransaction.new(response.parsed_response["transaction"])
  end
end
void(ip_address=nil) click to toggle source

Void is used to cancel out authorizations and, with some gateways, to cancel actual payment transactions within the first 24 hours

# File lib/spreedly-core-ruby/transactions.rb, line 80
def void(ip_address=nil)
  body = {:transaction => {:ip => ip_address}}
  self.class.verify_post("/transactions/#{token}/void.xml",
                         :body => body, :has_key => "transaction") do |response|
    VoidedTransaction.new(response.parsed_response["transaction"])
  end
end