class Quaderno::Report

Public Class Methods

domestic_taxes(options = {}) click to toggle source
# File lib/quaderno-ruby/report.rb, line 39
def self.domestic_taxes(options = {})
  request_tax_report('domestic_taxes', options)
end
ec_sales(options = {}) click to toggle source
# File lib/quaderno-ruby/report.rb, line 51
def self.ec_sales(options = {})
  request_tax_report('ec_sales', options)
end
international_taxes(options = {}) click to toggle source
# File lib/quaderno-ruby/report.rb, line 55
def self.international_taxes(options = {})
  request_tax_report('international_taxes', options)
end
journal(options = {}) click to toggle source
# File lib/quaderno-ruby/report.rb, line 9
def self.journal(options = {})
  authentication = get_authentication(options.merge(api_model: api_model))
  filter = options.dup.delete_if { |k,v| %w(auth_token access_token api_url mode api_model).include? k.to_s }

  response = get("#{authentication[:url]}#{api_model.api_path}/journal.json",
    query: filter,
    basic_auth: authentication[:basic_auth],
    headers: default_headers.merge(authentication[:headers])
  )

  check_exception_for(response, { rate_limit: true, subdomain_or_token: true })

  response.parsed_response
end
sales_taxes(options = {}) click to toggle source
# File lib/quaderno-ruby/report.rb, line 43
def self.sales_taxes(options = {})
  request_tax_report('sales_taxes', options)
end
taxes(options = {}) click to toggle source
# File lib/quaderno-ruby/report.rb, line 24
def self.taxes(options = {})
  authentication = get_authentication(options.merge(api_model: api_model))
  filter = options.dup.delete_if { |k,v| %w(auth_token access_token api_url mode api_model).include? k.to_s }

  response = get("#{authentication[:url]}#{api_model.api_path}/taxes.json",
    query: filter,
    basic_auth: authentication[:basic_auth],
    headers: default_headers.merge(authentication[:headers])
  )

  check_exception_for(response, { rate_limit: true, subdomain_or_token: true })

  response.parsed_response
end
vat_moss(options = {}) click to toggle source
# File lib/quaderno-ruby/report.rb, line 47
def self.vat_moss(options = {})
  request_tax_report('vat_moss', options)
end

Private Class Methods

request_tax_report(tax_report_type, options) click to toggle source
# File lib/quaderno-ruby/report.rb, line 61
def self.request_tax_report(tax_report_type, options)
  authentication = get_authentication(options.merge(api_model: api_model))
  filter = options.dup.delete_if { |k,v| %w(auth_token access_token api_url mode api_model).include? k.to_s }

  response = get("#{authentication[:url]}#{api_model.api_path}/#{tax_report_type}.json",
    query: filter,
    basic_auth: authentication[:basic_auth],
    headers: default_headers.merge(authentication[:headers])
  )

  check_exception_for(response, { rate_limit: true, subdomain_or_token: true })

  collection = Array.new
  response.parsed_response.each { |tax_report| collection << self.new(tax_report) }

  collection
end