onlinepayments-sdk-ruby 4.21.0 → 4.23.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/lib/onlinepayments/sdk/communicator.rb +2 -0
  3. data/lib/onlinepayments/sdk/defaultimpl/default_connection.rb +4 -0
  4. data/lib/onlinepayments/sdk/domain/address_personal.rb +4 -0
  5. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input.rb +8 -0
  6. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_base.rb +8 -0
  7. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_for_hosted_checkout.rb +4 -0
  8. data/lib/onlinepayments/sdk/domain/create_payment_link_request.rb +64 -0
  9. data/lib/onlinepayments/sdk/domain/mandate_address_response.rb +42 -0
  10. data/lib/onlinepayments/sdk/domain/mandate_customer_response.rb +58 -0
  11. data/lib/onlinepayments/sdk/domain/mandate_personal_information_response.rb +34 -0
  12. data/lib/onlinepayments/sdk/domain/mandate_personal_name_response.rb +30 -0
  13. data/lib/onlinepayments/sdk/domain/mandate_response.rb +7 -3
  14. data/lib/onlinepayments/sdk/domain/multiple_payment_information.rb +30 -0
  15. data/lib/onlinepayments/sdk/domain/payment_link_specific_input.rb +34 -0
  16. data/lib/onlinepayments/sdk/domain/payment_output.rb +8 -0
  17. data/lib/onlinepayments/sdk/domain/payment_product3203_specific_output.rb +37 -0
  18. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb +16 -0
  19. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_output.rb +8 -0
  20. data/lib/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.rb +26 -0
  21. data/lib/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.rb +26 -0
  22. data/lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb +4 -0
  23. data/lib/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.rb +26 -0
  24. data/lib/onlinepayments/sdk/domain/subsequent_payment_request.rb +8 -0
  25. data/lib/onlinepayments/sdk/domain/three_d_secure_base.rb +4 -0
  26. data/onlinepayments-sdk-ruby.gemspec +1 -1
  27. metadata +12 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 30a4b1409961ce56a7d8679d47aae77af0079d0ced253f9e138fcb06acb64487
4
- data.tar.gz: 8482c25fa8949b128e4515e16985cd9aabe3bb986afb1f4bafec16fb58868d34
3
+ metadata.gz: 987bf75ee1540bd8abf3a28d9906db7e94f1375dd4f1fa5633a32b87a5ca0ae5
4
+ data.tar.gz: 232425d9abf5e0c208264d6fc38133cddbfc0d8b1a372860b31d1c699d0ce403
5
5
  SHA512:
6
- metadata.gz: 2c2403c8ea098473120c32fa89d7e1c1a80b230e198fd709365d635ff445ff2d2ad0a0a532a78b4cdc394491448398e8af5b30ee2c0fe74221ba90fbee39fe3a
7
- data.tar.gz: 2b93a66d27dc5cf82f9712c081af3f39044742bece4962742f139e26ec56a3c99f7edbcdb7126dc7cc7c3d199a59f7f5caa390f0d13fa51215380753f4257c68
6
+ metadata.gz: f6287c6f28f6940aa3d0925f64b5906f24d2d85908b9909a65e075a4347930a49edb2d72a888c8eef4cc1970cc04a5b8bdbaf5245601c26c1300788ae3951d50
7
+ data.tar.gz: ffb47f7328e8216c595fe4978fd8394633fca9323806a6843c3e5a67ef0643059257f3d260b861d669c474a602c55827e4e54cbef636f0881a109f5108b15d8e
@@ -1,4 +1,6 @@
1
1
  require 'uri'
2
+ require 'onlinepayments/sdk/multipart_form_data_object'
3
+ require 'onlinepayments/sdk/multipart_form_data_request'
2
4
 
3
5
  module OnlinePayments::SDK
4
6
  # Class responsible for facilitating communication with the Online Payments platform.
@@ -1,6 +1,10 @@
1
1
  require 'securerandom'
2
2
  require 'uri'
3
3
  require 'httpclient'
4
+ require 'onlinepayments/sdk/multipart_form_data_object'
5
+ require 'onlinepayments/sdk/pooled_connection'
6
+ require 'onlinepayments/sdk/communication_exception'
7
+ require 'onlinepayments/sdk/response_header'
4
8
 
5
9
  # @private :nodoc: this is not our class
6
10
  module RefineHTTPClient
@@ -9,6 +9,7 @@ module OnlinePayments::SDK
9
9
 
10
10
  # @attr [String] additional_info
11
11
  # @attr [String] city
12
+ # @attr [String] company_name
12
13
  # @attr [String] country_code
13
14
  # @attr [String] house_number
14
15
  # @attr [OnlinePayments::SDK::Domain::PersonalName] name
@@ -18,6 +19,7 @@ module OnlinePayments::SDK
18
19
  class AddressPersonal < OnlinePayments::SDK::DataObject
19
20
  attr_accessor :additional_info
20
21
  attr_accessor :city
22
+ attr_accessor :company_name
21
23
  attr_accessor :country_code
22
24
  attr_accessor :house_number
23
25
  attr_accessor :name
@@ -30,6 +32,7 @@ module OnlinePayments::SDK
30
32
  hash = super
31
33
  hash['additionalInfo'] = @additional_info unless @additional_info.nil?
32
34
  hash['city'] = @city unless @city.nil?
35
+ hash['companyName'] = @company_name unless @company_name.nil?
33
36
  hash['countryCode'] = @country_code unless @country_code.nil?
34
37
  hash['houseNumber'] = @house_number unless @house_number.nil?
35
38
  hash['name'] = @name.to_h if @name
@@ -43,6 +46,7 @@ module OnlinePayments::SDK
43
46
  super
44
47
  @additional_info = hash['additionalInfo'] if hash.key? 'additionalInfo'
45
48
  @city = hash['city'] if hash.key? 'city'
49
+ @company_name = hash['companyName'] if hash.key? 'companyName'
46
50
  @country_code = hash['countryCode'] if hash.key? 'countryCode'
47
51
  @house_number = hash['houseNumber'] if hash.key? 'houseNumber'
48
52
  if hash.key? 'name'
@@ -5,6 +5,7 @@ require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/card'
6
6
  require 'onlinepayments/sdk/domain/card_recurrence_details'
7
7
  require 'onlinepayments/sdk/domain/currency_conversion_input'
8
+ require 'onlinepayments/sdk/domain/multiple_payment_information'
8
9
  require 'onlinepayments/sdk/domain/payment_product130_specific_input'
9
10
  require 'onlinepayments/sdk/domain/payment_product3208_specific_input'
10
11
  require 'onlinepayments/sdk/domain/payment_product3209_specific_input'
@@ -21,6 +22,7 @@ module OnlinePayments::SDK
21
22
  # @attr [OnlinePayments::SDK::Domain::CurrencyConversionInput] currency_conversion
22
23
  # @attr [String] initial_scheme_transaction_id
23
24
  # @attr [true/false] is_recurring
25
+ # @attr [OnlinePayments::SDK::Domain::MultiplePaymentInformation] multiple_payment_information
24
26
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct130SpecificInput] payment_product130_specific_input
25
27
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3208SpecificInput] payment_product3208_specific_input
26
28
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3209SpecificInput] payment_product3209_specific_input
@@ -44,6 +46,7 @@ module OnlinePayments::SDK
44
46
  attr_accessor :currency_conversion
45
47
  attr_accessor :initial_scheme_transaction_id
46
48
  attr_accessor :is_recurring
49
+ attr_accessor :multiple_payment_information
47
50
  attr_accessor :payment_product130_specific_input
48
51
  attr_accessor :payment_product3208_specific_input
49
52
  attr_accessor :payment_product3209_specific_input
@@ -70,6 +73,7 @@ module OnlinePayments::SDK
70
73
  hash['currencyConversion'] = @currency_conversion.to_h if @currency_conversion
71
74
  hash['initialSchemeTransactionId'] = @initial_scheme_transaction_id unless @initial_scheme_transaction_id.nil?
72
75
  hash['isRecurring'] = @is_recurring unless @is_recurring.nil?
76
+ hash['multiplePaymentInformation'] = @multiple_payment_information.to_h if @multiple_payment_information
73
77
  hash['paymentProduct130SpecificInput'] = @payment_product130_specific_input.to_h if @payment_product130_specific_input
74
78
  hash['paymentProduct3208SpecificInput'] = @payment_product3208_specific_input.to_h if @payment_product3208_specific_input
75
79
  hash['paymentProduct3209SpecificInput'] = @payment_product3209_specific_input.to_h if @payment_product3209_specific_input
@@ -103,6 +107,10 @@ module OnlinePayments::SDK
103
107
  end
104
108
  @initial_scheme_transaction_id = hash['initialSchemeTransactionId'] if hash.key? 'initialSchemeTransactionId'
105
109
  @is_recurring = hash['isRecurring'] if hash.key? 'isRecurring'
110
+ if hash.key? 'multiplePaymentInformation'
111
+ raise TypeError, "value '%s' is not a Hash" % [hash['multiplePaymentInformation']] unless hash['multiplePaymentInformation'].is_a? Hash
112
+ @multiple_payment_information = OnlinePayments::SDK::Domain::MultiplePaymentInformation.new_from_hash(hash['multiplePaymentInformation'])
113
+ end
106
114
  if hash.key? 'paymentProduct130SpecificInput'
107
115
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct130SpecificInput']] unless hash['paymentProduct130SpecificInput'].is_a? Hash
108
116
  @payment_product130_specific_input = OnlinePayments::SDK::Domain::PaymentProduct130SpecificInput.new_from_hash(hash['paymentProduct130SpecificInput'])
@@ -4,6 +4,7 @@
4
4
  require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/card_recurrence_details'
6
6
  require 'onlinepayments/sdk/domain/currency_conversion_specific_input'
7
+ require 'onlinepayments/sdk/domain/multiple_payment_information'
7
8
  require 'onlinepayments/sdk/domain/payment_product130_specific_input'
8
9
  require 'onlinepayments/sdk/domain/payment_product3208_specific_input'
9
10
  require 'onlinepayments/sdk/domain/payment_product3209_specific_input'
@@ -17,6 +18,7 @@ module OnlinePayments::SDK
17
18
  # @attr [String] authorization_mode
18
19
  # @attr [OnlinePayments::SDK::Domain::CurrencyConversionSpecificInput] currency_conversion_specific_input
19
20
  # @attr [String] initial_scheme_transaction_id
21
+ # @attr [OnlinePayments::SDK::Domain::MultiplePaymentInformation] multiple_payment_information
20
22
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct130SpecificInput] payment_product130_specific_input
21
23
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3208SpecificInput] payment_product3208_specific_input
22
24
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3209SpecificInput] payment_product3209_specific_input
@@ -34,6 +36,7 @@ module OnlinePayments::SDK
34
36
  attr_accessor :authorization_mode
35
37
  attr_accessor :currency_conversion_specific_input
36
38
  attr_accessor :initial_scheme_transaction_id
39
+ attr_accessor :multiple_payment_information
37
40
  attr_accessor :payment_product130_specific_input
38
41
  attr_accessor :payment_product3208_specific_input
39
42
  attr_accessor :payment_product3209_specific_input
@@ -54,6 +57,7 @@ module OnlinePayments::SDK
54
57
  hash['authorizationMode'] = @authorization_mode unless @authorization_mode.nil?
55
58
  hash['currencyConversionSpecificInput'] = @currency_conversion_specific_input.to_h if @currency_conversion_specific_input
56
59
  hash['initialSchemeTransactionId'] = @initial_scheme_transaction_id unless @initial_scheme_transaction_id.nil?
60
+ hash['multiplePaymentInformation'] = @multiple_payment_information.to_h if @multiple_payment_information
57
61
  hash['paymentProduct130SpecificInput'] = @payment_product130_specific_input.to_h if @payment_product130_specific_input
58
62
  hash['paymentProduct3208SpecificInput'] = @payment_product3208_specific_input.to_h if @payment_product3208_specific_input
59
63
  hash['paymentProduct3209SpecificInput'] = @payment_product3209_specific_input.to_h if @payment_product3209_specific_input
@@ -78,6 +82,10 @@ module OnlinePayments::SDK
78
82
  @currency_conversion_specific_input = OnlinePayments::SDK::Domain::CurrencyConversionSpecificInput.new_from_hash(hash['currencyConversionSpecificInput'])
79
83
  end
80
84
  @initial_scheme_transaction_id = hash['initialSchemeTransactionId'] if hash.key? 'initialSchemeTransactionId'
85
+ if hash.key? 'multiplePaymentInformation'
86
+ raise TypeError, "value '%s' is not a Hash" % [hash['multiplePaymentInformation']] unless hash['multiplePaymentInformation'].is_a? Hash
87
+ @multiple_payment_information = OnlinePayments::SDK::Domain::MultiplePaymentInformation.new_from_hash(hash['multiplePaymentInformation'])
88
+ end
81
89
  if hash.key? 'paymentProduct130SpecificInput'
82
90
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct130SpecificInput']] unless hash['paymentProduct130SpecificInput'].is_a? Hash
83
91
  @payment_product130_specific_input = OnlinePayments::SDK::Domain::PaymentProduct130SpecificInput.new_from_hash(hash['paymentProduct130SpecificInput'])
@@ -6,15 +6,18 @@ require 'onlinepayments/sdk/data_object'
6
6
  module OnlinePayments::SDK
7
7
  module Domain
8
8
 
9
+ # @attr [true/false] click_to_pay
9
10
  # @attr [true/false] group_cards
10
11
  # @attr [Array<Integer>] payment_product_preferred_order
11
12
  class CardPaymentMethodSpecificInputForHostedCheckout < OnlinePayments::SDK::DataObject
13
+ attr_accessor :click_to_pay
12
14
  attr_accessor :group_cards
13
15
  attr_accessor :payment_product_preferred_order
14
16
 
15
17
  # @return (Hash)
16
18
  def to_h
17
19
  hash = super
20
+ hash['clickToPay'] = @click_to_pay unless @click_to_pay.nil?
18
21
  hash['groupCards'] = @group_cards unless @group_cards.nil?
19
22
  hash['paymentProductPreferredOrder'] = @payment_product_preferred_order unless @payment_product_preferred_order.nil?
20
23
  hash
@@ -22,6 +25,7 @@ module OnlinePayments::SDK
22
25
 
23
26
  def from_hash(hash)
24
27
  super
28
+ @click_to_pay = hash['clickToPay'] if hash.key? 'clickToPay'
25
29
  @group_cards = hash['groupCards'] if hash.key? 'groupCards'
26
30
  if hash.key? 'paymentProductPreferredOrder'
27
31
  raise TypeError, "value '%s' is not an Array" % [hash['paymentProductPreferredOrder']] unless hash['paymentProductPreferredOrder'].is_a? Array
@@ -2,40 +2,104 @@
2
2
  # This class was auto-generated.
3
3
  #
4
4
  require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/card_payment_method_specific_input_base'
6
+ require 'onlinepayments/sdk/domain/fraud_fields'
7
+ require 'onlinepayments/sdk/domain/hosted_checkout_specific_input'
8
+ require 'onlinepayments/sdk/domain/mobile_payment_method_hosted_checkout_specific_input'
9
+ require 'onlinepayments/sdk/domain/order'
5
10
  require 'onlinepayments/sdk/domain/payment_link_order_input'
11
+ require 'onlinepayments/sdk/domain/payment_link_specific_input'
12
+ require 'onlinepayments/sdk/domain/redirect_payment_method_specific_input'
13
+ require 'onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input_base'
6
14
 
7
15
  module OnlinePayments::SDK
8
16
  module Domain
9
17
 
18
+ # @attr [OnlinePayments::SDK::Domain::CardPaymentMethodSpecificInputBase] card_payment_method_specific_input
10
19
  # @attr [String] description
11
20
  # @attr [String] expiration_date
21
+ # @attr [OnlinePayments::SDK::Domain::FraudFields] fraud_fields
22
+ # @attr [OnlinePayments::SDK::Domain::HostedCheckoutSpecificInput] hosted_checkout_specific_input
23
+ # @attr [OnlinePayments::SDK::Domain::MobilePaymentMethodHostedCheckoutSpecificInput] mobile_payment_method_specific_input
24
+ # @attr [OnlinePayments::SDK::Domain::Order] order
12
25
  # @attr [OnlinePayments::SDK::Domain::PaymentLinkOrderInput] payment_link_order
26
+ # @attr [OnlinePayments::SDK::Domain::PaymentLinkSpecificInput] payment_link_specific_input
13
27
  # @attr [String] recipient_name
28
+ # @attr [OnlinePayments::SDK::Domain::RedirectPaymentMethodSpecificInput] redirect_payment_method_specific_input
29
+ # @attr [OnlinePayments::SDK::Domain::SepaDirectDebitPaymentMethodSpecificInputBase] sepa_direct_debit_payment_method_specific_input
14
30
  class CreatePaymentLinkRequest < OnlinePayments::SDK::DataObject
31
+ attr_accessor :card_payment_method_specific_input
15
32
  attr_accessor :description
16
33
  attr_accessor :expiration_date
34
+ attr_accessor :fraud_fields
35
+ attr_accessor :hosted_checkout_specific_input
36
+ attr_accessor :mobile_payment_method_specific_input
37
+ attr_accessor :order
17
38
  attr_accessor :payment_link_order
39
+ attr_accessor :payment_link_specific_input
18
40
  attr_accessor :recipient_name
41
+ attr_accessor :redirect_payment_method_specific_input
42
+ attr_accessor :sepa_direct_debit_payment_method_specific_input
19
43
 
20
44
  # @return (Hash)
21
45
  def to_h
22
46
  hash = super
47
+ hash['cardPaymentMethodSpecificInput'] = @card_payment_method_specific_input.to_h if @card_payment_method_specific_input
23
48
  hash['description'] = @description unless @description.nil?
24
49
  hash['expirationDate'] = @expiration_date unless @expiration_date.nil?
50
+ hash['fraudFields'] = @fraud_fields.to_h if @fraud_fields
51
+ hash['hostedCheckoutSpecificInput'] = @hosted_checkout_specific_input.to_h if @hosted_checkout_specific_input
52
+ hash['mobilePaymentMethodSpecificInput'] = @mobile_payment_method_specific_input.to_h if @mobile_payment_method_specific_input
53
+ hash['order'] = @order.to_h if @order
25
54
  hash['paymentLinkOrder'] = @payment_link_order.to_h if @payment_link_order
55
+ hash['paymentLinkSpecificInput'] = @payment_link_specific_input.to_h if @payment_link_specific_input
26
56
  hash['recipientName'] = @recipient_name unless @recipient_name.nil?
57
+ hash['redirectPaymentMethodSpecificInput'] = @redirect_payment_method_specific_input.to_h if @redirect_payment_method_specific_input
58
+ hash['sepaDirectDebitPaymentMethodSpecificInput'] = @sepa_direct_debit_payment_method_specific_input.to_h if @sepa_direct_debit_payment_method_specific_input
27
59
  hash
28
60
  end
29
61
 
30
62
  def from_hash(hash)
31
63
  super
64
+ if hash.key? 'cardPaymentMethodSpecificInput'
65
+ raise TypeError, "value '%s' is not a Hash" % [hash['cardPaymentMethodSpecificInput']] unless hash['cardPaymentMethodSpecificInput'].is_a? Hash
66
+ @card_payment_method_specific_input = OnlinePayments::SDK::Domain::CardPaymentMethodSpecificInputBase.new_from_hash(hash['cardPaymentMethodSpecificInput'])
67
+ end
32
68
  @description = hash['description'] if hash.key? 'description'
33
69
  @expiration_date = hash['expirationDate'] if hash.key? 'expirationDate'
70
+ if hash.key? 'fraudFields'
71
+ raise TypeError, "value '%s' is not a Hash" % [hash['fraudFields']] unless hash['fraudFields'].is_a? Hash
72
+ @fraud_fields = OnlinePayments::SDK::Domain::FraudFields.new_from_hash(hash['fraudFields'])
73
+ end
74
+ if hash.key? 'hostedCheckoutSpecificInput'
75
+ raise TypeError, "value '%s' is not a Hash" % [hash['hostedCheckoutSpecificInput']] unless hash['hostedCheckoutSpecificInput'].is_a? Hash
76
+ @hosted_checkout_specific_input = OnlinePayments::SDK::Domain::HostedCheckoutSpecificInput.new_from_hash(hash['hostedCheckoutSpecificInput'])
77
+ end
78
+ if hash.key? 'mobilePaymentMethodSpecificInput'
79
+ raise TypeError, "value '%s' is not a Hash" % [hash['mobilePaymentMethodSpecificInput']] unless hash['mobilePaymentMethodSpecificInput'].is_a? Hash
80
+ @mobile_payment_method_specific_input = OnlinePayments::SDK::Domain::MobilePaymentMethodHostedCheckoutSpecificInput.new_from_hash(hash['mobilePaymentMethodSpecificInput'])
81
+ end
82
+ if hash.key? 'order'
83
+ raise TypeError, "value '%s' is not a Hash" % [hash['order']] unless hash['order'].is_a? Hash
84
+ @order = OnlinePayments::SDK::Domain::Order.new_from_hash(hash['order'])
85
+ end
34
86
  if hash.key? 'paymentLinkOrder'
35
87
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentLinkOrder']] unless hash['paymentLinkOrder'].is_a? Hash
36
88
  @payment_link_order = OnlinePayments::SDK::Domain::PaymentLinkOrderInput.new_from_hash(hash['paymentLinkOrder'])
37
89
  end
90
+ if hash.key? 'paymentLinkSpecificInput'
91
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentLinkSpecificInput']] unless hash['paymentLinkSpecificInput'].is_a? Hash
92
+ @payment_link_specific_input = OnlinePayments::SDK::Domain::PaymentLinkSpecificInput.new_from_hash(hash['paymentLinkSpecificInput'])
93
+ end
38
94
  @recipient_name = hash['recipientName'] if hash.key? 'recipientName'
95
+ if hash.key? 'redirectPaymentMethodSpecificInput'
96
+ raise TypeError, "value '%s' is not a Hash" % [hash['redirectPaymentMethodSpecificInput']] unless hash['redirectPaymentMethodSpecificInput'].is_a? Hash
97
+ @redirect_payment_method_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentMethodSpecificInput.new_from_hash(hash['redirectPaymentMethodSpecificInput'])
98
+ end
99
+ if hash.key? 'sepaDirectDebitPaymentMethodSpecificInput'
100
+ raise TypeError, "value '%s' is not a Hash" % [hash['sepaDirectDebitPaymentMethodSpecificInput']] unless hash['sepaDirectDebitPaymentMethodSpecificInput'].is_a? Hash
101
+ @sepa_direct_debit_payment_method_specific_input = OnlinePayments::SDK::Domain::SepaDirectDebitPaymentMethodSpecificInputBase.new_from_hash(hash['sepaDirectDebitPaymentMethodSpecificInput'])
102
+ end
39
103
  end
40
104
  end
41
105
  end
@@ -0,0 +1,42 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] city
10
+ # @attr [String] country_code
11
+ # @attr [String] house_number
12
+ # @attr [String] street
13
+ # @attr [String] zip
14
+ class MandateAddressResponse < OnlinePayments::SDK::DataObject
15
+ attr_accessor :city
16
+ attr_accessor :country_code
17
+ attr_accessor :house_number
18
+ attr_accessor :street
19
+ attr_accessor :zip
20
+
21
+ # @return (Hash)
22
+ def to_h
23
+ hash = super
24
+ hash['city'] = @city unless @city.nil?
25
+ hash['countryCode'] = @country_code unless @country_code.nil?
26
+ hash['houseNumber'] = @house_number unless @house_number.nil?
27
+ hash['street'] = @street unless @street.nil?
28
+ hash['zip'] = @zip unless @zip.nil?
29
+ hash
30
+ end
31
+
32
+ def from_hash(hash)
33
+ super
34
+ @city = hash['city'] if hash.key? 'city'
35
+ @country_code = hash['countryCode'] if hash.key? 'countryCode'
36
+ @house_number = hash['houseNumber'] if hash.key? 'houseNumber'
37
+ @street = hash['street'] if hash.key? 'street'
38
+ @zip = hash['zip'] if hash.key? 'zip'
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,58 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/bank_account_iban'
6
+ require 'onlinepayments/sdk/domain/mandate_address_response'
7
+ require 'onlinepayments/sdk/domain/mandate_contact_details'
8
+ require 'onlinepayments/sdk/domain/mandate_personal_information_response'
9
+
10
+ module OnlinePayments::SDK
11
+ module Domain
12
+
13
+ # @attr [OnlinePayments::SDK::Domain::BankAccountIban] bank_account_iban
14
+ # @attr [String] company_name
15
+ # @attr [OnlinePayments::SDK::Domain::MandateContactDetails] contact_details
16
+ # @attr [OnlinePayments::SDK::Domain::MandateAddressResponse] mandate_address
17
+ # @attr [OnlinePayments::SDK::Domain::MandatePersonalInformationResponse] personal_information
18
+ class MandateCustomerResponse < OnlinePayments::SDK::DataObject
19
+ attr_accessor :bank_account_iban
20
+ attr_accessor :company_name
21
+ attr_accessor :contact_details
22
+ attr_accessor :mandate_address
23
+ attr_accessor :personal_information
24
+
25
+ # @return (Hash)
26
+ def to_h
27
+ hash = super
28
+ hash['bankAccountIban'] = @bank_account_iban.to_h if @bank_account_iban
29
+ hash['companyName'] = @company_name unless @company_name.nil?
30
+ hash['contactDetails'] = @contact_details.to_h if @contact_details
31
+ hash['mandateAddress'] = @mandate_address.to_h if @mandate_address
32
+ hash['personalInformation'] = @personal_information.to_h if @personal_information
33
+ hash
34
+ end
35
+
36
+ def from_hash(hash)
37
+ super
38
+ if hash.key? 'bankAccountIban'
39
+ raise TypeError, "value '%s' is not a Hash" % [hash['bankAccountIban']] unless hash['bankAccountIban'].is_a? Hash
40
+ @bank_account_iban = OnlinePayments::SDK::Domain::BankAccountIban.new_from_hash(hash['bankAccountIban'])
41
+ end
42
+ @company_name = hash['companyName'] if hash.key? 'companyName'
43
+ if hash.key? 'contactDetails'
44
+ raise TypeError, "value '%s' is not a Hash" % [hash['contactDetails']] unless hash['contactDetails'].is_a? Hash
45
+ @contact_details = OnlinePayments::SDK::Domain::MandateContactDetails.new_from_hash(hash['contactDetails'])
46
+ end
47
+ if hash.key? 'mandateAddress'
48
+ raise TypeError, "value '%s' is not a Hash" % [hash['mandateAddress']] unless hash['mandateAddress'].is_a? Hash
49
+ @mandate_address = OnlinePayments::SDK::Domain::MandateAddressResponse.new_from_hash(hash['mandateAddress'])
50
+ end
51
+ if hash.key? 'personalInformation'
52
+ raise TypeError, "value '%s' is not a Hash" % [hash['personalInformation']] unless hash['personalInformation'].is_a? Hash
53
+ @personal_information = OnlinePayments::SDK::Domain::MandatePersonalInformationResponse.new_from_hash(hash['personalInformation'])
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,34 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/mandate_personal_name_response'
6
+
7
+ module OnlinePayments::SDK
8
+ module Domain
9
+
10
+ # @attr [OnlinePayments::SDK::Domain::MandatePersonalNameResponse] name
11
+ # @attr [String] title
12
+ class MandatePersonalInformationResponse < OnlinePayments::SDK::DataObject
13
+ attr_accessor :name
14
+ attr_accessor :title
15
+
16
+ # @return (Hash)
17
+ def to_h
18
+ hash = super
19
+ hash['name'] = @name.to_h if @name
20
+ hash['title'] = @title unless @title.nil?
21
+ hash
22
+ end
23
+
24
+ def from_hash(hash)
25
+ super
26
+ if hash.key? 'name'
27
+ raise TypeError, "value '%s' is not a Hash" % [hash['name']] unless hash['name'].is_a? Hash
28
+ @name = OnlinePayments::SDK::Domain::MandatePersonalNameResponse.new_from_hash(hash['name'])
29
+ end
30
+ @title = hash['title'] if hash.key? 'title'
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,30 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] first_name
10
+ # @attr [String] surname
11
+ class MandatePersonalNameResponse < OnlinePayments::SDK::DataObject
12
+ attr_accessor :first_name
13
+ attr_accessor :surname
14
+
15
+ # @return (Hash)
16
+ def to_h
17
+ hash = super
18
+ hash['firstName'] = @first_name unless @first_name.nil?
19
+ hash['surname'] = @surname unless @surname.nil?
20
+ hash
21
+ end
22
+
23
+ def from_hash(hash)
24
+ super
25
+ @first_name = hash['firstName'] if hash.key? 'firstName'
26
+ @surname = hash['surname'] if hash.key? 'surname'
27
+ end
28
+ end
29
+ end
30
+ end
@@ -2,14 +2,15 @@
2
2
  # This class was auto-generated.
3
3
  #
4
4
  require 'onlinepayments/sdk/data_object'
5
- require 'onlinepayments/sdk/domain/mandate_customer'
5
+ require 'onlinepayments/sdk/domain/mandate_customer_response'
6
6
 
7
7
  module OnlinePayments::SDK
8
8
  module Domain
9
9
 
10
10
  # @attr [String] alias
11
- # @attr [OnlinePayments::SDK::Domain::MandateCustomer] customer
11
+ # @attr [OnlinePayments::SDK::Domain::MandateCustomerResponse] customer
12
12
  # @attr [String] customer_reference
13
+ # @attr [String] mandate_pdf
13
14
  # @attr [String] recurrence_type
14
15
  # @attr [String] status
15
16
  # @attr [String] unique_mandate_reference
@@ -17,6 +18,7 @@ module OnlinePayments::SDK
17
18
  attr_accessor :alias
18
19
  attr_accessor :customer
19
20
  attr_accessor :customer_reference
21
+ attr_accessor :mandate_pdf
20
22
  attr_accessor :recurrence_type
21
23
  attr_accessor :status
22
24
  attr_accessor :unique_mandate_reference
@@ -27,6 +29,7 @@ module OnlinePayments::SDK
27
29
  hash['alias'] = @alias unless @alias.nil?
28
30
  hash['customer'] = @customer.to_h if @customer
29
31
  hash['customerReference'] = @customer_reference unless @customer_reference.nil?
32
+ hash['mandatePdf'] = @mandate_pdf unless @mandate_pdf.nil?
30
33
  hash['recurrenceType'] = @recurrence_type unless @recurrence_type.nil?
31
34
  hash['status'] = @status unless @status.nil?
32
35
  hash['uniqueMandateReference'] = @unique_mandate_reference unless @unique_mandate_reference.nil?
@@ -38,9 +41,10 @@ module OnlinePayments::SDK
38
41
  @alias = hash['alias'] if hash.key? 'alias'
39
42
  if hash.key? 'customer'
40
43
  raise TypeError, "value '%s' is not a Hash" % [hash['customer']] unless hash['customer'].is_a? Hash
41
- @customer = OnlinePayments::SDK::Domain::MandateCustomer.new_from_hash(hash['customer'])
44
+ @customer = OnlinePayments::SDK::Domain::MandateCustomerResponse.new_from_hash(hash['customer'])
42
45
  end
43
46
  @customer_reference = hash['customerReference'] if hash.key? 'customerReference'
47
+ @mandate_pdf = hash['mandatePdf'] if hash.key? 'mandatePdf'
44
48
  @recurrence_type = hash['recurrenceType'] if hash.key? 'recurrenceType'
45
49
  @status = hash['status'] if hash.key? 'status'
46
50
  @unique_mandate_reference = hash['uniqueMandateReference'] if hash.key? 'uniqueMandateReference'
@@ -0,0 +1,30 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] payment_pattern
10
+ # @attr [Integer] total_number_of_payments
11
+ class MultiplePaymentInformation < OnlinePayments::SDK::DataObject
12
+ attr_accessor :payment_pattern
13
+ attr_accessor :total_number_of_payments
14
+
15
+ # @return (Hash)
16
+ def to_h
17
+ hash = super
18
+ hash['paymentPattern'] = @payment_pattern unless @payment_pattern.nil?
19
+ hash['totalNumberOfPayments'] = @total_number_of_payments unless @total_number_of_payments.nil?
20
+ hash
21
+ end
22
+
23
+ def from_hash(hash)
24
+ super
25
+ @payment_pattern = hash['paymentPattern'] if hash.key? 'paymentPattern'
26
+ @total_number_of_payments = hash['totalNumberOfPayments'] if hash.key? 'totalNumberOfPayments'
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,34 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] description
10
+ # @attr [String] expiration_date
11
+ # @attr [String] recipient_name
12
+ class PaymentLinkSpecificInput < OnlinePayments::SDK::DataObject
13
+ attr_accessor :description
14
+ attr_accessor :expiration_date
15
+ attr_accessor :recipient_name
16
+
17
+ # @return (Hash)
18
+ def to_h
19
+ hash = super
20
+ hash['description'] = @description unless @description.nil?
21
+ hash['expirationDate'] = @expiration_date unless @expiration_date.nil?
22
+ hash['recipientName'] = @recipient_name unless @recipient_name.nil?
23
+ hash
24
+ end
25
+
26
+ def from_hash(hash)
27
+ super
28
+ @description = hash['description'] if hash.key? 'description'
29
+ @expiration_date = hash['expirationDate'] if hash.key? 'expirationDate'
30
+ @recipient_name = hash['recipientName'] if hash.key? 'recipientName'
31
+ end
32
+ end
33
+ end
34
+ end
@@ -5,6 +5,7 @@ require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/amount_of_money'
6
6
  require 'onlinepayments/sdk/domain/card_payment_method_specific_output'
7
7
  require 'onlinepayments/sdk/domain/customer_output'
8
+ require 'onlinepayments/sdk/domain/discount'
8
9
  require 'onlinepayments/sdk/domain/mobile_payment_method_specific_output'
9
10
  require 'onlinepayments/sdk/domain/payment_references'
10
11
  require 'onlinepayments/sdk/domain/redirect_payment_method_specific_output'
@@ -19,6 +20,7 @@ module OnlinePayments::SDK
19
20
  # @attr [Long] amount_paid
20
21
  # @attr [OnlinePayments::SDK::Domain::CardPaymentMethodSpecificOutput] card_payment_method_specific_output
21
22
  # @attr [OnlinePayments::SDK::Domain::CustomerOutput] customer
23
+ # @attr [OnlinePayments::SDK::Domain::Discount] discount
22
24
  # @attr [String] merchant_parameters
23
25
  # @attr [OnlinePayments::SDK::Domain::MobilePaymentMethodSpecificOutput] mobile_payment_method_specific_output
24
26
  # @attr [String] payment_method
@@ -32,6 +34,7 @@ module OnlinePayments::SDK
32
34
  attr_accessor :amount_paid
33
35
  attr_accessor :card_payment_method_specific_output
34
36
  attr_accessor :customer
37
+ attr_accessor :discount
35
38
  attr_accessor :merchant_parameters
36
39
  attr_accessor :mobile_payment_method_specific_output
37
40
  attr_accessor :payment_method
@@ -48,6 +51,7 @@ module OnlinePayments::SDK
48
51
  hash['amountPaid'] = @amount_paid unless @amount_paid.nil?
49
52
  hash['cardPaymentMethodSpecificOutput'] = @card_payment_method_specific_output.to_h if @card_payment_method_specific_output
50
53
  hash['customer'] = @customer.to_h if @customer
54
+ hash['discount'] = @discount.to_h if @discount
51
55
  hash['merchantParameters'] = @merchant_parameters unless @merchant_parameters.nil?
52
56
  hash['mobilePaymentMethodSpecificOutput'] = @mobile_payment_method_specific_output.to_h if @mobile_payment_method_specific_output
53
57
  hash['paymentMethod'] = @payment_method unless @payment_method.nil?
@@ -77,6 +81,10 @@ module OnlinePayments::SDK
77
81
  raise TypeError, "value '%s' is not a Hash" % [hash['customer']] unless hash['customer'].is_a? Hash
78
82
  @customer = OnlinePayments::SDK::Domain::CustomerOutput.new_from_hash(hash['customer'])
79
83
  end
84
+ if hash.key? 'discount'
85
+ raise TypeError, "value '%s' is not a Hash" % [hash['discount']] unless hash['discount'].is_a? Hash
86
+ @discount = OnlinePayments::SDK::Domain::Discount.new_from_hash(hash['discount'])
87
+ end
80
88
  @merchant_parameters = hash['merchantParameters'] if hash.key? 'merchantParameters'
81
89
  if hash.key? 'mobilePaymentMethodSpecificOutput'
82
90
  raise TypeError, "value '%s' is not a Hash" % [hash['mobilePaymentMethodSpecificOutput']] unless hash['mobilePaymentMethodSpecificOutput'].is_a? Hash
@@ -0,0 +1,37 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/address_personal'
6
+
7
+ module OnlinePayments::SDK
8
+ module Domain
9
+
10
+ # @attr [OnlinePayments::SDK::Domain::AddressPersonal] billing_address
11
+ # @attr [OnlinePayments::SDK::Domain::AddressPersonal] shipping_address
12
+ class PaymentProduct3203SpecificOutput < OnlinePayments::SDK::DataObject
13
+ attr_accessor :billing_address
14
+ attr_accessor :shipping_address
15
+
16
+ # @return (Hash)
17
+ def to_h
18
+ hash = super
19
+ hash['billingAddress'] = @billing_address.to_h if @billing_address
20
+ hash['shippingAddress'] = @shipping_address.to_h if @shipping_address
21
+ hash
22
+ end
23
+
24
+ def from_hash(hash)
25
+ super
26
+ if hash.key? 'billingAddress'
27
+ raise TypeError, "value '%s' is not a Hash" % [hash['billingAddress']] unless hash['billingAddress'].is_a? Hash
28
+ @billing_address = OnlinePayments::SDK::Domain::AddressPersonal.new_from_hash(hash['billingAddress'])
29
+ end
30
+ if hash.key? 'shippingAddress'
31
+ raise TypeError, "value '%s' is not a Hash" % [hash['shippingAddress']] unless hash['shippingAddress'].is_a? Hash
32
+ @shipping_address = OnlinePayments::SDK::Domain::AddressPersonal.new_from_hash(hash['shippingAddress'])
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -2,7 +2,9 @@
2
2
  # This class was auto-generated.
3
3
  #
4
4
  require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/redirect_payment_product3203_specific_input'
5
6
  require 'onlinepayments/sdk/domain/redirect_payment_product3306_specific_input'
7
+ require 'onlinepayments/sdk/domain/redirect_payment_product5001_specific_input'
6
8
  require 'onlinepayments/sdk/domain/redirect_payment_product5406_specific_input'
7
9
  require 'onlinepayments/sdk/domain/redirect_payment_product5408_specific_input'
8
10
  require 'onlinepayments/sdk/domain/redirect_payment_product809_specific_input'
@@ -13,7 +15,9 @@ module OnlinePayments::SDK
13
15
  module Domain
14
16
 
15
17
  # @attr [String] payment_option
18
+ # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct3203SpecificInput] payment_product3203_specific_input
16
19
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct3306SpecificInput] payment_product3306_specific_input
20
+ # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5001SpecificInput] payment_product5001_specific_input
17
21
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5406SpecificInput] payment_product5406_specific_input
18
22
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5408SpecificInput] payment_product5408_specific_input
19
23
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct809SpecificInput] payment_product809_specific_input
@@ -25,7 +29,9 @@ module OnlinePayments::SDK
25
29
  # @attr [true/false] tokenize
26
30
  class RedirectPaymentMethodSpecificInput < OnlinePayments::SDK::DataObject
27
31
  attr_accessor :payment_option
32
+ attr_accessor :payment_product3203_specific_input
28
33
  attr_accessor :payment_product3306_specific_input
34
+ attr_accessor :payment_product5001_specific_input
29
35
  attr_accessor :payment_product5406_specific_input
30
36
  attr_accessor :payment_product5408_specific_input
31
37
  attr_accessor :payment_product809_specific_input
@@ -40,7 +46,9 @@ module OnlinePayments::SDK
40
46
  def to_h
41
47
  hash = super
42
48
  hash['paymentOption'] = @payment_option unless @payment_option.nil?
49
+ hash['paymentProduct3203SpecificInput'] = @payment_product3203_specific_input.to_h if @payment_product3203_specific_input
43
50
  hash['paymentProduct3306SpecificInput'] = @payment_product3306_specific_input.to_h if @payment_product3306_specific_input
51
+ hash['paymentProduct5001SpecificInput'] = @payment_product5001_specific_input.to_h if @payment_product5001_specific_input
44
52
  hash['paymentProduct5406SpecificInput'] = @payment_product5406_specific_input.to_h if @payment_product5406_specific_input
45
53
  hash['paymentProduct5408SpecificInput'] = @payment_product5408_specific_input.to_h if @payment_product5408_specific_input
46
54
  hash['paymentProduct809SpecificInput'] = @payment_product809_specific_input.to_h if @payment_product809_specific_input
@@ -56,10 +64,18 @@ module OnlinePayments::SDK
56
64
  def from_hash(hash)
57
65
  super
58
66
  @payment_option = hash['paymentOption'] if hash.key? 'paymentOption'
67
+ if hash.key? 'paymentProduct3203SpecificInput'
68
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3203SpecificInput']] unless hash['paymentProduct3203SpecificInput'].is_a? Hash
69
+ @payment_product3203_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct3203SpecificInput.new_from_hash(hash['paymentProduct3203SpecificInput'])
70
+ end
59
71
  if hash.key? 'paymentProduct3306SpecificInput'
60
72
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3306SpecificInput']] unless hash['paymentProduct3306SpecificInput'].is_a? Hash
61
73
  @payment_product3306_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct3306SpecificInput.new_from_hash(hash['paymentProduct3306SpecificInput'])
62
74
  end
75
+ if hash.key? 'paymentProduct5001SpecificInput'
76
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5001SpecificInput']] unless hash['paymentProduct5001SpecificInput'].is_a? Hash
77
+ @payment_product5001_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct5001SpecificInput.new_from_hash(hash['paymentProduct5001SpecificInput'])
78
+ end
63
79
  if hash.key? 'paymentProduct5406SpecificInput'
64
80
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5406SpecificInput']] unless hash['paymentProduct5406SpecificInput'].is_a? Hash
65
81
  @payment_product5406_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct5406SpecificInput.new_from_hash(hash['paymentProduct5406SpecificInput'])
@@ -4,6 +4,7 @@
4
4
  require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/customer_bank_account'
6
6
  require 'onlinepayments/sdk/domain/fraud_results'
7
+ require 'onlinepayments/sdk/domain/payment_product3203_specific_output'
7
8
  require 'onlinepayments/sdk/domain/payment_product5001_specific_output'
8
9
  require 'onlinepayments/sdk/domain/payment_product5402_specific_output'
9
10
  require 'onlinepayments/sdk/domain/payment_product5500_specific_output'
@@ -16,6 +17,7 @@ module OnlinePayments::SDK
16
17
  # @attr [OnlinePayments::SDK::Domain::CustomerBankAccount] customer_bank_account
17
18
  # @attr [OnlinePayments::SDK::Domain::FraudResults] fraud_results
18
19
  # @attr [String] payment_option
20
+ # @attr [OnlinePayments::SDK::Domain::PaymentProduct3203SpecificOutput] payment_product3203_specific_output
19
21
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct5001SpecificOutput] payment_product5001_specific_output
20
22
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct5402SpecificOutput] payment_product5402_specific_output
21
23
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct5500SpecificOutput] payment_product5500_specific_output
@@ -27,6 +29,7 @@ module OnlinePayments::SDK
27
29
  attr_accessor :customer_bank_account
28
30
  attr_accessor :fraud_results
29
31
  attr_accessor :payment_option
32
+ attr_accessor :payment_product3203_specific_output
30
33
  attr_accessor :payment_product5001_specific_output
31
34
  attr_accessor :payment_product5402_specific_output
32
35
  attr_accessor :payment_product5500_specific_output
@@ -41,6 +44,7 @@ module OnlinePayments::SDK
41
44
  hash['customerBankAccount'] = @customer_bank_account.to_h if @customer_bank_account
42
45
  hash['fraudResults'] = @fraud_results.to_h if @fraud_results
43
46
  hash['paymentOption'] = @payment_option unless @payment_option.nil?
47
+ hash['paymentProduct3203SpecificOutput'] = @payment_product3203_specific_output.to_h if @payment_product3203_specific_output
44
48
  hash['paymentProduct5001SpecificOutput'] = @payment_product5001_specific_output.to_h if @payment_product5001_specific_output
45
49
  hash['paymentProduct5402SpecificOutput'] = @payment_product5402_specific_output.to_h if @payment_product5402_specific_output
46
50
  hash['paymentProduct5500SpecificOutput'] = @payment_product5500_specific_output.to_h if @payment_product5500_specific_output
@@ -62,6 +66,10 @@ module OnlinePayments::SDK
62
66
  @fraud_results = OnlinePayments::SDK::Domain::FraudResults.new_from_hash(hash['fraudResults'])
63
67
  end
64
68
  @payment_option = hash['paymentOption'] if hash.key? 'paymentOption'
69
+ if hash.key? 'paymentProduct3203SpecificOutput'
70
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3203SpecificOutput']] unless hash['paymentProduct3203SpecificOutput'].is_a? Hash
71
+ @payment_product3203_specific_output = OnlinePayments::SDK::Domain::PaymentProduct3203SpecificOutput.new_from_hash(hash['paymentProduct3203SpecificOutput'])
72
+ end
65
73
  if hash.key? 'paymentProduct5001SpecificOutput'
66
74
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5001SpecificOutput']] unless hash['paymentProduct5001SpecificOutput'].is_a? Hash
67
75
  @payment_product5001_specific_output = OnlinePayments::SDK::Domain::PaymentProduct5001SpecificOutput.new_from_hash(hash['paymentProduct5001SpecificOutput'])
@@ -0,0 +1,26 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] checkout_type
10
+ class RedirectPaymentProduct3203SpecificInput < OnlinePayments::SDK::DataObject
11
+ attr_accessor :checkout_type
12
+
13
+ # @return (Hash)
14
+ def to_h
15
+ hash = super
16
+ hash['checkoutType'] = @checkout_type unless @checkout_type.nil?
17
+ hash
18
+ end
19
+
20
+ def from_hash(hash)
21
+ super
22
+ @checkout_type = hash['checkoutType'] if hash.key? 'checkoutType'
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,26 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] subsequent_type
10
+ class RedirectPaymentProduct5001SpecificInput < OnlinePayments::SDK::DataObject
11
+ attr_accessor :subsequent_type
12
+
13
+ # @return (Hash)
14
+ def to_h
15
+ hash = super
16
+ hash['subsequentType'] = @subsequent_type unless @subsequent_type.nil?
17
+ hash
18
+ end
19
+
20
+ def from_hash(hash)
21
+ super
22
+ @subsequent_type = hash['subsequentType'] if hash.key? 'subsequentType'
23
+ end
24
+ end
25
+ end
26
+ end
@@ -7,12 +7,14 @@ module OnlinePayments::SDK
7
7
  module Domain
8
8
 
9
9
  # @attr [String] authorization_mode
10
+ # @attr [Integer] payment_number
10
11
  # @attr [String] scheme_reference_data
11
12
  # @attr [String] subsequent_type
12
13
  # @attr [String] token
13
14
  # @attr [String] transaction_channel
14
15
  class SubsequentCardPaymentMethodSpecificInput < OnlinePayments::SDK::DataObject
15
16
  attr_accessor :authorization_mode
17
+ attr_accessor :payment_number
16
18
  attr_accessor :scheme_reference_data
17
19
  attr_accessor :subsequent_type
18
20
  attr_accessor :token
@@ -22,6 +24,7 @@ module OnlinePayments::SDK
22
24
  def to_h
23
25
  hash = super
24
26
  hash['authorizationMode'] = @authorization_mode unless @authorization_mode.nil?
27
+ hash['paymentNumber'] = @payment_number unless @payment_number.nil?
25
28
  hash['schemeReferenceData'] = @scheme_reference_data unless @scheme_reference_data.nil?
26
29
  hash['subsequentType'] = @subsequent_type unless @subsequent_type.nil?
27
30
  hash['token'] = @token unless @token.nil?
@@ -32,6 +35,7 @@ module OnlinePayments::SDK
32
35
  def from_hash(hash)
33
36
  super
34
37
  @authorization_mode = hash['authorizationMode'] if hash.key? 'authorizationMode'
38
+ @payment_number = hash['paymentNumber'] if hash.key? 'paymentNumber'
35
39
  @scheme_reference_data = hash['schemeReferenceData'] if hash.key? 'schemeReferenceData'
36
40
  @subsequent_type = hash['subsequentType'] if hash.key? 'subsequentType'
37
41
  @token = hash['token'] if hash.key? 'token'
@@ -0,0 +1,26 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] subsequent_type
10
+ class SubsequentPaymentProduct5001SpecificInput < OnlinePayments::SDK::DataObject
11
+ attr_accessor :subsequent_type
12
+
13
+ # @return (Hash)
14
+ def to_h
15
+ hash = super
16
+ hash['subsequentType'] = @subsequent_type unless @subsequent_type.nil?
17
+ hash
18
+ end
19
+
20
+ def from_hash(hash)
21
+ super
22
+ @subsequent_type = hash['subsequentType'] if hash.key? 'subsequentType'
23
+ end
24
+ end
25
+ end
26
+ end
@@ -4,20 +4,24 @@
4
4
  require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/order'
6
6
  require 'onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input'
7
+ require 'onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input'
7
8
 
8
9
  module OnlinePayments::SDK
9
10
  module Domain
10
11
 
11
12
  # @attr [OnlinePayments::SDK::Domain::Order] order
13
+ # @attr [OnlinePayments::SDK::Domain::SubsequentPaymentProduct5001SpecificInput] subsequent_payment_product5001_specific_input
12
14
  # @attr [OnlinePayments::SDK::Domain::SubsequentCardPaymentMethodSpecificInput] subsequentcard_payment_method_specific_input
13
15
  class SubsequentPaymentRequest < OnlinePayments::SDK::DataObject
14
16
  attr_accessor :order
17
+ attr_accessor :subsequent_payment_product5001_specific_input
15
18
  attr_accessor :subsequentcard_payment_method_specific_input
16
19
 
17
20
  # @return (Hash)
18
21
  def to_h
19
22
  hash = super
20
23
  hash['order'] = @order.to_h if @order
24
+ hash['subsequentPaymentProduct5001SpecificInput'] = @subsequent_payment_product5001_specific_input.to_h if @subsequent_payment_product5001_specific_input
21
25
  hash['subsequentcardPaymentMethodSpecificInput'] = @subsequentcard_payment_method_specific_input.to_h if @subsequentcard_payment_method_specific_input
22
26
  hash
23
27
  end
@@ -28,6 +32,10 @@ module OnlinePayments::SDK
28
32
  raise TypeError, "value '%s' is not a Hash" % [hash['order']] unless hash['order'].is_a? Hash
29
33
  @order = OnlinePayments::SDK::Domain::Order.new_from_hash(hash['order'])
30
34
  end
35
+ if hash.key? 'subsequentPaymentProduct5001SpecificInput'
36
+ raise TypeError, "value '%s' is not a Hash" % [hash['subsequentPaymentProduct5001SpecificInput']] unless hash['subsequentPaymentProduct5001SpecificInput'].is_a? Hash
37
+ @subsequent_payment_product5001_specific_input = OnlinePayments::SDK::Domain::SubsequentPaymentProduct5001SpecificInput.new_from_hash(hash['subsequentPaymentProduct5001SpecificInput'])
38
+ end
31
39
  if hash.key? 'subsequentcardPaymentMethodSpecificInput'
32
40
  raise TypeError, "value '%s' is not a Hash" % [hash['subsequentcardPaymentMethodSpecificInput']] unless hash['subsequentcardPaymentMethodSpecificInput'].is_a? Hash
33
41
  @subsequentcard_payment_method_specific_input = OnlinePayments::SDK::Domain::SubsequentCardPaymentMethodSpecificInput.new_from_hash(hash['subsequentcardPaymentMethodSpecificInput'])
@@ -7,6 +7,7 @@ require 'onlinepayments/sdk/domain/three_d_secure_data'
7
7
  module OnlinePayments::SDK
8
8
  module Domain
9
9
 
10
+ # @attr [Long] authentication_amount
10
11
  # @attr [String] challenge_canvas_size
11
12
  # @attr [String] challenge_indicator
12
13
  # @attr [String] exemption_request
@@ -16,6 +17,7 @@ module OnlinePayments::SDK
16
17
  # @attr [true/false] skip_authentication
17
18
  # @attr [true/false] skip_soft_decline
18
19
  class ThreeDSecureBase < OnlinePayments::SDK::DataObject
20
+ attr_accessor :authentication_amount
19
21
  attr_accessor :challenge_canvas_size
20
22
  attr_accessor :challenge_indicator
21
23
  attr_accessor :exemption_request
@@ -28,6 +30,7 @@ module OnlinePayments::SDK
28
30
  # @return (Hash)
29
31
  def to_h
30
32
  hash = super
33
+ hash['authenticationAmount'] = @authentication_amount unless @authentication_amount.nil?
31
34
  hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
32
35
  hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
33
36
  hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
@@ -41,6 +44,7 @@ module OnlinePayments::SDK
41
44
 
42
45
  def from_hash(hash)
43
46
  super
47
+ @authentication_amount = hash['authenticationAmount'] if hash.key? 'authenticationAmount'
44
48
  @challenge_canvas_size = hash['challengeCanvasSize'] if hash.key? 'challengeCanvasSize'
45
49
  @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
46
50
  @exemption_request = hash['exemptionRequest'] if hash.key? 'exemptionRequest'
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = 'onlinepayments-sdk-ruby'
3
- spec.version = '4.21.0'
3
+ spec.version = '4.23.0'
4
4
  spec.authors = ['Worldline Direct support team']
5
5
  spec.email = ['82139942+worldline-direct-support-team@users.noreply.github.com']
6
6
  spec.summary = %q{SDK to communicate with the Online Payments platform using the Online Payments Server API}
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: onlinepayments-sdk-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.21.0
4
+ version: 4.23.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Worldline Direct support team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-16 00:00:00.000000000 Z
11
+ date: 2024-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httpclient
@@ -253,11 +253,15 @@ files:
253
253
  - lib/onlinepayments/sdk/domain/loan_recipient.rb
254
254
  - lib/onlinepayments/sdk/domain/lodging_data.rb
255
255
  - lib/onlinepayments/sdk/domain/mandate_address.rb
256
+ - lib/onlinepayments/sdk/domain/mandate_address_response.rb
256
257
  - lib/onlinepayments/sdk/domain/mandate_contact_details.rb
257
258
  - lib/onlinepayments/sdk/domain/mandate_customer.rb
259
+ - lib/onlinepayments/sdk/domain/mandate_customer_response.rb
258
260
  - lib/onlinepayments/sdk/domain/mandate_merchant_action.rb
259
261
  - lib/onlinepayments/sdk/domain/mandate_personal_information.rb
262
+ - lib/onlinepayments/sdk/domain/mandate_personal_information_response.rb
260
263
  - lib/onlinepayments/sdk/domain/mandate_personal_name.rb
264
+ - lib/onlinepayments/sdk/domain/mandate_personal_name_response.rb
261
265
  - lib/onlinepayments/sdk/domain/mandate_redirect_data.rb
262
266
  - lib/onlinepayments/sdk/domain/mandate_response.rb
263
267
  - lib/onlinepayments/sdk/domain/merchant_action.rb
@@ -266,6 +270,7 @@ files:
266
270
  - lib/onlinepayments/sdk/domain/mobile_payment_method_specific_input.rb
267
271
  - lib/onlinepayments/sdk/domain/mobile_payment_method_specific_output.rb
268
272
  - lib/onlinepayments/sdk/domain/mobile_payment_product320_specific_input.rb
273
+ - lib/onlinepayments/sdk/domain/multiple_payment_information.rb
269
274
  - lib/onlinepayments/sdk/domain/omnichannel_payout_specific_input.rb
270
275
  - lib/onlinepayments/sdk/domain/operation_output.rb
271
276
  - lib/onlinepayments/sdk/domain/order.rb
@@ -282,12 +287,14 @@ files:
282
287
  - lib/onlinepayments/sdk/domain/payment_link_order_input.rb
283
288
  - lib/onlinepayments/sdk/domain/payment_link_order_output.rb
284
289
  - lib/onlinepayments/sdk/domain/payment_link_response.rb
290
+ - lib/onlinepayments/sdk/domain/payment_link_specific_input.rb
285
291
  - lib/onlinepayments/sdk/domain/payment_output.rb
286
292
  - lib/onlinepayments/sdk/domain/payment_product.rb
287
293
  - lib/onlinepayments/sdk/domain/payment_product130_specific_input.rb
288
294
  - lib/onlinepayments/sdk/domain/payment_product130_specific_three_d_secure.rb
289
295
  - lib/onlinepayments/sdk/domain/payment_product3012.rb
290
296
  - lib/onlinepayments/sdk/domain/payment_product302_specific_data.rb
297
+ - lib/onlinepayments/sdk/domain/payment_product3203_specific_output.rb
291
298
  - lib/onlinepayments/sdk/domain/payment_product3208_specific_input.rb
292
299
  - lib/onlinepayments/sdk/domain/payment_product3208_specific_output.rb
293
300
  - lib/onlinepayments/sdk/domain/payment_product3209_specific_input.rb
@@ -335,7 +342,9 @@ files:
335
342
  - lib/onlinepayments/sdk/domain/redirect_data.rb
336
343
  - lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb
337
344
  - lib/onlinepayments/sdk/domain/redirect_payment_method_specific_output.rb
345
+ - lib/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.rb
338
346
  - lib/onlinepayments/sdk/domain/redirect_payment_product3306_specific_input.rb
347
+ - lib/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.rb
339
348
  - lib/onlinepayments/sdk/domain/redirect_payment_product5406_specific_input.rb
340
349
  - lib/onlinepayments/sdk/domain/redirect_payment_product5408_specific_input.rb
341
350
  - lib/onlinepayments/sdk/domain/redirect_payment_product809_specific_input.rb
@@ -366,6 +375,7 @@ files:
366
375
  - lib/onlinepayments/sdk/domain/shopping_cart_extension.rb
367
376
  - lib/onlinepayments/sdk/domain/show_form_data.rb
368
377
  - lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb
378
+ - lib/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.rb
369
379
  - lib/onlinepayments/sdk/domain/subsequent_payment_request.rb
370
380
  - lib/onlinepayments/sdk/domain/subsequent_payment_response.rb
371
381
  - lib/onlinepayments/sdk/domain/surcharge.rb