Class: Io::Flow::V0::Clients::VirtualCardRefunds

Inherits:
Object
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ VirtualCardRefunds

Returns a new instance of VirtualCardRefunds.



3655
3656
3657
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3655

def initialize(client)
  @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
end

Instance Method Details

#get(organization, incoming = {}) ⇒ Object

Retrieve all the virtual credit card refunds that have been received for all issued cards matching selected criteria.



3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3661

def get(organization, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
    :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
    :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
    :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
  }.delete_if { |k, v| v.nil? }
  r = @client.request("/#{CGI.escape(organization)}/virtual/card/refunds").with_query(query).get
  r.map { |x| ::Io::Flow::V0::Models::VirtualCardRefund.new(x) }
end

#get_by_virtual_card_id(organization, virtual_card_id) ⇒ Object

Retrieve payment refunds for a specific virtual credit card that has been previously issued.



3676
3677
3678
3679
3680
3681
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3676

def get_by_virtual_card_id(organization, virtual_card_id)
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('virtual_card_id', virtual_card_id, String)
  r = @client.request("/#{CGI.escape(organization)}/virtual/card/refunds/#{CGI.escape(virtual_card_id)}").get
  r.map { |x| ::Io::Flow::V0::Models::VirtualCardRefund.new(x) }
end