connect-sdk-ruby 2.15.0 → 2.19.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 (27) hide show
  1. checksums.yaml +4 -4
  2. data/connect-sdk-ruby.gemspec +1 -1
  3. data/examples/merchant/payments/complete_payment_example.rb +1 -1
  4. data/examples/merchant/payments/create_payment_example.rb +1 -1
  5. data/examples/merchant/products/create_payment_product_session_example.rb +1 -1
  6. data/examples/merchant/riskassessments/risk_assessment_cards_example.rb +1 -1
  7. data/examples/merchant/tokens/update_token_example.rb +1 -1
  8. data/lib/ingenico/connect/sdk/domain/definitions/additional_order_input_airline_data.rb +9 -0
  9. data/lib/ingenico/connect/sdk/domain/definitions/lodging_charge.rb +46 -0
  10. data/lib/ingenico/connect/sdk/domain/definitions/lodging_data.rb +147 -0
  11. data/lib/ingenico/connect/sdk/domain/definitions/lodging_room.rb +88 -0
  12. data/lib/ingenico/connect/sdk/domain/hostedcheckout/mobile_payment_method_specific_input_hosted_checkout.rb +28 -0
  13. data/lib/ingenico/connect/sdk/domain/hostedcheckout/mobile_payment_product320_specific_input_hosted_checkout.rb +9 -0
  14. data/lib/ingenico/connect/sdk/domain/payment/additional_order_input.rb +9 -0
  15. data/lib/ingenico/connect/sdk/domain/payment/decrypted_payment_data.rb +2 -0
  16. data/lib/ingenico/connect/sdk/domain/payment/exemption_output.rb +46 -0
  17. data/lib/ingenico/connect/sdk/domain/payment/g_pay_three_d_secure.rb +62 -0
  18. data/lib/ingenico/connect/sdk/domain/payment/mobile_payment_method_specific_input.rb +16 -0
  19. data/lib/ingenico/connect/sdk/domain/payment/mobile_payment_product320_specific_input.rb +34 -0
  20. data/lib/ingenico/connect/sdk/domain/payment/non_sepa_direct_debit_payment_method_specific_input.rb +7 -0
  21. data/lib/ingenico/connect/sdk/domain/payment/sepa_direct_debit_payment_method_specific_input.rb +7 -0
  22. data/lib/ingenico/connect/sdk/domain/payment/three_d_secure_results.rb +9 -0
  23. data/lib/ingenico/connect/sdk/domain/product/payment_product.rb +7 -0
  24. data/lib/ingenico/connect/sdk/meta_data_provider.rb +1 -1
  25. data/spec/integration/payment_products_spec.rb +13 -0
  26. data/spec/integration/token_spec.rb +1 -1
  27. metadata +8 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eff2384d596a8483e46b3e71689131ce8fccf97feda1d1df9e1a0cb618d58d4c
4
- data.tar.gz: f256554265099855c5247b73eadc47eabc4af887a97e9d4d7bd1d1e371a3d216
3
+ metadata.gz: ab500d1794ddeac60cc23464a21c5b96093f594f42410f708de6185080ea8432
4
+ data.tar.gz: bcfab9d7858aa7f249e400f4e14b9bc0faf2df97901880328e5301f21014d0d7
5
5
  SHA512:
6
- metadata.gz: b3f37d6b5a373ff93acd502fbb923138edb2db68dbcf252397fe085cc1ec867b9e10bce8a021787c1fc1daf8241b82cf7a5ba98179763b94f4a6789c26fa24ce
7
- data.tar.gz: 8318f668ce6dd6ed7da02d43895ab1b3a80b58f2640cadfb76644feeeba51630465e36ada81b8bb78007812035735bfba98f7d72d9f0ef22771701626e75fd9a
6
+ metadata.gz: c362b90a182eca7d0ec52b61b9095a4e3982e84cbcdd4c39a4a49fde7ef557c46a2398632adc62109f21e1cbcfc44f02c0d0b1af4ba0debd329227cd8884401f
7
+ data.tar.gz: 06d5e09ea6c58b8fafb75559d1ef50a439bab792d0ea74cfb3612d68b991b5a95ce02f2bcd9dcaca897d3d107ffcbbb36dd0c943835dc144ade6cbaeacabf11f
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = 'connect-sdk-ruby'
3
- spec.version = '2.15.0'
3
+ spec.version = '2.19.0'
4
4
  spec.authors = ['Ingenico ePayments']
5
5
  spec.email = ['github@epay.ingenico.com']
6
6
  spec.summary = %q{SDK to communicate with the Ingenico ePayments platform using the Ingenico Connect Server API}
@@ -15,7 +15,7 @@ def example
15
15
  card = Definitions::CardWithoutCvv.new
16
16
  card.card_number = '67030000000000003'
17
17
  card.cardholder_name = 'Wile E. Coyote'
18
- card.expiry_date = '1220'
18
+ card.expiry_date = '1299'
19
19
 
20
20
  card_payment_method_specific_input = Payment::CompletePaymentCardPaymentMethodSpecificInput.new
21
21
  card_payment_method_specific_input.card = card
@@ -37,7 +37,7 @@ def example
37
37
  card.card_number = '4567350000427977'
38
38
  card.cardholder_name = 'Wile E. Coyote'
39
39
  card.cvv = '123'
40
- card.expiry_date = '1220'
40
+ card.expiry_date = '1299'
41
41
 
42
42
  authentication_amount = Definitions::AmountOfMoney.new
43
43
  authentication_amount.amount = 2980
@@ -13,7 +13,7 @@ def example
13
13
  payment_product_session302_specific_input = Product::MobilePaymentProductSession302SpecificInput.new
14
14
  payment_product_session302_specific_input.display_name = 'Ingenico'
15
15
  payment_product_session302_specific_input.domain_name = 'pay1.secured-by-ingenico.com'
16
- payment_product_session302_specific_input.validation_url = 'https://apple-pay-gateway-cert.apple.com/paymentservices/startSession'
16
+ payment_product_session302_specific_input.validation_url = '<VALIDATION URL RECEIVED FROM APPLE>'
17
17
 
18
18
  body = Product::CreatePaymentProductSessionRequest.new
19
19
  body.payment_product_session302_specific_input = payment_product_session302_specific_input
@@ -21,7 +21,7 @@ def example
21
21
  card = Definitions::Card.new
22
22
  card.card_number = '4567350000427977'
23
23
  card.cvv = '123'
24
- card.expiry_date = '0820'
24
+ card.expiry_date = '1299'
25
25
 
26
26
  flight_legs = []
27
27
 
@@ -47,7 +47,7 @@ def example
47
47
  card_without_cvv = Definitions::CardWithoutCvv.new
48
48
  card_without_cvv.card_number = '4567350000427977'
49
49
  card_without_cvv.cardholder_name = 'Wile E. Coyote'
50
- card_without_cvv.expiry_date = '0820'
50
+ card_without_cvv.expiry_date = '1299'
51
51
  card_without_cvv.issue_number = '12'
52
52
 
53
53
  data = Token::TokenCardData.new
@@ -4,20 +4,25 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/data_object'
6
6
  require 'ingenico/connect/sdk/domain/definitions/airline_data'
7
+ require 'ingenico/connect/sdk/domain/definitions/lodging_data'
7
8
 
8
9
  module Ingenico::Connect::SDK
9
10
  module Domain
10
11
  module Definitions
11
12
 
12
13
  # @attr [Ingenico::Connect::SDK::Domain::Definitions::AirlineData] airline_data
14
+ # @attr [Ingenico::Connect::SDK::Domain::Definitions::LodgingData] lodging_data
13
15
  class AdditionalOrderInputAirlineData < Ingenico::Connect::SDK::DataObject
14
16
 
15
17
  attr_accessor :airline_data
16
18
 
19
+ attr_accessor :lodging_data
20
+
17
21
  # @return (Hash)
18
22
  def to_h
19
23
  hash = super
20
24
  hash['airlineData'] = @airline_data.to_h unless @airline_data.nil?
25
+ hash['lodgingData'] = @lodging_data.to_h unless @lodging_data.nil?
21
26
  hash
22
27
  end
23
28
 
@@ -27,6 +32,10 @@ module Ingenico::Connect::SDK
27
32
  raise TypeError, "value '%s' is not a Hash" % [hash['airlineData']] unless hash['airlineData'].is_a? Hash
28
33
  @airline_data = Ingenico::Connect::SDK::Domain::Definitions::AirlineData.new_from_hash(hash['airlineData'])
29
34
  end
35
+ if hash.has_key? 'lodgingData'
36
+ raise TypeError, "value '%s' is not a Hash" % [hash['lodgingData']] unless hash['lodgingData'].is_a? Hash
37
+ @lodging_data = Ingenico::Connect::SDK::Domain::Definitions::LodgingData.new_from_hash(hash['lodgingData'])
38
+ end
30
39
  end
31
40
  end
32
41
  end
@@ -0,0 +1,46 @@
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 Definitions
10
+
11
+ # @attr [Integer] charge_amount
12
+ # @attr [String] charge_amount_currency_code
13
+ # @attr [String] charge_type
14
+ class LodgingCharge < Ingenico::Connect::SDK::DataObject
15
+
16
+ attr_accessor :charge_amount
17
+
18
+ attr_accessor :charge_amount_currency_code
19
+
20
+ attr_accessor :charge_type
21
+
22
+ # @return (Hash)
23
+ def to_h
24
+ hash = super
25
+ hash['chargeAmount'] = @charge_amount unless @charge_amount.nil?
26
+ hash['chargeAmountCurrencyCode'] = @charge_amount_currency_code unless @charge_amount_currency_code.nil?
27
+ hash['chargeType'] = @charge_type unless @charge_type.nil?
28
+ hash
29
+ end
30
+
31
+ def from_hash(hash)
32
+ super
33
+ if hash.has_key? 'chargeAmount'
34
+ @charge_amount = hash['chargeAmount']
35
+ end
36
+ if hash.has_key? 'chargeAmountCurrencyCode'
37
+ @charge_amount_currency_code = hash['chargeAmountCurrencyCode']
38
+ end
39
+ if hash.has_key? 'chargeType'
40
+ @charge_type = hash['chargeType']
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,147 @@
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
+ require 'ingenico/connect/sdk/domain/definitions/lodging_charge'
7
+ require 'ingenico/connect/sdk/domain/definitions/lodging_room'
8
+
9
+ module Ingenico::Connect::SDK
10
+ module Domain
11
+ module Definitions
12
+
13
+ # @attr [Array<Ingenico::Connect::SDK::Domain::Definitions::LodgingCharge>] charges
14
+ # @attr [String] check_in_date
15
+ # @attr [String] check_out_date
16
+ # @attr [String] folio_number
17
+ # @attr [true/false] is_confirmed_reservation
18
+ # @attr [true/false] is_facility_fire_safety_conform
19
+ # @attr [true/false] is_no_show
20
+ # @attr [true/false] is_preference_smoking_room
21
+ # @attr [Integer] number_of_adults
22
+ # @attr [Integer] number_of_nights
23
+ # @attr [Integer] number_of_rooms
24
+ # @attr [String] program_code
25
+ # @attr [String] property_customer_service_phone_number
26
+ # @attr [String] property_phone_number
27
+ # @attr [String] renter_name
28
+ # @attr [Array<Ingenico::Connect::SDK::Domain::Definitions::LodgingRoom>] rooms
29
+ class LodgingData < Ingenico::Connect::SDK::DataObject
30
+
31
+ attr_accessor :charges
32
+
33
+ attr_accessor :check_in_date
34
+
35
+ attr_accessor :check_out_date
36
+
37
+ attr_accessor :folio_number
38
+
39
+ attr_accessor :is_confirmed_reservation
40
+
41
+ attr_accessor :is_facility_fire_safety_conform
42
+
43
+ attr_accessor :is_no_show
44
+
45
+ attr_accessor :is_preference_smoking_room
46
+
47
+ attr_accessor :number_of_adults
48
+
49
+ attr_accessor :number_of_nights
50
+
51
+ attr_accessor :number_of_rooms
52
+
53
+ attr_accessor :program_code
54
+
55
+ attr_accessor :property_customer_service_phone_number
56
+
57
+ attr_accessor :property_phone_number
58
+
59
+ attr_accessor :renter_name
60
+
61
+ attr_accessor :rooms
62
+
63
+ # @return (Hash)
64
+ def to_h
65
+ hash = super
66
+ hash['charges'] = @charges.collect{|val| val.to_h} unless @charges.nil?
67
+ hash['checkInDate'] = @check_in_date unless @check_in_date.nil?
68
+ hash['checkOutDate'] = @check_out_date unless @check_out_date.nil?
69
+ hash['folioNumber'] = @folio_number unless @folio_number.nil?
70
+ hash['isConfirmedReservation'] = @is_confirmed_reservation unless @is_confirmed_reservation.nil?
71
+ hash['isFacilityFireSafetyConform'] = @is_facility_fire_safety_conform unless @is_facility_fire_safety_conform.nil?
72
+ hash['isNoShow'] = @is_no_show unless @is_no_show.nil?
73
+ hash['isPreferenceSmokingRoom'] = @is_preference_smoking_room unless @is_preference_smoking_room.nil?
74
+ hash['numberOfAdults'] = @number_of_adults unless @number_of_adults.nil?
75
+ hash['numberOfNights'] = @number_of_nights unless @number_of_nights.nil?
76
+ hash['numberOfRooms'] = @number_of_rooms unless @number_of_rooms.nil?
77
+ hash['programCode'] = @program_code unless @program_code.nil?
78
+ hash['propertyCustomerServicePhoneNumber'] = @property_customer_service_phone_number unless @property_customer_service_phone_number.nil?
79
+ hash['propertyPhoneNumber'] = @property_phone_number unless @property_phone_number.nil?
80
+ hash['renterName'] = @renter_name unless @renter_name.nil?
81
+ hash['rooms'] = @rooms.collect{|val| val.to_h} unless @rooms.nil?
82
+ hash
83
+ end
84
+
85
+ def from_hash(hash)
86
+ super
87
+ if hash.has_key? 'charges'
88
+ raise TypeError, "value '%s' is not an Array" % [hash['charges']] unless hash['charges'].is_a? Array
89
+ @charges = []
90
+ hash['charges'].each do |e|
91
+ @charges << Ingenico::Connect::SDK::Domain::Definitions::LodgingCharge.new_from_hash(e)
92
+ end
93
+ end
94
+ if hash.has_key? 'checkInDate'
95
+ @check_in_date = hash['checkInDate']
96
+ end
97
+ if hash.has_key? 'checkOutDate'
98
+ @check_out_date = hash['checkOutDate']
99
+ end
100
+ if hash.has_key? 'folioNumber'
101
+ @folio_number = hash['folioNumber']
102
+ end
103
+ if hash.has_key? 'isConfirmedReservation'
104
+ @is_confirmed_reservation = hash['isConfirmedReservation']
105
+ end
106
+ if hash.has_key? 'isFacilityFireSafetyConform'
107
+ @is_facility_fire_safety_conform = hash['isFacilityFireSafetyConform']
108
+ end
109
+ if hash.has_key? 'isNoShow'
110
+ @is_no_show = hash['isNoShow']
111
+ end
112
+ if hash.has_key? 'isPreferenceSmokingRoom'
113
+ @is_preference_smoking_room = hash['isPreferenceSmokingRoom']
114
+ end
115
+ if hash.has_key? 'numberOfAdults'
116
+ @number_of_adults = hash['numberOfAdults']
117
+ end
118
+ if hash.has_key? 'numberOfNights'
119
+ @number_of_nights = hash['numberOfNights']
120
+ end
121
+ if hash.has_key? 'numberOfRooms'
122
+ @number_of_rooms = hash['numberOfRooms']
123
+ end
124
+ if hash.has_key? 'programCode'
125
+ @program_code = hash['programCode']
126
+ end
127
+ if hash.has_key? 'propertyCustomerServicePhoneNumber'
128
+ @property_customer_service_phone_number = hash['propertyCustomerServicePhoneNumber']
129
+ end
130
+ if hash.has_key? 'propertyPhoneNumber'
131
+ @property_phone_number = hash['propertyPhoneNumber']
132
+ end
133
+ if hash.has_key? 'renterName'
134
+ @renter_name = hash['renterName']
135
+ end
136
+ if hash.has_key? 'rooms'
137
+ raise TypeError, "value '%s' is not an Array" % [hash['rooms']] unless hash['rooms'].is_a? Array
138
+ @rooms = []
139
+ hash['rooms'].each do |e|
140
+ @rooms << Ingenico::Connect::SDK::Domain::Definitions::LodgingRoom.new_from_hash(e)
141
+ end
142
+ end
143
+ end
144
+ end
145
+ end
146
+ end
147
+ end
@@ -0,0 +1,88 @@
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 Definitions
10
+
11
+ # @attr [String] daily_room_rate
12
+ # @attr [String] daily_room_rate_currency_code
13
+ # @attr [String] daily_room_tax_amount
14
+ # @attr [String] daily_room_tax_amount_currency_code
15
+ # @attr [Integer] number_of_nights_at_room_rate
16
+ # @attr [String] room_location
17
+ # @attr [String] room_number
18
+ # @attr [String] type_of_bed
19
+ # @attr [String] type_of_room
20
+ class LodgingRoom < Ingenico::Connect::SDK::DataObject
21
+
22
+ attr_accessor :daily_room_rate
23
+
24
+ attr_accessor :daily_room_rate_currency_code
25
+
26
+ attr_accessor :daily_room_tax_amount
27
+
28
+ attr_accessor :daily_room_tax_amount_currency_code
29
+
30
+ attr_accessor :number_of_nights_at_room_rate
31
+
32
+ attr_accessor :room_location
33
+
34
+ attr_accessor :room_number
35
+
36
+ attr_accessor :type_of_bed
37
+
38
+ attr_accessor :type_of_room
39
+
40
+ # @return (Hash)
41
+ def to_h
42
+ hash = super
43
+ hash['dailyRoomRate'] = @daily_room_rate unless @daily_room_rate.nil?
44
+ hash['dailyRoomRateCurrencyCode'] = @daily_room_rate_currency_code unless @daily_room_rate_currency_code.nil?
45
+ hash['dailyRoomTaxAmount'] = @daily_room_tax_amount unless @daily_room_tax_amount.nil?
46
+ hash['dailyRoomTaxAmountCurrencyCode'] = @daily_room_tax_amount_currency_code unless @daily_room_tax_amount_currency_code.nil?
47
+ hash['numberOfNightsAtRoomRate'] = @number_of_nights_at_room_rate unless @number_of_nights_at_room_rate.nil?
48
+ hash['roomLocation'] = @room_location unless @room_location.nil?
49
+ hash['roomNumber'] = @room_number unless @room_number.nil?
50
+ hash['typeOfBed'] = @type_of_bed unless @type_of_bed.nil?
51
+ hash['typeOfRoom'] = @type_of_room unless @type_of_room.nil?
52
+ hash
53
+ end
54
+
55
+ def from_hash(hash)
56
+ super
57
+ if hash.has_key? 'dailyRoomRate'
58
+ @daily_room_rate = hash['dailyRoomRate']
59
+ end
60
+ if hash.has_key? 'dailyRoomRateCurrencyCode'
61
+ @daily_room_rate_currency_code = hash['dailyRoomRateCurrencyCode']
62
+ end
63
+ if hash.has_key? 'dailyRoomTaxAmount'
64
+ @daily_room_tax_amount = hash['dailyRoomTaxAmount']
65
+ end
66
+ if hash.has_key? 'dailyRoomTaxAmountCurrencyCode'
67
+ @daily_room_tax_amount_currency_code = hash['dailyRoomTaxAmountCurrencyCode']
68
+ end
69
+ if hash.has_key? 'numberOfNightsAtRoomRate'
70
+ @number_of_nights_at_room_rate = hash['numberOfNightsAtRoomRate']
71
+ end
72
+ if hash.has_key? 'roomLocation'
73
+ @room_location = hash['roomLocation']
74
+ end
75
+ if hash.has_key? 'roomNumber'
76
+ @room_number = hash['roomNumber']
77
+ end
78
+ if hash.has_key? 'typeOfBed'
79
+ @type_of_bed = hash['typeOfBed']
80
+ end
81
+ if hash.has_key? 'typeOfRoom'
82
+ @type_of_room = hash['typeOfRoom']
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
@@ -10,24 +10,46 @@ module Ingenico::Connect::SDK
10
10
  module Domain
11
11
  module Hostedcheckout
12
12
 
13
+ # @attr [String] authorization_mode
14
+ # @attr [String] customer_reference
13
15
  # @attr [Ingenico::Connect::SDK::Domain::Hostedcheckout::MobilePaymentProduct302SpecificInputHostedCheckout] payment_product302_specific_input
14
16
  # @attr [Ingenico::Connect::SDK::Domain::Hostedcheckout::MobilePaymentProduct320SpecificInputHostedCheckout] payment_product320_specific_input
17
+ # @attr [true/false] requires_approval
18
+ # @attr [true/false] skip_fraud_service
15
19
  class MobilePaymentMethodSpecificInputHostedCheckout < Ingenico::Connect::SDK::Domain::Definitions::AbstractPaymentMethodSpecificInput
16
20
 
21
+ attr_accessor :authorization_mode
22
+
23
+ attr_accessor :customer_reference
24
+
17
25
  attr_accessor :payment_product302_specific_input
18
26
 
19
27
  attr_accessor :payment_product320_specific_input
20
28
 
29
+ attr_accessor :requires_approval
30
+
31
+ attr_accessor :skip_fraud_service
32
+
21
33
  # @return (Hash)
22
34
  def to_h
23
35
  hash = super
36
+ hash['authorizationMode'] = @authorization_mode unless @authorization_mode.nil?
37
+ hash['customerReference'] = @customer_reference unless @customer_reference.nil?
24
38
  hash['paymentProduct302SpecificInput'] = @payment_product302_specific_input.to_h unless @payment_product302_specific_input.nil?
25
39
  hash['paymentProduct320SpecificInput'] = @payment_product320_specific_input.to_h unless @payment_product320_specific_input.nil?
40
+ hash['requiresApproval'] = @requires_approval unless @requires_approval.nil?
41
+ hash['skipFraudService'] = @skip_fraud_service unless @skip_fraud_service.nil?
26
42
  hash
27
43
  end
28
44
 
29
45
  def from_hash(hash)
30
46
  super
47
+ if hash.has_key? 'authorizationMode'
48
+ @authorization_mode = hash['authorizationMode']
49
+ end
50
+ if hash.has_key? 'customerReference'
51
+ @customer_reference = hash['customerReference']
52
+ end
31
53
  if hash.has_key? 'paymentProduct302SpecificInput'
32
54
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct302SpecificInput']] unless hash['paymentProduct302SpecificInput'].is_a? Hash
33
55
  @payment_product302_specific_input = Ingenico::Connect::SDK::Domain::Hostedcheckout::MobilePaymentProduct302SpecificInputHostedCheckout.new_from_hash(hash['paymentProduct302SpecificInput'])
@@ -36,6 +58,12 @@ module Ingenico::Connect::SDK
36
58
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct320SpecificInput']] unless hash['paymentProduct320SpecificInput'].is_a? Hash
37
59
  @payment_product320_specific_input = Ingenico::Connect::SDK::Domain::Hostedcheckout::MobilePaymentProduct320SpecificInputHostedCheckout.new_from_hash(hash['paymentProduct320SpecificInput'])
38
60
  end
61
+ if hash.has_key? 'requiresApproval'
62
+ @requires_approval = hash['requiresApproval']
63
+ end
64
+ if hash.has_key? 'skipFraudService'
65
+ @skip_fraud_service = hash['skipFraudService']
66
+ end
39
67
  end
40
68
  end
41
69
  end
@@ -3,6 +3,7 @@
3
3
  # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
4
  #
5
5
  require 'ingenico/connect/sdk/data_object'
6
+ require 'ingenico/connect/sdk/domain/payment/g_pay_three_d_secure'
6
7
 
7
8
  module Ingenico::Connect::SDK
8
9
  module Domain
@@ -10,17 +11,21 @@ module Ingenico::Connect::SDK
10
11
 
11
12
  # @attr [String] merchant_name
12
13
  # @attr [String] merchant_origin
14
+ # @attr [Ingenico::Connect::SDK::Domain::Payment::GPayThreeDSecure] three_d_secure
13
15
  class MobilePaymentProduct320SpecificInputHostedCheckout < Ingenico::Connect::SDK::DataObject
14
16
 
15
17
  attr_accessor :merchant_name
16
18
 
17
19
  attr_accessor :merchant_origin
18
20
 
21
+ attr_accessor :three_d_secure
22
+
19
23
  # @return (Hash)
20
24
  def to_h
21
25
  hash = super
22
26
  hash['merchantName'] = @merchant_name unless @merchant_name.nil?
23
27
  hash['merchantOrigin'] = @merchant_origin unless @merchant_origin.nil?
28
+ hash['threeDSecure'] = @three_d_secure.to_h unless @three_d_secure.nil?
24
29
  hash
25
30
  end
26
31
 
@@ -32,6 +37,10 @@ module Ingenico::Connect::SDK
32
37
  if hash.has_key? 'merchantOrigin'
33
38
  @merchant_origin = hash['merchantOrigin']
34
39
  end
40
+ if hash.has_key? 'threeDSecure'
41
+ raise TypeError, "value '%s' is not a Hash" % [hash['threeDSecure']] unless hash['threeDSecure'].is_a? Hash
42
+ @three_d_secure = Ingenico::Connect::SDK::Domain::Payment::GPayThreeDSecure.new_from_hash(hash['threeDSecure'])
43
+ end
35
44
  end
36
45
  end
37
46
  end
@@ -4,6 +4,7 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/data_object'
6
6
  require 'ingenico/connect/sdk/domain/definitions/airline_data'
7
+ require 'ingenico/connect/sdk/domain/definitions/lodging_data'
7
8
  require 'ingenico/connect/sdk/domain/payment/installments'
8
9
  require 'ingenico/connect/sdk/domain/payment/level3_summary_data'
9
10
  require 'ingenico/connect/sdk/domain/payment/loan_recipient'
@@ -17,6 +18,7 @@ module Ingenico::Connect::SDK
17
18
  # @attr [Ingenico::Connect::SDK::Domain::Payment::Installments] installments
18
19
  # @attr [Ingenico::Connect::SDK::Domain::Payment::Level3SummaryData] level3_summary_data
19
20
  # @attr [Ingenico::Connect::SDK::Domain::Payment::LoanRecipient] loan_recipient
21
+ # @attr [Ingenico::Connect::SDK::Domain::Definitions::LodgingData] lodging_data
20
22
  # @attr [Integer] number_of_installments
21
23
  # @attr [String] order_date
22
24
  # @attr [Ingenico::Connect::SDK::Domain::Payment::OrderTypeInformation] type_information
@@ -32,6 +34,8 @@ module Ingenico::Connect::SDK
32
34
 
33
35
  attr_accessor :loan_recipient
34
36
 
37
+ attr_accessor :lodging_data
38
+
35
39
  #
36
40
  # @deprecated Use installments.numberOfInstallments instead
37
41
  attr_accessor :number_of_installments
@@ -47,6 +51,7 @@ module Ingenico::Connect::SDK
47
51
  hash['installments'] = @installments.to_h unless @installments.nil?
48
52
  hash['level3SummaryData'] = @level3_summary_data.to_h unless @level3_summary_data.nil?
49
53
  hash['loanRecipient'] = @loan_recipient.to_h unless @loan_recipient.nil?
54
+ hash['lodgingData'] = @lodging_data.to_h unless @lodging_data.nil?
50
55
  hash['numberOfInstallments'] = @number_of_installments unless @number_of_installments.nil?
51
56
  hash['orderDate'] = @order_date unless @order_date.nil?
52
57
  hash['typeInformation'] = @type_information.to_h unless @type_information.nil?
@@ -71,6 +76,10 @@ module Ingenico::Connect::SDK
71
76
  raise TypeError, "value '%s' is not a Hash" % [hash['loanRecipient']] unless hash['loanRecipient'].is_a? Hash
72
77
  @loan_recipient = Ingenico::Connect::SDK::Domain::Payment::LoanRecipient.new_from_hash(hash['loanRecipient'])
73
78
  end
79
+ if hash.has_key? 'lodgingData'
80
+ raise TypeError, "value '%s' is not a Hash" % [hash['lodgingData']] unless hash['lodgingData'].is_a? Hash
81
+ @lodging_data = Ingenico::Connect::SDK::Domain::Definitions::LodgingData.new_from_hash(hash['lodgingData'])
82
+ end
74
83
  if hash.has_key? 'numberOfInstallments'
75
84
  @number_of_installments = hash['numberOfInstallments']
76
85
  end
@@ -18,6 +18,8 @@ module Ingenico::Connect::SDK
18
18
  # @attr [String] payment_method
19
19
  class DecryptedPaymentData < Ingenico::Connect::SDK::DataObject
20
20
 
21
+ #
22
+ # @deprecated Use decryptedPaymentData.paymentMethod instead
21
23
  attr_accessor :auth_method
22
24
 
23
25
  attr_accessor :cardholder_name
@@ -0,0 +1,46 @@
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
+ # @attr [String] exemption_raised
12
+ # @attr [String] exemption_rejection_reason
13
+ # @attr [String] exemption_request
14
+ class ExemptionOutput < Ingenico::Connect::SDK::DataObject
15
+
16
+ attr_accessor :exemption_raised
17
+
18
+ attr_accessor :exemption_rejection_reason
19
+
20
+ attr_accessor :exemption_request
21
+
22
+ # @return (Hash)
23
+ def to_h
24
+ hash = super
25
+ hash['exemptionRaised'] = @exemption_raised unless @exemption_raised.nil?
26
+ hash['exemptionRejectionReason'] = @exemption_rejection_reason unless @exemption_rejection_reason.nil?
27
+ hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
28
+ hash
29
+ end
30
+
31
+ def from_hash(hash)
32
+ super
33
+ if hash.has_key? 'exemptionRaised'
34
+ @exemption_raised = hash['exemptionRaised']
35
+ end
36
+ if hash.has_key? 'exemptionRejectionReason'
37
+ @exemption_rejection_reason = hash['exemptionRejectionReason']
38
+ end
39
+ if hash.has_key? 'exemptionRequest'
40
+ @exemption_request = hash['exemptionRequest']
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,62 @@
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
+ require 'ingenico/connect/sdk/domain/payment/redirection_data'
7
+
8
+ module Ingenico::Connect::SDK
9
+ module Domain
10
+ module Payment
11
+
12
+ # @attr [String] challenge_canvas_size
13
+ # @attr [String] challenge_indicator
14
+ # @attr [String] exemption_request
15
+ # @attr [Ingenico::Connect::SDK::Domain::Payment::RedirectionData] redirection_data
16
+ # @attr [true/false] skip_authentication
17
+ class GPayThreeDSecure < Ingenico::Connect::SDK::DataObject
18
+
19
+ attr_accessor :challenge_canvas_size
20
+
21
+ attr_accessor :challenge_indicator
22
+
23
+ attr_accessor :exemption_request
24
+
25
+ attr_accessor :redirection_data
26
+
27
+ attr_accessor :skip_authentication
28
+
29
+ # @return (Hash)
30
+ def to_h
31
+ hash = super
32
+ hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
33
+ hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
34
+ hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
35
+ hash['redirectionData'] = @redirection_data.to_h unless @redirection_data.nil?
36
+ hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
37
+ hash
38
+ end
39
+
40
+ def from_hash(hash)
41
+ super
42
+ if hash.has_key? 'challengeCanvasSize'
43
+ @challenge_canvas_size = hash['challengeCanvasSize']
44
+ end
45
+ if hash.has_key? 'challengeIndicator'
46
+ @challenge_indicator = hash['challengeIndicator']
47
+ end
48
+ if hash.has_key? 'exemptionRequest'
49
+ @exemption_request = hash['exemptionRequest']
50
+ end
51
+ if hash.has_key? 'redirectionData'
52
+ raise TypeError, "value '%s' is not a Hash" % [hash['redirectionData']] unless hash['redirectionData'].is_a? Hash
53
+ @redirection_data = Ingenico::Connect::SDK::Domain::Payment::RedirectionData.new_from_hash(hash['redirectionData'])
54
+ end
55
+ if hash.has_key? 'skipAuthentication'
56
+ @skip_authentication = hash['skipAuthentication']
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -4,24 +4,31 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/domain/definitions/abstract_payment_method_specific_input'
6
6
  require 'ingenico/connect/sdk/domain/payment/decrypted_payment_data'
7
+ require 'ingenico/connect/sdk/domain/payment/mobile_payment_product320_specific_input'
7
8
 
8
9
  module Ingenico::Connect::SDK
9
10
  module Domain
10
11
  module Payment
11
12
 
12
13
  # @attr [String] authorization_mode
14
+ # @attr [String] customer_reference
13
15
  # @attr [Ingenico::Connect::SDK::Domain::Payment::DecryptedPaymentData] decrypted_payment_data
14
16
  # @attr [String] encrypted_payment_data
17
+ # @attr [Ingenico::Connect::SDK::Domain::Payment::MobilePaymentProduct320SpecificInput] payment_product320_specific_input
15
18
  # @attr [true/false] requires_approval
16
19
  # @attr [true/false] skip_fraud_service
17
20
  class MobilePaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Definitions::AbstractPaymentMethodSpecificInput
18
21
 
19
22
  attr_accessor :authorization_mode
20
23
 
24
+ attr_accessor :customer_reference
25
+
21
26
  attr_accessor :decrypted_payment_data
22
27
 
23
28
  attr_accessor :encrypted_payment_data
24
29
 
30
+ attr_accessor :payment_product320_specific_input
31
+
25
32
  attr_accessor :requires_approval
26
33
 
27
34
  attr_accessor :skip_fraud_service
@@ -30,8 +37,10 @@ module Ingenico::Connect::SDK
30
37
  def to_h
31
38
  hash = super
32
39
  hash['authorizationMode'] = @authorization_mode unless @authorization_mode.nil?
40
+ hash['customerReference'] = @customer_reference unless @customer_reference.nil?
33
41
  hash['decryptedPaymentData'] = @decrypted_payment_data.to_h unless @decrypted_payment_data.nil?
34
42
  hash['encryptedPaymentData'] = @encrypted_payment_data unless @encrypted_payment_data.nil?
43
+ hash['paymentProduct320SpecificInput'] = @payment_product320_specific_input.to_h unless @payment_product320_specific_input.nil?
35
44
  hash['requiresApproval'] = @requires_approval unless @requires_approval.nil?
36
45
  hash['skipFraudService'] = @skip_fraud_service unless @skip_fraud_service.nil?
37
46
  hash
@@ -42,6 +51,9 @@ module Ingenico::Connect::SDK
42
51
  if hash.has_key? 'authorizationMode'
43
52
  @authorization_mode = hash['authorizationMode']
44
53
  end
54
+ if hash.has_key? 'customerReference'
55
+ @customer_reference = hash['customerReference']
56
+ end
45
57
  if hash.has_key? 'decryptedPaymentData'
46
58
  raise TypeError, "value '%s' is not a Hash" % [hash['decryptedPaymentData']] unless hash['decryptedPaymentData'].is_a? Hash
47
59
  @decrypted_payment_data = Ingenico::Connect::SDK::Domain::Payment::DecryptedPaymentData.new_from_hash(hash['decryptedPaymentData'])
@@ -49,6 +61,10 @@ module Ingenico::Connect::SDK
49
61
  if hash.has_key? 'encryptedPaymentData'
50
62
  @encrypted_payment_data = hash['encryptedPaymentData']
51
63
  end
64
+ if hash.has_key? 'paymentProduct320SpecificInput'
65
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct320SpecificInput']] unless hash['paymentProduct320SpecificInput'].is_a? Hash
66
+ @payment_product320_specific_input = Ingenico::Connect::SDK::Domain::Payment::MobilePaymentProduct320SpecificInput.new_from_hash(hash['paymentProduct320SpecificInput'])
67
+ end
52
68
  if hash.has_key? 'requiresApproval'
53
69
  @requires_approval = hash['requiresApproval']
54
70
  end
@@ -0,0 +1,34 @@
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
+ require 'ingenico/connect/sdk/domain/payment/g_pay_three_d_secure'
7
+
8
+ module Ingenico::Connect::SDK
9
+ module Domain
10
+ module Payment
11
+
12
+ # @attr [Ingenico::Connect::SDK::Domain::Payment::GPayThreeDSecure] three_d_secure
13
+ class MobilePaymentProduct320SpecificInput < Ingenico::Connect::SDK::DataObject
14
+
15
+ attr_accessor :three_d_secure
16
+
17
+ # @return (Hash)
18
+ def to_h
19
+ hash = super
20
+ hash['threeDSecure'] = @three_d_secure.to_h unless @three_d_secure.nil?
21
+ hash
22
+ end
23
+
24
+ def from_hash(hash)
25
+ super
26
+ if hash.has_key? 'threeDSecure'
27
+ raise TypeError, "value '%s' is not a Hash" % [hash['threeDSecure']] unless hash['threeDSecure'].is_a? Hash
28
+ @three_d_secure = Ingenico::Connect::SDK::Domain::Payment::GPayThreeDSecure.new_from_hash(hash['threeDSecure'])
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -16,6 +16,7 @@ module Ingenico::Connect::SDK
16
16
  # @attr [Ingenico::Connect::SDK::Domain::Payment::NonSepaDirectDebitPaymentProduct705SpecificInput] payment_product705_specific_input
17
17
  # @attr [Ingenico::Connect::SDK::Domain::Payment::NonSepaDirectDebitPaymentProduct730SpecificInput] payment_product730_specific_input
18
18
  # @attr [String] recurring_payment_sequence_indicator
19
+ # @attr [true/false] requires_approval
19
20
  # @attr [String] token
20
21
  # @attr [true/false] tokenize
21
22
  class NonSepaDirectDebitPaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Definitions::AbstractPaymentMethodSpecificInput
@@ -32,6 +33,8 @@ module Ingenico::Connect::SDK
32
33
 
33
34
  attr_accessor :recurring_payment_sequence_indicator
34
35
 
36
+ attr_accessor :requires_approval
37
+
35
38
  attr_accessor :token
36
39
 
37
40
  attr_accessor :tokenize
@@ -45,6 +48,7 @@ module Ingenico::Connect::SDK
45
48
  hash['paymentProduct705SpecificInput'] = @payment_product705_specific_input.to_h unless @payment_product705_specific_input.nil?
46
49
  hash['paymentProduct730SpecificInput'] = @payment_product730_specific_input.to_h unless @payment_product730_specific_input.nil?
47
50
  hash['recurringPaymentSequenceIndicator'] = @recurring_payment_sequence_indicator unless @recurring_payment_sequence_indicator.nil?
51
+ hash['requiresApproval'] = @requires_approval unless @requires_approval.nil?
48
52
  hash['token'] = @token unless @token.nil?
49
53
  hash['tokenize'] = @tokenize unless @tokenize.nil?
50
54
  hash
@@ -72,6 +76,9 @@ module Ingenico::Connect::SDK
72
76
  if hash.has_key? 'recurringPaymentSequenceIndicator'
73
77
  @recurring_payment_sequence_indicator = hash['recurringPaymentSequenceIndicator']
74
78
  end
79
+ if hash.has_key? 'requiresApproval'
80
+ @requires_approval = hash['requiresApproval']
81
+ end
75
82
  if hash.has_key? 'token'
76
83
  @token = hash['token']
77
84
  end
@@ -14,6 +14,7 @@ module Ingenico::Connect::SDK
14
14
  # @attr [true/false] is_recurring
15
15
  # @attr [Ingenico::Connect::SDK::Domain::Payment::SepaDirectDebitPaymentProduct771SpecificInput] payment_product771_specific_input
16
16
  # @attr [String] recurring_payment_sequence_indicator
17
+ # @attr [true/false] requires_approval
17
18
  # @attr [String] token
18
19
  # @attr [true/false] tokenize
19
20
  class SepaDirectDebitPaymentMethodSpecificInput < Ingenico::Connect::SDK::Domain::Payment::AbstractSepaDirectDebitPaymentMethodSpecificInput
@@ -28,6 +29,8 @@ module Ingenico::Connect::SDK
28
29
 
29
30
  attr_accessor :recurring_payment_sequence_indicator
30
31
 
32
+ attr_accessor :requires_approval
33
+
31
34
  attr_accessor :token
32
35
 
33
36
  attr_accessor :tokenize
@@ -40,6 +43,7 @@ module Ingenico::Connect::SDK
40
43
  hash['isRecurring'] = @is_recurring unless @is_recurring.nil?
41
44
  hash['paymentProduct771SpecificInput'] = @payment_product771_specific_input.to_h unless @payment_product771_specific_input.nil?
42
45
  hash['recurringPaymentSequenceIndicator'] = @recurring_payment_sequence_indicator unless @recurring_payment_sequence_indicator.nil?
46
+ hash['requiresApproval'] = @requires_approval unless @requires_approval.nil?
43
47
  hash['token'] = @token unless @token.nil?
44
48
  hash['tokenize'] = @tokenize unless @tokenize.nil?
45
49
  hash
@@ -63,6 +67,9 @@ module Ingenico::Connect::SDK
63
67
  if hash.has_key? 'recurringPaymentSequenceIndicator'
64
68
  @recurring_payment_sequence_indicator = hash['recurringPaymentSequenceIndicator']
65
69
  end
70
+ if hash.has_key? 'requiresApproval'
71
+ @requires_approval = hash['requiresApproval']
72
+ end
66
73
  if hash.has_key? 'token'
67
74
  @token = hash['token']
68
75
  end
@@ -4,6 +4,7 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/data_object'
6
6
  require 'ingenico/connect/sdk/domain/definitions/amount_of_money'
7
+ require 'ingenico/connect/sdk/domain/payment/exemption_output'
7
8
  require 'ingenico/connect/sdk/domain/payment/sdk_data_output'
8
9
  require 'ingenico/connect/sdk/domain/payment/three_d_secure_data'
9
10
 
@@ -17,6 +18,7 @@ module Ingenico::Connect::SDK
17
18
  # @attr [String] cavv
18
19
  # @attr [String] directory_server_transaction_id
19
20
  # @attr [String] eci
21
+ # @attr [Ingenico::Connect::SDK::Domain::Payment::ExemptionOutput] exemption_output
20
22
  # @attr [Integer] scheme_risk_score
21
23
  # @attr [Ingenico::Connect::SDK::Domain::Payment::SdkDataOutput] sdk_data
22
24
  # @attr [Ingenico::Connect::SDK::Domain::Payment::ThreeDSecureData] three_d_secure_data
@@ -37,6 +39,8 @@ module Ingenico::Connect::SDK
37
39
 
38
40
  attr_accessor :eci
39
41
 
42
+ attr_accessor :exemption_output
43
+
40
44
  attr_accessor :scheme_risk_score
41
45
 
42
46
  attr_accessor :sdk_data
@@ -58,6 +62,7 @@ module Ingenico::Connect::SDK
58
62
  hash['cavv'] = @cavv unless @cavv.nil?
59
63
  hash['directoryServerTransactionId'] = @directory_server_transaction_id unless @directory_server_transaction_id.nil?
60
64
  hash['eci'] = @eci unless @eci.nil?
65
+ hash['exemptionOutput'] = @exemption_output.to_h unless @exemption_output.nil?
61
66
  hash['schemeRiskScore'] = @scheme_risk_score unless @scheme_risk_score.nil?
62
67
  hash['sdkData'] = @sdk_data.to_h unless @sdk_data.nil?
63
68
  hash['threeDSecureData'] = @three_d_secure_data.to_h unless @three_d_secure_data.nil?
@@ -88,6 +93,10 @@ module Ingenico::Connect::SDK
88
93
  if hash.has_key? 'eci'
89
94
  @eci = hash['eci']
90
95
  end
96
+ if hash.has_key? 'exemptionOutput'
97
+ raise TypeError, "value '%s' is not a Hash" % [hash['exemptionOutput']] unless hash['exemptionOutput'].is_a? Hash
98
+ @exemption_output = Ingenico::Connect::SDK::Domain::Payment::ExemptionOutput.new_from_hash(hash['exemptionOutput'])
99
+ end
91
100
  if hash.has_key? 'schemeRiskScore'
92
101
  @scheme_risk_score = hash['schemeRiskScore']
93
102
  end
@@ -16,6 +16,7 @@ module Ingenico::Connect::SDK
16
16
  module Product
17
17
 
18
18
  # @attr [Array<Ingenico::Connect::SDK::Domain::Product::AccountOnFile>] accounts_on_file
19
+ # @attr [String] acquirer_country
19
20
  # @attr [true/false] allows_installments
20
21
  # @attr [true/false] allows_recurring
21
22
  # @attr [true/false] allows_tokenization
@@ -41,6 +42,8 @@ module Ingenico::Connect::SDK
41
42
 
42
43
  attr_accessor :accounts_on_file
43
44
 
45
+ attr_accessor :acquirer_country
46
+
44
47
  attr_accessor :allows_installments
45
48
 
46
49
  attr_accessor :allows_recurring
@@ -87,6 +90,7 @@ module Ingenico::Connect::SDK
87
90
  def to_h
88
91
  hash = super
89
92
  hash['accountsOnFile'] = @accounts_on_file.collect{|val| val.to_h} unless @accounts_on_file.nil?
93
+ hash['acquirerCountry'] = @acquirer_country unless @acquirer_country.nil?
90
94
  hash['allowsInstallments'] = @allows_installments unless @allows_installments.nil?
91
95
  hash['allowsRecurring'] = @allows_recurring unless @allows_recurring.nil?
92
96
  hash['allowsTokenization'] = @allows_tokenization unless @allows_tokenization.nil?
@@ -120,6 +124,9 @@ module Ingenico::Connect::SDK
120
124
  @accounts_on_file << Ingenico::Connect::SDK::Domain::Product::AccountOnFile.new_from_hash(e)
121
125
  end
122
126
  end
127
+ if hash.has_key? 'acquirerCountry'
128
+ @acquirer_country = hash['acquirerCountry']
129
+ end
123
130
  if hash.has_key? 'allowsInstallments'
124
131
  @allows_installments = hash['allowsInstallments']
125
132
  end
@@ -7,7 +7,7 @@ module Ingenico::Connect::SDK
7
7
  #
8
8
  # @attr_reader [Array<Ingenico::Connect::SDK::RequestHeader>] meta_data_headers List of headers that should be used in all requests.
9
9
  class MetaDataProvider
10
- @@SDK_VERSION = '2.15.0'
10
+ @@SDK_VERSION = '2.19.0'
11
11
  @@SERVER_META_INFO_HEADER = 'X-GCS-ServerMetaInfo'
12
12
  @@PROHIBITED_HEADERS = [@@SERVER_META_INFO_HEADER, 'X-GCS-Idempotence-Key',
13
13
  'Date', 'Content-Type', 'Authorization'].sort!.freeze
@@ -2,6 +2,7 @@ require 'spec_helper'
2
2
  require 'integration_setup'
3
3
  require 'webmock/rspec'
4
4
  require 'ingenico/connect/sdk/merchant/products/directory_params'
5
+ require 'ingenico/connect/sdk/merchant/products/find_products_params'
5
6
 
6
7
  describe 'PaymentProducts' do
7
8
 
@@ -10,6 +11,18 @@ describe 'PaymentProducts' do
10
11
 
11
12
  it 'can be accessed' do
12
13
 
14
+ params = Ingenico::Connect::SDK::Merchant::Products::FindProductsParams.new
15
+ params.country_code = 'NL'
16
+ params.currency_code = 'EUR'
17
+
18
+ Integration.init_client(false) do |client|
19
+ response = client.merchant(Integration::MERCHANT_ID).products.find(params)
20
+ expect(response.payment_products.length).to be > 0
21
+ end
22
+ end
23
+
24
+ it 'has directories that can be accessed' do
25
+
13
26
  params = Ingenico::Connect::SDK::Merchant::Products::DirectoryParams.new
14
27
  params.country_code = 'NL'
15
28
  params.currency_code = 'EUR'
@@ -23,7 +23,7 @@ describe 'token' do
23
23
  card_without_ccv.cardholder_name = 'Jan'
24
24
  card_without_ccv.issue_number = '12'
25
25
  card_without_ccv.card_number = '4567350000427977'
26
- card_without_ccv.expiry_date = '0820'
26
+ card_without_ccv.expiry_date = '1225'
27
27
  card_data = Ingenico::Connect::SDK::Domain::Token::TokenCardData.new
28
28
  card_data.card_without_cvv = card_without_ccv
29
29
  card = Ingenico::Connect::SDK::Domain::Token::TokenCard.new
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: connect-sdk-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.15.0
4
+ version: 2.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ingenico ePayments
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-03 00:00:00.000000000 Z
11
+ date: 2021-03-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httpclient
@@ -246,6 +246,9 @@ files:
246
246
  - lib/ingenico/connect/sdk/domain/definitions/fraugster_results.rb
247
247
  - lib/ingenico/connect/sdk/domain/definitions/in_auth.rb
248
248
  - lib/ingenico/connect/sdk/domain/definitions/key_value_pair.rb
249
+ - lib/ingenico/connect/sdk/domain/definitions/lodging_charge.rb
250
+ - lib/ingenico/connect/sdk/domain/definitions/lodging_data.rb
251
+ - lib/ingenico/connect/sdk/domain/definitions/lodging_room.rb
249
252
  - lib/ingenico/connect/sdk/domain/definitions/order_status_output.rb
250
253
  - lib/ingenico/connect/sdk/domain/definitions/payment_product_filter.rb
251
254
  - lib/ingenico/connect/sdk/domain/definitions/personal_name_base.rb
@@ -359,8 +362,10 @@ files:
359
362
  - lib/ingenico/connect/sdk/domain/payment/e_invoice_payment_method_specific_output.rb
360
363
  - lib/ingenico/connect/sdk/domain/payment/e_invoice_payment_product9000_specific_input.rb
361
364
  - lib/ingenico/connect/sdk/domain/payment/e_invoice_payment_product9000_specific_output.rb
365
+ - lib/ingenico/connect/sdk/domain/payment/exemption_output.rb
362
366
  - lib/ingenico/connect/sdk/domain/payment/external_cardholder_authentication_data.rb
363
367
  - lib/ingenico/connect/sdk/domain/payment/find_payments_response.rb
368
+ - lib/ingenico/connect/sdk/domain/payment/g_pay_three_d_secure.rb
364
369
  - lib/ingenico/connect/sdk/domain/payment/gift_card_purchase.rb
365
370
  - lib/ingenico/connect/sdk/domain/payment/hosted_checkout_specific_output.rb
366
371
  - lib/ingenico/connect/sdk/domain/payment/installments.rb
@@ -376,6 +381,7 @@ files:
376
381
  - lib/ingenico/connect/sdk/domain/payment/mobile_payment_data.rb
377
382
  - lib/ingenico/connect/sdk/domain/payment/mobile_payment_method_specific_input.rb
378
383
  - lib/ingenico/connect/sdk/domain/payment/mobile_payment_method_specific_output.rb
384
+ - lib/ingenico/connect/sdk/domain/payment/mobile_payment_product320_specific_input.rb
379
385
  - lib/ingenico/connect/sdk/domain/payment/mobile_three_d_secure_challenge_parameters.rb
380
386
  - lib/ingenico/connect/sdk/domain/payment/non_sepa_direct_debit_payment_method_specific_input.rb
381
387
  - lib/ingenico/connect/sdk/domain/payment/non_sepa_direct_debit_payment_method_specific_output.rb