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.



3525
3526
3527
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3525

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.



3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3531

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.



3546
3547
3548
3549
3550
3551
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 3546

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