Class: CyberSource::CaptureApi

Inherits:
Object
  • Object
show all
Defined in:
lib/cybersource_rest_client/api/capture_api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_client = ApiClient.default, config) ⇒ CaptureApi

Returns a new instance of CaptureApi.



18
19
20
21
# File 'lib/cybersource_rest_client/api/capture_api.rb', line 18

def initialize(api_client = ApiClient.default, config)
  @api_client = api_client
  @api_client.set_configuration(config)
end

Instance Attribute Details

#api_clientObject

Returns the value of attribute api_client.



16
17
18
# File 'lib/cybersource_rest_client/api/capture_api.rb', line 16

def api_client
  @api_client
end

Instance Method Details

#capture_payment(capture_payment_request, id, opts = {}) ⇒ PtsV2PaymentsCapturesPost201Response

Capture a Payment Include the payment ID in the POST request to capture the payment amount.

Parameters:

  • The payment ID returned from a previous payment request. This ID links the capture to the payment.

  • (defaults to: {})

    the optional parameters

Returns:



30
31
32
33
# File 'lib/cybersource_rest_client/api/capture_api.rb', line 30

def capture_payment(capture_payment_request, id, opts = {})
  data, status_code, headers = capture_payment_with_http_info(capture_payment_request, id, opts)
  return data, status_code, headers
end

#capture_payment_with_http_info(capture_payment_request, id, opts = {}) ⇒ Array<(PtsV2PaymentsCapturesPost201Response, Fixnum, Hash)>

Capture a Payment Include the payment ID in the POST request to capture the payment amount.

Parameters:

  • The payment ID returned from a previous payment request. This ID links the capture to the payment.

  • (defaults to: {})

    the optional parameters

Returns:

  • PtsV2PaymentsCapturesPost201Response data, response status code and response headers



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/cybersource_rest_client/api/capture_api.rb', line 41

def capture_payment_with_http_info(capture_payment_request, id, opts = {})

  if @api_client.config.debugging
      begin
        raise
            @api_client.config.logger.debug 'Calling API: CaptureApi.capture_payment ...'
        rescue
            puts 'Cannot write to log'
        end
  end
  # verify the required parameter 'capture_payment_request' is set

  if @api_client.config.client_side_validation && capture_payment_request.nil?
    fail ArgumentError, "Missing the required parameter 'capture_payment_request' when calling CaptureApi.capture_payment"
  end
  # verify the required parameter 'id' is set

  if @api_client.config.client_side_validation && id.nil?
    fail ArgumentError, "Missing the required parameter 'id' when calling CaptureApi.capture_payment"
  end
  # resource path

  local_var_path = 'pts/v2/payments/{id}/captures'.sub('{' + 'id' + '}', id.to_s)

  # query parameters

  query_params = {}

  # header parameters

  header_params = {}
  # HTTP header 'Accept' (if needed)

  header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8'])
  # HTTP header 'Content-Type'

  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])

  # form parameters

  form_params = {}

  # http body (model)

  post_body = @api_client.object_to_http_body(capture_payment_request)
  sdk_tracker = SdkTracker.new
  post_body = sdk_tracker.insert_developer_id_tracker(post_body, 'CapturePaymentRequest', @api_client.config.host, @api_client.merchantconfig.defaultDeveloperId)
  inbound_mle_status = "optional"
  if MLEUtility.check_is_mle_for_API(@api_client.merchantconfig, inbound_mle_status, ["capture_payment","capture_payment_with_http_info"])
    begin
      post_body = MLEUtility.encrypt_request_payload(@api_client.merchantconfig, post_body)
    rescue
      raise
    end
  end

  is_response_mle_for_api = MLEUtility.check_is_response_mle_for_api(@api_client.merchantconfig, ["capture_payment","capture_payment_with_http_info"])

  auth_names = []
  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'PtsV2PaymentsCapturesPost201Response',
    :isResponseMLEForApi => is_response_mle_for_api)
  if @api_client.config.debugging
    begin
    raise
        @api_client.config.logger.debug "API called: CaptureApi#capture_payment\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
    rescue
        puts 'Cannot write to log'
    end
  end
  return data, status_code, headers
end