connect-sdk-ruby 3.0.0 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/connect-sdk-ruby.gemspec +1 -1
  3. data/examples/v1/merchant/captures/create_refund_capture_example.rb +3 -3
  4. data/examples/v1/merchant/payments/create_payment_example.rb +3 -3
  5. data/examples/v1/merchant/payments/refund_payment_example.rb +3 -3
  6. data/examples/v1/merchant/payouts/create_payout_example.rb +3 -3
  7. data/lib/worldline/connect/sdk/communication/metadata_provider.rb +1 -1
  8. data/lib/worldline/connect/sdk/v1/api_exception.rb +5 -7
  9. data/lib/worldline/connect/sdk/v1/authorization_exception.rb +3 -3
  10. data/lib/worldline/connect/sdk/v1/declined_payment_exception.rb +12 -23
  11. data/lib/worldline/connect/sdk/v1/declined_payout_exception.rb +13 -24
  12. data/lib/worldline/connect/sdk/v1/declined_refund_exception.rb +13 -24
  13. data/lib/worldline/connect/sdk/v1/declined_transaction_exception.rb +2 -2
  14. data/lib/worldline/connect/sdk/v1/domain/abstract_card_payment_method_specific_input.rb +0 -3
  15. data/lib/worldline/connect/sdk/v1/domain/abstract_sepa_direct_debit_payment_product771_specific_input.rb +0 -1
  16. data/lib/worldline/connect/sdk/v1/domain/additional_order_input.rb +0 -3
  17. data/lib/worldline/connect/sdk/v1/domain/airline_data.rb +0 -1
  18. data/lib/worldline/connect/sdk/v1/domain/airline_flight_leg.rb +0 -1
  19. data/lib/worldline/connect/sdk/v1/domain/bank_transfer_payout_method_specific_input.rb +0 -1
  20. data/lib/worldline/connect/sdk/v1/domain/card_payment_method_specific_input.rb +0 -2
  21. data/lib/worldline/connect/sdk/v1/domain/card_payment_method_specific_output.rb +7 -0
  22. data/lib/worldline/connect/sdk/v1/domain/cash_payment_method_specific_input.rb +0 -1
  23. data/lib/worldline/connect/sdk/v1/domain/cash_payment_product1503_specific_input.rb +0 -1
  24. data/lib/worldline/connect/sdk/v1/domain/create_payout_request.rb +0 -8
  25. data/lib/worldline/connect/sdk/v1/domain/created_payment_output.rb +0 -1
  26. data/lib/worldline/connect/sdk/v1/domain/customer.rb +0 -1
  27. data/lib/worldline/connect/sdk/v1/domain/customer_base.rb +0 -1
  28. data/lib/worldline/connect/sdk/v1/domain/customer_risk_assessment.rb +0 -1
  29. data/lib/worldline/connect/sdk/v1/domain/decrypted_payment_data.rb +0 -1
  30. data/lib/worldline/connect/sdk/v1/domain/device_render_options.rb +0 -1
  31. data/lib/worldline/connect/sdk/v1/domain/external_cardholder_authentication_data.rb +0 -1
  32. data/lib/worldline/connect/sdk/v1/domain/fraud_fields.rb +0 -12
  33. data/lib/worldline/connect/sdk/v1/domain/fraud_fields_shipping_details.rb +0 -3
  34. data/lib/worldline/connect/sdk/v1/domain/level3_summary_data.rb +0 -3
  35. data/lib/worldline/connect/sdk/v1/domain/line_item.rb +0 -1
  36. data/lib/worldline/connect/sdk/v1/domain/loan_recipient.rb +0 -5
  37. data/lib/worldline/connect/sdk/v1/domain/order.rb +0 -2
  38. data/lib/worldline/connect/sdk/v1/domain/order_line_details.rb +7 -0
  39. data/lib/worldline/connect/sdk/v1/domain/payment_approval_response.rb +0 -1
  40. data/lib/worldline/connect/sdk/v1/domain/redirect_payment_method_specific_input.rb +0 -1
  41. data/lib/worldline/connect/sdk/v1/domain/redirect_payment_product809_specific_input.rb +0 -1
  42. data/lib/worldline/connect/sdk/v1/domain/redirect_payment_product840_specific_input.rb +0 -1
  43. data/lib/worldline/connect/sdk/v1/domain/shipping.rb +7 -0
  44. data/lib/worldline/connect/sdk/v1/domain/value_mapping_element.rb +0 -1
  45. data/lib/worldline/connect/sdk/v1/exception_factory.rb +19 -14
  46. data/lib/worldline/connect/sdk/v1/idempotence_exception.rb +2 -3
  47. data/lib/worldline/connect/sdk/v1/merchant/captures/captures_client.rb +6 -4
  48. data/lib/worldline/connect/sdk/v1/merchant/disputes/disputes_client.rb +12 -8
  49. data/lib/worldline/connect/sdk/v1/merchant/disputes/upload_file_request.rb +2 -1
  50. data/lib/worldline/connect/sdk/v1/merchant/files/files_client.rb +3 -2
  51. data/lib/worldline/connect/sdk/v1/merchant/hostedcheckouts/hostedcheckouts_client.rb +9 -6
  52. data/lib/worldline/connect/sdk/v1/merchant/hostedmandatemanagements/hostedmandatemanagements_client.rb +6 -4
  53. data/lib/worldline/connect/sdk/v1/merchant/installments/installments_client.rb +3 -2
  54. data/lib/worldline/connect/sdk/v1/merchant/mandates/mandates_client.rb +18 -12
  55. data/lib/worldline/connect/sdk/v1/merchant/merchant_client.rb +16 -0
  56. data/lib/worldline/connect/sdk/v1/merchant/payments/find_payments_params.rb +1 -0
  57. data/lib/worldline/connect/sdk/v1/merchant/payments/payments_client.rb +51 -34
  58. data/lib/worldline/connect/sdk/v1/merchant/payouts/find_payouts_params.rb +1 -0
  59. data/lib/worldline/connect/sdk/v1/merchant/payouts/payouts_client.rb +18 -12
  60. data/lib/worldline/connect/sdk/v1/merchant/productgroups/find_productgroups_params.rb +1 -0
  61. data/lib/worldline/connect/sdk/v1/merchant/productgroups/get_productgroup_params.rb +1 -0
  62. data/lib/worldline/connect/sdk/v1/merchant/productgroups/productgroups_client.rb +9 -6
  63. data/lib/worldline/connect/sdk/v1/merchant/products/directory_params.rb +1 -0
  64. data/lib/worldline/connect/sdk/v1/merchant/products/find_products_params.rb +1 -0
  65. data/lib/worldline/connect/sdk/v1/merchant/products/get_product_params.rb +1 -0
  66. data/lib/worldline/connect/sdk/v1/merchant/products/networks_params.rb +1 -0
  67. data/lib/worldline/connect/sdk/v1/merchant/products/products_client.rb +21 -14
  68. data/lib/worldline/connect/sdk/v1/merchant/refunds/find_refunds_params.rb +1 -0
  69. data/lib/worldline/connect/sdk/v1/merchant/refunds/refunds_client.rb +15 -10
  70. data/lib/worldline/connect/sdk/v1/merchant/riskassessments/riskassessments_client.rb +6 -4
  71. data/lib/worldline/connect/sdk/v1/merchant/services/convert_amount_params.rb +1 -0
  72. data/lib/worldline/connect/sdk/v1/merchant/services/privacypolicy_params.rb +1 -0
  73. data/lib/worldline/connect/sdk/v1/merchant/services/services_client.rb +15 -10
  74. data/lib/worldline/connect/sdk/v1/merchant/sessions/sessions_client.rb +3 -2
  75. data/lib/worldline/connect/sdk/v1/merchant/tokens/delete_token_params.rb +1 -0
  76. data/lib/worldline/connect/sdk/v1/merchant/tokens/tokens_client.rb +15 -10
  77. data/lib/worldline/connect/sdk/v1/platform_exception.rb +2 -4
  78. data/lib/worldline/connect/sdk/v1/reference_exception.rb +1 -2
  79. data/lib/worldline/connect/sdk/v1/v1_client.rb +1 -0
  80. data/lib/worldline/connect/sdk/v1/validation_exception.rb +2 -3
  81. data/lib/worldline/connect/sdk/v1/webhooks/v1_webhooks_factory.rb +1 -0
  82. metadata +2 -2
@@ -31,27 +31,22 @@ module Worldline
31
31
  # @attr [String] website
32
32
  class FraudFields < Worldline::Connect::SDK::Domain::DataObject
33
33
 
34
- #
35
34
  # @deprecated For risk assessments there is no replacement. For other calls, use Order.shipping.addressIndicator instead
36
35
  attr_accessor :addresses_are_identical
37
36
 
38
37
  attr_accessor :black_list_data
39
38
 
40
- #
41
39
  # @deprecated This should be the same as Order.customer.billingAddress
42
40
  attr_accessor :card_owner_address
43
41
 
44
42
  attr_accessor :customer_ip_address
45
43
 
46
- #
47
44
  # @deprecated Use Order.customer.device.defaultFormFill instead
48
45
  attr_accessor :default_form_fill
49
46
 
50
- #
51
47
  # @deprecated No replacement
52
48
  attr_accessor :device_fingerprint_activated
53
49
 
54
- #
55
50
  # @deprecated Use Order.customer.device.deviceFingerprintTransactionId instead
56
51
  attr_accessor :device_fingerprint_transaction_id
57
52
 
@@ -59,35 +54,28 @@ module Worldline
59
54
 
60
55
  attr_accessor :gift_message
61
56
 
62
- #
63
57
  # @deprecated Use Order.customer.account.hasForgottenPassword instead
64
58
  attr_accessor :has_forgotten_pwd
65
59
 
66
- #
67
60
  # @deprecated Use Order.customer.account.hasPassword instead
68
61
  attr_accessor :has_password
69
62
 
70
- #
71
63
  # @deprecated Use Order.customer.isPreviousCustomer instead
72
64
  attr_accessor :is_previous_customer
73
65
 
74
66
  attr_accessor :order_timezone
75
67
 
76
- #
77
68
  # @deprecated Use Order.shipping.comments instead
78
69
  attr_accessor :ship_comments
79
70
 
80
- #
81
71
  # @deprecated Use Order.shipping.trackingNumber instead
82
72
  attr_accessor :shipment_tracking_number
83
73
 
84
- #
85
74
  # @deprecated No replacement
86
75
  attr_accessor :shipping_details
87
76
 
88
77
  attr_accessor :user_data
89
78
 
90
- #
91
79
  # @deprecated Use Merchant.websiteUrl instead
92
80
  attr_accessor :website
93
81
 
@@ -15,15 +15,12 @@ module Worldline
15
15
  # @deprecated No replacement
16
16
  class FraudFieldsShippingDetails < Worldline::Connect::SDK::Domain::DataObject
17
17
 
18
- #
19
18
  # @deprecated No replacement
20
19
  attr_accessor :method_details
21
20
 
22
- #
23
21
  # @deprecated No replacement
24
22
  attr_accessor :method_speed
25
23
 
26
- #
27
24
  # @deprecated No replacement
28
25
  attr_accessor :method_type
29
26
 
@@ -15,15 +15,12 @@ module Worldline
15
15
  # @deprecated Use ShoppingCart.amountBreakdown instead
16
16
  class Level3SummaryData < Worldline::Connect::SDK::Domain::DataObject
17
17
 
18
- #
19
18
  # @deprecated Use ShoppingCart.amountBreakdown with type DISCOUNT instead
20
19
  attr_accessor :discount_amount
21
20
 
22
- #
23
21
  # @deprecated Use ShoppingCart.amountBreakdown with type DUTY instead
24
22
  attr_accessor :duty_amount
25
23
 
26
- #
27
24
  # @deprecated Use ShoppingCart.amountBreakdown with type SHIPPING instead
28
25
  attr_accessor :shipping_amount
29
26
 
@@ -23,7 +23,6 @@ module Worldline
23
23
 
24
24
  attr_accessor :invoice_data
25
25
 
26
- #
27
26
  # @deprecated Use orderLineDetails instead
28
27
  attr_accessor :level3_interchange_information
29
28
 
@@ -17,23 +17,18 @@ module Worldline
17
17
  # @deprecated No replacement
18
18
  class LoanRecipient < Worldline::Connect::SDK::Domain::DataObject
19
19
 
20
- #
21
20
  # @deprecated No replacement
22
21
  attr_accessor :account_number
23
22
 
24
- #
25
23
  # @deprecated No replacement
26
24
  attr_accessor :date_of_birth
27
25
 
28
- #
29
26
  # @deprecated No replacement
30
27
  attr_accessor :partial_pan
31
28
 
32
- #
33
29
  # @deprecated No replacement
34
30
  attr_accessor :surname
35
31
 
36
- #
37
32
  # @deprecated No replacement
38
33
  attr_accessor :zip
39
34
 
@@ -33,13 +33,11 @@ module Worldline
33
33
 
34
34
  attr_accessor :customer
35
35
 
36
- #
37
36
  # @deprecated Use shoppingCart.items instead
38
37
  attr_accessor :items
39
38
 
40
39
  attr_accessor :references
41
40
 
42
- #
43
41
  # @deprecated Use Merchant.seller instead
44
42
  attr_accessor :seller
45
43
 
@@ -12,6 +12,7 @@ module Worldline
12
12
  # @attr [Integer] discount_amount
13
13
  # @attr [Integer] google_product_category_id
14
14
  # @attr [Integer] line_amount_total
15
+ # @attr [String] naics_commodity_code
15
16
  # @attr [String] product_category
16
17
  # @attr [String] product_code
17
18
  # @attr [String] product_name
@@ -29,6 +30,8 @@ module Worldline
29
30
 
30
31
  attr_accessor :line_amount_total
31
32
 
33
+ attr_accessor :naics_commodity_code
34
+
32
35
  attr_accessor :product_category
33
36
 
34
37
  attr_accessor :product_code
@@ -53,6 +56,7 @@ module Worldline
53
56
  hash['discountAmount'] = @discount_amount unless @discount_amount.nil?
54
57
  hash['googleProductCategoryId'] = @google_product_category_id unless @google_product_category_id.nil?
55
58
  hash['lineAmountTotal'] = @line_amount_total unless @line_amount_total.nil?
59
+ hash['naicsCommodityCode'] = @naics_commodity_code unless @naics_commodity_code.nil?
56
60
  hash['productCategory'] = @product_category unless @product_category.nil?
57
61
  hash['productCode'] = @product_code unless @product_code.nil?
58
62
  hash['productName'] = @product_name unless @product_name.nil?
@@ -76,6 +80,9 @@ module Worldline
76
80
  if hash.has_key? 'lineAmountTotal'
77
81
  @line_amount_total = hash['lineAmountTotal']
78
82
  end
83
+ if hash.has_key? 'naicsCommodityCode'
84
+ @naics_commodity_code = hash['naicsCommodityCode']
85
+ end
79
86
  if hash.has_key? 'productCategory'
80
87
  @product_category = hash['productCategory']
81
88
  end
@@ -24,7 +24,6 @@ module Worldline
24
24
 
25
25
  attr_accessor :payment
26
26
 
27
- #
28
27
  # @deprecated Use cardPaymentMethodSpecificOutput instead
29
28
  attr_accessor :payment_method_specific_output
30
29
 
@@ -51,7 +51,6 @@ module Worldline
51
51
 
52
52
  attr_accessor :redirection_data
53
53
 
54
- #
55
54
  # @deprecated Use redirectionData.returnUrl instead
56
55
  attr_accessor :return_url
57
56
 
@@ -13,7 +13,6 @@ module Worldline
13
13
  # @attr [String] issuer_id
14
14
  class RedirectPaymentProduct809SpecificInput < Worldline::Connect::SDK::Domain::DataObject
15
15
 
16
- #
17
16
  # @deprecated Use RedirectPaymentMethodSpecificInput.expirationPeriod instead
18
17
  attr_accessor :expiration_period
19
18
 
@@ -13,7 +13,6 @@ module Worldline
13
13
  # @attr [true/false] is_shortcut
14
14
  class RedirectPaymentProduct840SpecificInput < Worldline::Connect::SDK::V1::Domain::AbstractRedirectPaymentProduct840SpecificInput
15
15
 
16
- #
17
16
  # @deprecated Use Order.references.descriptor instead
18
17
  attr_accessor :custom
19
18
 
@@ -16,6 +16,7 @@ module Worldline
16
16
  # @attr [String] email_address
17
17
  # @attr [String] first_usage_date
18
18
  # @attr [true/false] is_first_usage
19
+ # @attr [String] shipped_from_zip
19
20
  # @attr [String] tracking_number
20
21
  # @attr [String] type
21
22
  class Shipping < Worldline::Connect::SDK::Domain::DataObject
@@ -32,6 +33,8 @@ module Worldline
32
33
 
33
34
  attr_accessor :is_first_usage
34
35
 
36
+ attr_accessor :shipped_from_zip
37
+
35
38
  attr_accessor :tracking_number
36
39
 
37
40
  attr_accessor :type
@@ -45,6 +48,7 @@ module Worldline
45
48
  hash['emailAddress'] = @email_address unless @email_address.nil?
46
49
  hash['firstUsageDate'] = @first_usage_date unless @first_usage_date.nil?
47
50
  hash['isFirstUsage'] = @is_first_usage unless @is_first_usage.nil?
51
+ hash['shippedFromZip'] = @shipped_from_zip unless @shipped_from_zip.nil?
48
52
  hash['trackingNumber'] = @tracking_number unless @tracking_number.nil?
49
53
  hash['type'] = @type unless @type.nil?
50
54
  hash
@@ -71,6 +75,9 @@ module Worldline
71
75
  if hash.has_key? 'isFirstUsage'
72
76
  @is_first_usage = hash['isFirstUsage']
73
77
  end
78
+ if hash.has_key? 'shippedFromZip'
79
+ @shipped_from_zip = hash['shippedFromZip']
80
+ end
74
81
  if hash.has_key? 'trackingNumber'
75
82
  @tracking_number = hash['trackingNumber']
76
83
  end
@@ -17,7 +17,6 @@ module Worldline
17
17
 
18
18
  attr_accessor :display_elements
19
19
 
20
- #
21
20
  # @deprecated Use displayElements instead with ID 'displayName'
22
21
  attr_accessor :display_name
23
22
 
@@ -12,8 +12,6 @@ require_relative 'platform_exception'
12
12
  require_relative 'reference_exception'
13
13
  require_relative 'validation_exception'
14
14
 
15
- require 'worldline/connect/sdk/api_resource'
16
- require 'worldline/connect/sdk/communication/request_header'
17
15
  require 'worldline/connect/sdk/v1/domain/error_response'
18
16
  require 'worldline/connect/sdk/v1/domain/payment_error_response'
19
17
  require 'worldline/connect/sdk/v1/domain/payout_error_response'
@@ -26,41 +24,46 @@ module Worldline
26
24
  def self.create_exception(status_code, response_body, error_object, context)
27
25
  if error_object.is_a?(Worldline::Connect::SDK::V1::Domain::PaymentErrorResponse)
28
26
  return DeclinedPaymentException.new(status_code, response_body, error_object) unless error_object.payment_result.nil?
29
- return create_exception_from_errors(status_code, response_body, error_object.error_id, error_object.errors, context)
27
+ return create_exception_from_response_fields(status_code, response_body, error_object.error_id, error_object.errors, context)
30
28
  end
31
29
  if error_object.is_a?(Worldline::Connect::SDK::V1::Domain::PayoutErrorResponse)
32
30
  return DeclinedPayoutException.new(status_code, response_body, error_object) unless error_object.payout_result.nil?
33
- return create_exception_from_errors(status_code, response_body, error_object.error_id, error_object.errors, context)
31
+ return create_exception_from_response_fields(status_code, response_body, error_object.error_id, error_object.errors, context)
34
32
  end
35
33
  if error_object.is_a?(Worldline::Connect::SDK::V1::Domain::RefundErrorResponse)
36
34
  return DeclinedRefundException.new(status_code, response_body, error_object) unless error_object.refund_result.nil?
37
- return create_exception_from_errors(status_code, response_body, error_object.error_id, error_object.errors, context)
35
+ return create_exception_from_response_fields(status_code, response_body, error_object.error_id, error_object.errors, context)
38
36
  end
39
37
  raise ArgumentError.new("unsupported error object type: " + error_object.class.name) unless error_object.is_a?(Worldline::Connect::SDK::V1::Domain::ErrorResponse)
40
- create_exception_from_errors(status_code, response_body, error_object.error_id, error_object.errors, context)
38
+ create_exception_from_response_fields(status_code, response_body, error_object.error_id, error_object.errors, context)
41
39
  end
42
40
 
43
41
  private
44
42
 
45
- def self.create_exception_from_errors(status_code, response_body, error_id, errors, context)
43
+ def self.create_exception_from_response_fields(status_code, response_body, error_id, errors, context)
46
44
  case status_code
47
45
  when 400
48
- return ValidationException.new(status_code, response_body, error_id, errors)
46
+ return ValidationException.new(status_code, response_body, error_id, errors)
49
47
  when 403
50
48
  return AuthorizationException.new(status_code, response_body, error_id, errors)
51
- when 404, 410
49
+ when 404
52
50
  return ReferenceException.new(status_code, response_body, error_id, errors)
53
51
  when 409
54
52
  if is_idempotence_error(errors, context)
55
53
  idempotence_key = context.idempotence_key
56
54
  idempotence_request_timestamp = context.idempotence_request_timestamp
57
- return IdempotenceException.new(status_code, response_body, error_id,
58
- errors, idempotence_key,
59
- idempotence_request_timestamp)
55
+ return IdempotenceException.new(status_code, response_body, error_id, errors,
56
+ idempotence_key, idempotence_request_timestamp)
60
57
  else
61
58
  return ReferenceException.new(status_code, response_body, error_id, errors)
62
59
  end
63
- when 500, 502, 503
60
+ when 410
61
+ return ReferenceException.new(status_code, response_body, error_id, errors)
62
+ when 500
63
+ return PlatformException.new(status_code, response_body, error_id, errors)
64
+ when 502
65
+ return PlatformException.new(status_code, response_body, error_id, errors)
66
+ when 503
64
67
  return PlatformException.new(status_code, response_body, error_id, errors)
65
68
  else
66
69
  return ApiException.new(status_code, response_body, error_id, errors)
@@ -68,7 +71,9 @@ module Worldline
68
71
  end
69
72
 
70
73
  def self.is_idempotence_error(errors, context)
71
- !context.nil? && !context.idempotence_key.nil? && errors.length == 1 && errors[0].code == '1409'
74
+ !context&.idempotence_key.nil? &&
75
+ errors&.length == 1 &&
76
+ errors[0]&.code == '1409'
72
77
  end
73
78
  end
74
79
  end
@@ -8,15 +8,14 @@ module Worldline
8
8
  module Connect
9
9
  module SDK
10
10
  module V1
11
- # This exception is thrown when a response from the Worldline Global Collect platform indicates
12
- # a request with the same _idempotence_key_ was received earlier.
11
+ # Represents an error response from the Worldline Global Collect platform when an idempotent request failed because the first request has not finished yet.
13
12
  # The _idempotence_request_timestamp_ indicates the time when the first request with this _idempotence_key_ arrived.
14
13
  #
15
14
  # @attr_reader [String] idempotence_key The idempotence key used in the request.
16
15
  # @attr_reader [Integer] idempotence_request_timestamp A timestamp indicating the arrival time of the request that conflicts with the request just sent.
17
16
  class IdempotenceException < ApiException
18
17
 
19
- # Create a new IdempotenceException
18
+ # Create a new IdempotenceException.
20
19
  # @see ApiException#initialize
21
20
  def initialize(status_code, response_body, error_id, errors, idempotence_key, idempotence_request_timestamp,
22
21
  message='the Worldline Global Collect platform returned a duplicate request error response')
@@ -26,18 +26,19 @@ module Worldline
26
26
  end
27
27
 
28
28
  # Resource /!{merchantId}/captures/!{captureId} - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/captures/get.html Get capture}
29
+ #
29
30
  # @param capture_id [String]
30
31
  # @param context [Worldline::Connect::SDK::CallContext, nil]
31
32
  # @return [Worldline::Connect::SDK::V1::Domain::CaptureResponse]
33
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
32
34
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
33
35
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
34
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
35
36
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
36
37
  # or there was a conflict (HTTP status code 404, 409 or 410)
37
38
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
38
39
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
39
40
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
40
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
41
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
41
42
  def get(capture_id, context = nil)
42
43
  path_context = {
43
44
  'captureId'.freeze => capture_id,
@@ -56,20 +57,21 @@ module Worldline
56
57
  end
57
58
 
58
59
  # Resource /!{merchantId}/captures/!{captureId}/refund - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/captures/refund.html Create Refund}
60
+ #
59
61
  # @param capture_id [String]
60
62
  # @param body [Worldline::Connect::SDK::V1::Domain::RefundRequest]
61
63
  # @param context [Worldline::Connect::SDK::CallContext, nil]
62
64
  # @return [Worldline::Connect::SDK::V1::Domain::RefundResponse]
63
65
  # @raise [Worldline::Connect::SDK::V1::DeclinedRefundException] if the Worldline Global Collect platform declined / rejected the refund. The refund result will be available from the exception.
66
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
64
67
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
65
68
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
66
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
67
69
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
68
70
  # or there was a conflict (HTTP status code 404, 409 or 410)
69
71
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
70
72
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
71
73
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
72
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
74
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
73
75
  def refund(capture_id, body, context = nil)
74
76
  path_context = {
75
77
  'captureId'.freeze => capture_id,
@@ -25,18 +25,19 @@ module Worldline
25
25
  end
26
26
 
27
27
  # Resource /!{merchantId}/disputes/!{disputeId} - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/disputes/get.html Get dispute}
28
+ #
28
29
  # @param dispute_id [String]
29
30
  # @param context [Worldline::Connect::SDK::CallContext, nil]
30
31
  # @return [Worldline::Connect::SDK::V1::Domain::DisputeResponse]
32
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
31
33
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
32
34
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
33
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
34
35
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
35
36
  # or there was a conflict (HTTP status code 404, 409 or 410)
36
37
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
37
38
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
38
39
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
39
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
40
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
40
41
  def get(dispute_id, context = nil)
41
42
  path_context = {
42
43
  'disputeId'.freeze => dispute_id,
@@ -55,18 +56,19 @@ module Worldline
55
56
  end
56
57
 
57
58
  # Resource /!{merchantId}/disputes/!{disputeId}/submit - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/disputes/submit.html Submit dispute}
59
+ #
58
60
  # @param dispute_id [String]
59
61
  # @param context [Worldline::Connect::SDK::CallContext, nil]
60
62
  # @return [Worldline::Connect::SDK::V1::Domain::DisputeResponse]
63
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
61
64
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
62
65
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
63
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
64
66
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
65
67
  # or there was a conflict (HTTP status code 404, 409 or 410)
66
68
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
67
69
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
68
70
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
69
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
71
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
70
72
  def submit(dispute_id, context = nil)
71
73
  path_context = {
72
74
  'disputeId'.freeze => dispute_id,
@@ -86,18 +88,19 @@ module Worldline
86
88
  end
87
89
 
88
90
  # Resource /!{merchantId}/disputes/!{disputeId}/cancel - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/disputes/cancel.html Cancel dispute}
91
+ #
89
92
  # @param dispute_id [String]
90
93
  # @param context [Worldline::Connect::SDK::CallContext, nil]
91
94
  # @return [Worldline::Connect::SDK::V1::Domain::DisputeResponse]
95
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
92
96
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
93
97
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
94
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
95
98
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
96
99
  # or there was a conflict (HTTP status code 404, 409 or 410)
97
100
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
98
101
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
99
102
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
100
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
103
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
101
104
  def cancel(dispute_id, context = nil)
102
105
  path_context = {
103
106
  'disputeId'.freeze => dispute_id,
@@ -117,19 +120,20 @@ module Worldline
117
120
  end
118
121
 
119
122
  # Resource /!{merchantId}/disputes/!{disputeId} - {https://apireference.connect.worldline-solutions.com/fileserviceapi/v1/en_US/ruby/disputes/uploadFile.html Upload File}
123
+ #
120
124
  # @param dispute_id [String]
121
125
  # @param body [Worldline::Connect::SDK::V1::Merchant::Disputes::UploadFileRequest]
122
126
  # @param context [Worldline::Connect::SDK::CallContext, nil]
123
127
  # @return [Worldline::Connect::SDK::V1::Domain::UploadDisputeFileResponse]
128
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
124
129
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
125
130
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
126
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
127
131
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
128
132
  # or there was a conflict (HTTP status code 404, 409 or 410)
129
133
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
130
134
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
131
135
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
132
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
136
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
133
137
  def upload_file(dispute_id, body, context = nil)
134
138
  path_context = {
135
139
  'disputeId'.freeze => dispute_id,
@@ -12,7 +12,8 @@ module Worldline
12
12
  module Merchant
13
13
  module Disputes
14
14
  # Multipart/form-data parameters for {https://apireference.connect.worldline-solutions.com/fileserviceapi/v1/en_US/ruby/disputes/uploadFile.html Upload File}
15
- # @attr [Worldline::Connect::SDK::UploadableFile] file
15
+ #
16
+ # @attr [Worldline::Connect::SDK::Domain::UploadableFile] file
16
17
  class UploadFileRequest < Worldline::Connect::SDK::Communication::MultipartFormDataRequest
17
18
 
18
19
  attr_accessor :file
@@ -23,18 +23,19 @@ module Worldline
23
23
  end
24
24
 
25
25
  # Resource /!{merchantId}/files/!{fileId} - {https://apireference.connect.worldline-solutions.com/fileserviceapi/v1/en_US/ruby/files/getFile.html Retrieve File}
26
+ #
26
27
  # @param file_id [String]
27
28
  # @param context [Worldline::Connect::SDK::CallContext, nil]
28
29
  # @yield [Array<Worldline::Connect::SDK::Communication::ResponseHeader>, IO] The response headers and body.
30
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
29
31
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
30
32
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
31
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
32
33
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
33
34
  # or there was a conflict (HTTP status code 404, 409 or 410)
34
35
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
35
36
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
36
37
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
37
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
38
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
38
39
  def get_file(file_id, context = nil)
39
40
  path_context = {
40
41
  'fileId'.freeze => file_id,
@@ -25,18 +25,19 @@ module Worldline
25
25
  end
26
26
 
27
27
  # Resource /!{merchantId}/hostedcheckouts - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/hostedcheckouts/create.html Create hosted checkout}
28
+ #
28
29
  # @param body [Worldline::Connect::SDK::V1::Domain::CreateHostedCheckoutRequest]
29
30
  # @param context [Worldline::Connect::SDK::CallContext, nil]
30
31
  # @return [Worldline::Connect::SDK::V1::Domain::CreateHostedCheckoutResponse]
32
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
31
33
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
32
34
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
33
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
34
35
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
35
36
  # or there was a conflict (HTTP status code 404, 409 or 410)
36
37
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
37
38
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
38
39
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
39
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
40
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
40
41
  def create(body, context = nil)
41
42
  uri = instantiate_uri('/v1/{merchantId}/hostedcheckouts', nil)
42
43
  @communicator.post(
@@ -53,18 +54,19 @@ module Worldline
53
54
  end
54
55
 
55
56
  # Resource /!{merchantId}/hostedcheckouts/!{hostedCheckoutId} - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/hostedcheckouts/get.html Get hosted checkout status}
57
+ #
56
58
  # @param hosted_checkout_id [String]
57
59
  # @param context [Worldline::Connect::SDK::CallContext, nil]
58
60
  # @return [Worldline::Connect::SDK::V1::Domain::GetHostedCheckoutResponse]
61
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
59
62
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
60
63
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
61
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
62
64
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
63
65
  # or there was a conflict (HTTP status code 404, 409 or 410)
64
66
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
65
67
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
66
68
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
67
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
69
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
68
70
  def get(hosted_checkout_id, context = nil)
69
71
  path_context = {
70
72
  'hostedCheckoutId'.freeze => hosted_checkout_id,
@@ -83,17 +85,18 @@ module Worldline
83
85
  end
84
86
 
85
87
  # Resource /!{merchantId}/hostedcheckouts/!{hostedCheckoutId} - {https://apireference.connect.worldline-solutions.com/s2sapi/v1/en_US/ruby/hostedcheckouts/delete.html Delete hosted checkout}
88
+ #
86
89
  # @param hosted_checkout_id [String]
87
90
  # @param context [Worldline::Connect::SDK::CallContext, nil]
91
+ # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
88
92
  # @raise [Worldline::Connect::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
89
93
  # @raise [Worldline::Connect::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403)
90
- # @raise [Worldline::Connect::SDK::V1::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
91
94
  # @raise [Worldline::Connect::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
92
95
  # or there was a conflict (HTTP status code 404, 409 or 410)
93
96
  # @raise [Worldline::Connect::SDK::V1::PlatformException] if something went wrong at the Worldline Global Collect platform,
94
97
  # the Worldline Global Collect platform was unable to process a message from a downstream partner/acquirer,
95
98
  # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
96
- # @raise [Worldline::Connect::SDK::V1::ApiException]if the Worldline Global Collect platform returned any other error
99
+ # @raise [Worldline::Connect::SDK::V1::ApiException] if the Worldline Global Collect platform returned any other error
97
100
  def delete(hosted_checkout_id, context = nil)
98
101
  path_context = {
99
102
  'hostedCheckoutId'.freeze => hosted_checkout_id,