class Apruve::InvoiceReturn

Attributes

amount_cents[RW]
created_at[RW]
created_by_id[RW]
currency[RW]
id[RW]
invoice_id[RW]
merchant_notes[RW]
reason[RW]
updated_at[RW]
uuid[RW]

Public Class Methods

find(invoice_id, id) click to toggle source
# File lib/apruve/resources/invoice_return.rb, line 6
def self.find(invoice_id, id)
  response = Apruve.get("invoices/#{invoice_id}/invoice_returns/#{id}")
  logger.debug response.body
  InvoiceReturn.new(response.body)
end
find_all(invoice_id) click to toggle source
# File lib/apruve/resources/invoice_return.rb, line 19
def self.find_all(invoice_id)
  response = Apruve.get("invoices/#{invoice_id}/invoice_returns")
  response.body.map { |invoice_return| InvoiceReturn.new(invoice_return) }
end

Public Instance Methods

save!() click to toggle source
# File lib/apruve/resources/invoice_return.rb, line 30
def save!
  validate
  response = Apruve.post("invoices/#{self.invoice_id}/invoice_returns", self.to_json)
  logger.debug response.body
  self.id = response.body['id']
end
update!() click to toggle source
# File lib/apruve/resources/invoice_return.rb, line 24
def update!
  validate
  response = Apruve.put("invoices/#{self.invoice_id}/invoice_returns/#{self.id}", self.to_json)
  logger.debug response.body
end
validate() click to toggle source
# File lib/apruve/resources/invoice_return.rb, line 12
def validate
  errors = []
  errors << 'amount_cents must be set' if amount_cents.nil?
  errors << 'reason must be set' if reason.nil?
  raise Apruve::ValidationError.new(errors) if errors.length > 0
end