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.



3847
3848
3849
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3847

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.



3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3853

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.



3868
3869
3870
3871
3872
3873
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3868

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