connect-sdk-ruby 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/connect-sdk-ruby.gemspec +3 -3
  4. data/examples/merchant/payments/create_payment_example.rb +14 -10
  5. data/examples/merchant/payouts/create_payout_example.rb +9 -5
  6. data/lib/ingenico/connect/sdk/api_exception.rb +4 -4
  7. data/lib/ingenico/connect/sdk/api_resource.rb +3 -3
  8. data/lib/ingenico/connect/sdk/authenticator.rb +1 -1
  9. data/lib/ingenico/connect/sdk/authorization_exception.rb +2 -2
  10. data/lib/ingenico/connect/sdk/call_context.rb +1 -1
  11. data/lib/ingenico/connect/sdk/client.rb +1 -1
  12. data/lib/ingenico/connect/sdk/communication_exception.rb +1 -1
  13. data/lib/ingenico/connect/sdk/communicator.rb +10 -10
  14. data/lib/ingenico/connect/sdk/communicator_configuration.rb +11 -11
  15. data/lib/ingenico/connect/sdk/declined_payment_exception.rb +3 -3
  16. data/lib/ingenico/connect/sdk/declined_payout_exception.rb +3 -3
  17. data/lib/ingenico/connect/sdk/declined_refund_exception.rb +3 -3
  18. data/lib/ingenico/connect/sdk/declined_transaction_exception.rb +1 -1
  19. data/lib/ingenico/connect/sdk/defaultimpl/default_authenticator.rb +1 -1
  20. data/lib/ingenico/connect/sdk/defaultimpl/default_connection.rb +5 -5
  21. data/lib/ingenico/connect/sdk/domain/payment/approve_payment_direct_debit_payment_method_specific_input.rb +15 -0
  22. data/lib/ingenico/connect/sdk/domain/payment/approve_payment_non_sepa_direct_debit_payment_method_specific_input.rb +2 -2
  23. data/lib/ingenico/connect/sdk/domain/payment/approve_payment_sepa_direct_debit_payment_method_specific_input.rb +2 -2
  24. data/lib/ingenico/connect/sdk/domain/payment/complete_payment_request.rb +11 -0
  25. data/lib/ingenico/connect/sdk/domain/payment/order.rb +2 -0
  26. data/lib/ingenico/connect/sdk/domain/payment/payment_product840_specific_output.rb +11 -0
  27. data/lib/ingenico/connect/sdk/domain/payment/protection_eligibility.rb +38 -0
  28. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_method_specific_input.rb +11 -0
  29. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_method_specific_input_base.rb +14 -0
  30. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_product840_specific_input.rb +38 -0
  31. data/lib/ingenico/connect/sdk/domain/payment/shopping_cart.rb +14 -0
  32. data/lib/ingenico/connect/sdk/domain/product/abstract_indicator.rb +38 -0
  33. data/lib/ingenico/connect/sdk/domain/product/authentication_indicator.rb +15 -0
  34. data/lib/ingenico/connect/sdk/domain/product/payment_product.rb +11 -0
  35. data/lib/ingenico/connect/sdk/endpoint_configuration.rb +10 -10
  36. data/lib/ingenico/connect/sdk/factory.rb +4 -4
  37. data/lib/ingenico/connect/sdk/global_collect_exception.rb +3 -3
  38. data/lib/ingenico/connect/sdk/idempotence_exception.rb +2 -2
  39. data/lib/ingenico/connect/sdk/merchant/captures/captures_client.rb +3 -3
  40. data/lib/ingenico/connect/sdk/merchant/hostedcheckouts/hostedcheckouts_client.rb +6 -6
  41. data/lib/ingenico/connect/sdk/merchant/payments/payments_client.rb +38 -38
  42. data/lib/ingenico/connect/sdk/merchant/payouts/payouts_client.rb +16 -16
  43. data/lib/ingenico/connect/sdk/merchant/productgroups/productgroups_client.rb +6 -6
  44. data/lib/ingenico/connect/sdk/merchant/products/products_client.rb +15 -15
  45. data/lib/ingenico/connect/sdk/merchant/refunds/refunds_client.rb +12 -12
  46. data/lib/ingenico/connect/sdk/merchant/riskassessments/riskassessments_client.rb +6 -6
  47. data/lib/ingenico/connect/sdk/merchant/services/services_client.rb +12 -12
  48. data/lib/ingenico/connect/sdk/merchant/sessions/sessions_client.rb +3 -3
  49. data/lib/ingenico/connect/sdk/merchant/tokens/tokens_client.rb +15 -15
  50. data/lib/ingenico/connect/sdk/meta_data_provider.rb +2 -2
  51. data/lib/ingenico/connect/sdk/modules.rb +24 -24
  52. data/lib/ingenico/connect/sdk/not_found_exception.rb +1 -1
  53. data/lib/ingenico/connect/sdk/reference_exception.rb +2 -2
  54. data/lib/ingenico/connect/sdk/response_exception.rb +7 -7
  55. data/lib/ingenico/connect/sdk/session.rb +3 -3
  56. data/lib/ingenico/connect/sdk/validation_exception.rb +3 -3
  57. data/spec/integration/convert_amount_spec.rb +1 -1
  58. data/spec/integration/risk_assessments_spec.rb +1 -1
  59. metadata +11 -6
@@ -99,25 +99,25 @@ module Ingenico::Connect::SDK
99
99
  @http_client.session_count
100
100
  end
101
101
 
102
- # Performs a GET request to the GlobalCollect platform
102
+ # Performs a GET request to the Ingenico ePayments platform
103
103
  # @see request
104
104
  def get(uri, request_headers)
105
105
  request('get', uri, request_headers)
106
106
  end
107
107
 
108
- # Performs a DELETE request to the GlobalCollect platform
108
+ # Performs a DELETE request to the Ingenico ePayments platform
109
109
  # @see request
110
110
  def delete(uri, request_headers)
111
111
  request('delete', uri, request_headers)
112
112
  end
113
113
 
114
- # Performs a POST request to the GlobalCollect platform
114
+ # Performs a POST request to the Ingenico ePayments platform
115
115
  # @see request
116
116
  def post(uri, request_headers, body)
117
117
  request('post', uri, request_headers, body)
118
118
  end
119
119
 
120
- # Performs a PUT request to the GlobalCollect platform
120
+ # Performs a PUT request to the Ingenico ePayments platform
121
121
  # @see request
122
122
  def put(uri, request_headers, body)
123
123
  request('put', uri, request_headers, body)
@@ -125,7 +125,7 @@ module Ingenico::Connect::SDK
125
125
 
126
126
  # performs a HTTP request and returns the response as an {Ingenico::Connect::SDK::Response} object.
127
127
  # Also ensures the request is logged when sent and its response is logged when received.
128
- # Raises {Ingenico::Connect::SDK::CommunicationException} when communication with the GlobalCollect platform was not successful.
128
+ # Raises {Ingenico::Connect::SDK::CommunicationException} when communication with the Ingenico ePayments platform was not successful.
129
129
  # method:: 'GET', 'DELETE', 'POST' or 'PUT' depending on the HTTP method being used.
130
130
  # uri:: Full URI of the location the request is targeted at, including query parameters.
131
131
  # request_headers:: {Ingenico::Connect::SDK::RequestHeader} list of headers that should be used as HTTP headers in the request.
@@ -0,0 +1,15 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/domain/payment/approve_payment_payment_method_specific_input'
6
+
7
+ module Ingenico::Connect::SDK
8
+ module Domain
9
+ module Payment
10
+
11
+ class ApprovePaymentDirectDebitPaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Payment::ApprovePaymentPaymentMethodSpecificInput
12
+ end
13
+ end
14
+ end
15
+ end
@@ -2,13 +2,13 @@
2
2
  # This class was auto-generated from the API references found at
3
3
  # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
4
  #
5
- require 'ingenico/connect/sdk/domain/payment/approve_payment_payment_method_specific_input'
5
+ require 'ingenico/connect/sdk/domain/payment/approve_payment_direct_debit_payment_method_specific_input'
6
6
 
7
7
  module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Payment
10
10
 
11
- class ApprovePaymentNonSepaDirectDebitPaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Payment::ApprovePaymentPaymentMethodSpecificInput
11
+ class ApprovePaymentNonSepaDirectDebitPaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Payment::ApprovePaymentDirectDebitPaymentMethodSpecificInput
12
12
  end
13
13
  end
14
14
  end
@@ -2,13 +2,13 @@
2
2
  # This class was auto-generated from the API references found at
3
3
  # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
4
  #
5
- require 'ingenico/connect/sdk/domain/payment/approve_payment_payment_method_specific_input'
5
+ require 'ingenico/connect/sdk/domain/payment/approve_payment_direct_debit_payment_method_specific_input'
6
6
 
7
7
  module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Payment
10
10
 
11
- class ApprovePaymentSepaDirectDebitPaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Payment::ApprovePaymentPaymentMethodSpecificInput
11
+ class ApprovePaymentSepaDirectDebitPaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Payment::ApprovePaymentDirectDebitPaymentMethodSpecificInput
12
12
  end
13
13
  end
14
14
  end
@@ -4,6 +4,7 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/data_object'
6
6
  require 'ingenico/connect/sdk/domain/payment/complete_payment_card_payment_method_specific_input'
7
+ require 'ingenico/connect/sdk/domain/payment/order'
7
8
 
8
9
  module Ingenico::Connect::SDK
9
10
  module Domain
@@ -14,9 +15,13 @@ module Ingenico::Connect::SDK
14
15
  # {Ingenico::Connect::SDK::Domain::Payment::CompletePaymentCardPaymentMethodSpecificInput}
15
16
  attr_accessor :card_payment_method_specific_input
16
17
 
18
+ # {Ingenico::Connect::SDK::Domain::Payment::Order}
19
+ attr_accessor :order
20
+
17
21
  def to_h
18
22
  hash = super
19
23
  add_to_hash(hash, 'cardPaymentMethodSpecificInput', @card_payment_method_specific_input)
24
+ add_to_hash(hash, 'order', @order)
20
25
  hash
21
26
  end
22
27
 
@@ -28,6 +33,12 @@ module Ingenico::Connect::SDK
28
33
  end
29
34
  @card_payment_method_specific_input = Ingenico::Connect::SDK::Domain::Payment::CompletePaymentCardPaymentMethodSpecificInput.new_from_hash(hash['cardPaymentMethodSpecificInput'])
30
35
  end
36
+ if hash.has_key?('order')
37
+ if !(hash['order'].is_a? Hash)
38
+ raise TypeError, "value '%s' is not a Hash" % [hash['order']]
39
+ end
40
+ @order = Ingenico::Connect::SDK::Domain::Payment::Order.new_from_hash(hash['order'])
41
+ end
31
42
  end
32
43
  end
33
44
  end
@@ -26,6 +26,8 @@ module Ingenico::Connect::SDK
26
26
  attr_accessor :customer
27
27
 
28
28
  # Array of {Ingenico::Connect::SDK::Domain::Payment::LineItem}
29
+ #
30
+ # Deprecated; Use ShoppingCart.items instead
29
31
  attr_accessor :items
30
32
 
31
33
  # {Ingenico::Connect::SDK::Domain::Payment::OrderReferences}
@@ -5,6 +5,7 @@
5
5
  require 'ingenico/connect/sdk/data_object'
6
6
  require 'ingenico/connect/sdk/domain/definitions/address'
7
7
  require 'ingenico/connect/sdk/domain/payment/payment_product840_customer_account'
8
+ require 'ingenico/connect/sdk/domain/payment/protection_eligibility'
8
9
 
9
10
  module Ingenico::Connect::SDK
10
11
  module Domain
@@ -18,10 +19,14 @@ module Ingenico::Connect::SDK
18
19
  # {Ingenico::Connect::SDK::Domain::Definitions::Address}
19
20
  attr_accessor :customer_address
20
21
 
22
+ # {Ingenico::Connect::SDK::Domain::Payment::ProtectionEligibility}
23
+ attr_accessor :protection_eligibility
24
+
21
25
  def to_h
22
26
  hash = super
23
27
  add_to_hash(hash, 'customerAccount', @customer_account)
24
28
  add_to_hash(hash, 'customerAddress', @customer_address)
29
+ add_to_hash(hash, 'protectionEligibility', @protection_eligibility)
25
30
  hash
26
31
  end
27
32
 
@@ -39,6 +44,12 @@ module Ingenico::Connect::SDK
39
44
  end
40
45
  @customer_address = Ingenico::Connect::SDK::Domain::Definitions::Address.new_from_hash(hash['customerAddress'])
41
46
  end
47
+ if hash.has_key?('protectionEligibility')
48
+ if !(hash['protectionEligibility'].is_a? Hash)
49
+ raise TypeError, "value '%s' is not a Hash" % [hash['protectionEligibility']]
50
+ end
51
+ @protection_eligibility = Ingenico::Connect::SDK::Domain::Payment::ProtectionEligibility.new_from_hash(hash['protectionEligibility'])
52
+ end
42
53
  end
43
54
  end
44
55
  end
@@ -0,0 +1,38 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/data_object'
6
+
7
+ module Ingenico::Connect::SDK
8
+ module Domain
9
+ module Payment
10
+
11
+ class ProtectionEligibility < Ingenico::Connect::SDK::DataObject
12
+
13
+ # String
14
+ attr_accessor :eligibility
15
+
16
+ # String
17
+ attr_accessor :type
18
+
19
+ def to_h
20
+ hash = super
21
+ add_to_hash(hash, 'eligibility', @eligibility)
22
+ add_to_hash(hash, 'type', @type)
23
+ hash
24
+ end
25
+
26
+ def from_hash(hash)
27
+ super
28
+ if hash.has_key?('eligibility')
29
+ @eligibility = hash['eligibility']
30
+ end
31
+ if hash.has_key?('type')
32
+ @type = hash['type']
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -5,6 +5,7 @@
5
5
  require 'ingenico/connect/sdk/domain/payment/redirect_payment_method_specific_input_base'
6
6
  require 'ingenico/connect/sdk/domain/payment/redirect_payment_product809_specific_input'
7
7
  require 'ingenico/connect/sdk/domain/payment/redirect_payment_product816_specific_input'
8
+ require 'ingenico/connect/sdk/domain/payment/redirect_payment_product840_specific_input'
8
9
  require 'ingenico/connect/sdk/domain/payment/redirect_payment_product882_specific_input'
9
10
 
10
11
  module Ingenico::Connect::SDK
@@ -22,6 +23,9 @@ module Ingenico::Connect::SDK
22
23
  # {Ingenico::Connect::SDK::Domain::Payment::RedirectPaymentProduct816SpecificInput}
23
24
  attr_accessor :payment_product816_specific_input
24
25
 
26
+ # {Ingenico::Connect::SDK::Domain::Payment::RedirectPaymentProduct840SpecificInput}
27
+ attr_accessor :payment_product840_specific_input
28
+
25
29
  # {Ingenico::Connect::SDK::Domain::Payment::RedirectPaymentProduct882SpecificInput}
26
30
  attr_accessor :payment_product882_specific_input
27
31
 
@@ -33,6 +37,7 @@ module Ingenico::Connect::SDK
33
37
  add_to_hash(hash, 'isRecurring', @is_recurring)
34
38
  add_to_hash(hash, 'paymentProduct809SpecificInput', @payment_product809_specific_input)
35
39
  add_to_hash(hash, 'paymentProduct816SpecificInput', @payment_product816_specific_input)
40
+ add_to_hash(hash, 'paymentProduct840SpecificInput', @payment_product840_specific_input)
36
41
  add_to_hash(hash, 'paymentProduct882SpecificInput', @payment_product882_specific_input)
37
42
  add_to_hash(hash, 'returnUrl', @return_url)
38
43
  hash
@@ -55,6 +60,12 @@ module Ingenico::Connect::SDK
55
60
  end
56
61
  @payment_product816_specific_input = Ingenico::Connect::SDK::Domain::Payment::RedirectPaymentProduct816SpecificInput.new_from_hash(hash['paymentProduct816SpecificInput'])
57
62
  end
63
+ if hash.has_key?('paymentProduct840SpecificInput')
64
+ if !(hash['paymentProduct840SpecificInput'].is_a? Hash)
65
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct840SpecificInput']]
66
+ end
67
+ @payment_product840_specific_input = Ingenico::Connect::SDK::Domain::Payment::RedirectPaymentProduct840SpecificInput.new_from_hash(hash['paymentProduct840SpecificInput'])
68
+ end
58
69
  if hash.has_key?('paymentProduct882SpecificInput')
59
70
  if !(hash['paymentProduct882SpecificInput'].is_a? Hash)
60
71
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct882SpecificInput']]
@@ -16,14 +16,22 @@ module Ingenico::Connect::SDK
16
16
  # String
17
17
  attr_accessor :recurring_payment_sequence_indicator
18
18
 
19
+ # true/false
20
+ attr_accessor :requires_approval
21
+
19
22
  # String
20
23
  attr_accessor :token
21
24
 
25
+ # true/false
26
+ attr_accessor :tokenize
27
+
22
28
  def to_h
23
29
  hash = super
24
30
  add_to_hash(hash, 'expirationPeriod', @expiration_period)
25
31
  add_to_hash(hash, 'recurringPaymentSequenceIndicator', @recurring_payment_sequence_indicator)
32
+ add_to_hash(hash, 'requiresApproval', @requires_approval)
26
33
  add_to_hash(hash, 'token', @token)
34
+ add_to_hash(hash, 'tokenize', @tokenize)
27
35
  hash
28
36
  end
29
37
 
@@ -35,9 +43,15 @@ module Ingenico::Connect::SDK
35
43
  if hash.has_key?('recurringPaymentSequenceIndicator')
36
44
  @recurring_payment_sequence_indicator = hash['recurringPaymentSequenceIndicator']
37
45
  end
46
+ if hash.has_key?('requiresApproval')
47
+ @requires_approval = hash['requiresApproval']
48
+ end
38
49
  if hash.has_key?('token')
39
50
  @token = hash['token']
40
51
  end
52
+ if hash.has_key?('tokenize')
53
+ @tokenize = hash['tokenize']
54
+ end
41
55
  end
42
56
  end
43
57
  end
@@ -0,0 +1,38 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/data_object'
6
+
7
+ module Ingenico::Connect::SDK
8
+ module Domain
9
+ module Payment
10
+
11
+ class RedirectPaymentProduct840SpecificInput < Ingenico::Connect::SDK::DataObject
12
+
13
+ # String
14
+ attr_accessor :custom
15
+
16
+ # true/false
17
+ attr_accessor :is_shortcut
18
+
19
+ def to_h
20
+ hash = super
21
+ add_to_hash(hash, 'custom', @custom)
22
+ add_to_hash(hash, 'isShortcut', @is_shortcut)
23
+ hash
24
+ end
25
+
26
+ def from_hash(hash)
27
+ super
28
+ if hash.has_key?('custom')
29
+ @custom = hash['custom']
30
+ end
31
+ if hash.has_key?('isShortcut')
32
+ @is_shortcut = hash['isShortcut']
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -4,6 +4,7 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/data_object'
6
6
  require 'ingenico/connect/sdk/domain/payment/amount_breakdown'
7
+ require 'ingenico/connect/sdk/domain/payment/line_item'
7
8
 
8
9
  module Ingenico::Connect::SDK
9
10
  module Domain
@@ -14,9 +15,13 @@ module Ingenico::Connect::SDK
14
15
  # Array of {Ingenico::Connect::SDK::Domain::Payment::AmountBreakdown}
15
16
  attr_accessor :amount_breakdown
16
17
 
18
+ # Array of {Ingenico::Connect::SDK::Domain::Payment::LineItem}
19
+ attr_accessor :items
20
+
17
21
  def to_h
18
22
  hash = super
19
23
  add_to_hash(hash, 'amountBreakdown', @amount_breakdown)
24
+ add_to_hash(hash, 'items', @items)
20
25
  hash
21
26
  end
22
27
 
@@ -31,6 +36,15 @@ module Ingenico::Connect::SDK
31
36
  @amount_breakdown << Ingenico::Connect::SDK::Domain::Payment::AmountBreakdown.new_from_hash(e)
32
37
  end
33
38
  end
39
+ if hash.has_key?('items')
40
+ if !(hash['items'].is_a? Array)
41
+ raise TypeError, "value '%s' is not an Array" % [hash['items']]
42
+ end
43
+ @items = []
44
+ hash['items'].each do |e|
45
+ @items << Ingenico::Connect::SDK::Domain::Payment::LineItem.new_from_hash(e)
46
+ end
47
+ end
34
48
  end
35
49
  end
36
50
  end
@@ -0,0 +1,38 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/data_object'
6
+
7
+ module Ingenico::Connect::SDK
8
+ module Domain
9
+ module Product
10
+
11
+ class AbstractIndicator < Ingenico::Connect::SDK::DataObject
12
+
13
+ # String
14
+ attr_accessor :name
15
+
16
+ # String
17
+ attr_accessor :value
18
+
19
+ def to_h
20
+ hash = super
21
+ add_to_hash(hash, 'name', @name)
22
+ add_to_hash(hash, 'value', @value)
23
+ hash
24
+ end
25
+
26
+ def from_hash(hash)
27
+ super
28
+ if hash.has_key?('name')
29
+ @name = hash['name']
30
+ end
31
+ if hash.has_key?('value')
32
+ @value = hash['value']
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,15 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/domain/product/abstract_indicator'
6
+
7
+ module Ingenico::Connect::SDK
8
+ module Domain
9
+ module Product
10
+
11
+ class AuthenticationIndicator < Ingenico::Connect::SDK::Domain::Product::AbstractIndicator
12
+ end
13
+ end
14
+ end
15
+ end
@@ -4,6 +4,7 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/data_object'
6
6
  require 'ingenico/connect/sdk/domain/product/account_on_file'
7
+ require 'ingenico/connect/sdk/domain/product/authentication_indicator'
7
8
  require 'ingenico/connect/sdk/domain/product/payment_product_display_hints'
8
9
  require 'ingenico/connect/sdk/domain/product/payment_product_field'
9
10
 
@@ -22,6 +23,9 @@ module Ingenico::Connect::SDK
22
23
  # true/false
23
24
  attr_accessor :allows_tokenization
24
25
 
26
+ # {Ingenico::Connect::SDK::Domain::Product::AuthenticationIndicator}
27
+ attr_accessor :authentication_indicator
28
+
25
29
  # true/false
26
30
  attr_accessor :auto_tokenized
27
31
 
@@ -60,6 +64,7 @@ module Ingenico::Connect::SDK
60
64
  add_to_hash(hash, 'accountsOnFile', @accounts_on_file)
61
65
  add_to_hash(hash, 'allowsRecurring', @allows_recurring)
62
66
  add_to_hash(hash, 'allowsTokenization', @allows_tokenization)
67
+ add_to_hash(hash, 'authenticationIndicator', @authentication_indicator)
63
68
  add_to_hash(hash, 'autoTokenized', @auto_tokenized)
64
69
  add_to_hash(hash, 'canBeIframed', @can_be_iframed)
65
70
  add_to_hash(hash, 'displayHints', @display_hints)
@@ -91,6 +96,12 @@ module Ingenico::Connect::SDK
91
96
  if hash.has_key?('allowsTokenization')
92
97
  @allows_tokenization = hash['allowsTokenization']
93
98
  end
99
+ if hash.has_key?('authenticationIndicator')
100
+ if !(hash['authenticationIndicator'].is_a? Hash)
101
+ raise TypeError, "value '%s' is not a Hash" % [hash['authenticationIndicator']]
102
+ end
103
+ @authentication_indicator = Ingenico::Connect::SDK::Domain::Product::AuthenticationIndicator.new_from_hash(hash['authenticationIndicator'])
104
+ end
94
105
  if hash.has_key?('autoTokenized')
95
106
  @auto_tokenized = hash['autoTokenized']
96
107
  end