onlinepayments-sdk-ruby 4.20.0 → 4.22.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 (34) 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/card_essentials.rb +4 -0
  5. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input.rb +16 -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 +14 -0
  8. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_output.rb +8 -0
  9. data/lib/onlinepayments/sdk/domain/create_hosted_checkout_request.rb +8 -0
  10. data/lib/onlinepayments/sdk/domain/create_hosted_tokenization_request.rb +8 -0
  11. data/lib/onlinepayments/sdk/domain/create_payment_link_request.rb +64 -0
  12. data/lib/onlinepayments/sdk/domain/create_payment_request.rb +12 -0
  13. data/lib/onlinepayments/sdk/domain/credit_card_specific_input_hosted_tokenization.rb +10 -0
  14. data/lib/onlinepayments/sdk/domain/mobile_payment_method_specific_output.rb +8 -0
  15. data/lib/onlinepayments/sdk/domain/network_token_essentials.rb +38 -0
  16. data/lib/onlinepayments/sdk/domain/page_customization.rb +26 -0
  17. data/lib/onlinepayments/sdk/domain/payment_link_order_input.rb +8 -0
  18. data/lib/onlinepayments/sdk/domain/payment_link_order_output.rb +8 -0
  19. data/lib/onlinepayments/sdk/domain/payment_link_specific_input.rb +34 -0
  20. data/lib/onlinepayments/sdk/domain/payment_output.rb +8 -0
  21. data/lib/onlinepayments/sdk/domain/payment_product3012_specific_input.rb +38 -0
  22. data/lib/onlinepayments/sdk/domain/payment_product5002_specific_input.rb +34 -0
  23. data/lib/onlinepayments/sdk/domain/payment_product840.rb +26 -0
  24. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb +8 -0
  25. data/lib/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.rb +26 -0
  26. data/lib/onlinepayments/sdk/domain/show_form_data.rb +8 -0
  27. data/lib/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.rb +26 -0
  28. data/lib/onlinepayments/sdk/domain/subsequent_payment_request.rb +8 -0
  29. data/lib/onlinepayments/sdk/domain/surcharge_for_payment_link.rb +26 -0
  30. data/lib/onlinepayments/sdk/domain/three_d_secure.rb +24 -0
  31. data/lib/onlinepayments/sdk/domain/three_d_secure_base.rb +24 -0
  32. data/lib/onlinepayments/sdk/domain/three_ds_whitelist.rb +30 -0
  33. data/onlinepayments-sdk-ruby.gemspec +1 -1
  34. metadata +12 -2
@@ -3,21 +3,25 @@
3
3
  #
4
4
  require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/amount_of_money'
6
+ require 'onlinepayments/sdk/domain/surcharge_for_payment_link'
6
7
 
7
8
  module OnlinePayments::SDK
8
9
  module Domain
9
10
 
10
11
  # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount
11
12
  # @attr [String] merchant_reference
13
+ # @attr [OnlinePayments::SDK::Domain::SurchargeForPaymentLink] surcharge_specific_input
12
14
  class PaymentLinkOrderInput < OnlinePayments::SDK::DataObject
13
15
  attr_accessor :amount
14
16
  attr_accessor :merchant_reference
17
+ attr_accessor :surcharge_specific_input
15
18
 
16
19
  # @return (Hash)
17
20
  def to_h
18
21
  hash = super
19
22
  hash['amount'] = @amount.to_h if @amount
20
23
  hash['merchantReference'] = @merchant_reference unless @merchant_reference.nil?
24
+ hash['surchargeSpecificInput'] = @surcharge_specific_input.to_h if @surcharge_specific_input
21
25
  hash
22
26
  end
23
27
 
@@ -28,6 +32,10 @@ module OnlinePayments::SDK
28
32
  @amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amount'])
29
33
  end
30
34
  @merchant_reference = hash['merchantReference'] if hash.key? 'merchantReference'
35
+ if hash.key? 'surchargeSpecificInput'
36
+ raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificInput']] unless hash['surchargeSpecificInput'].is_a? Hash
37
+ @surcharge_specific_input = OnlinePayments::SDK::Domain::SurchargeForPaymentLink.new_from_hash(hash['surchargeSpecificInput'])
38
+ end
31
39
  end
32
40
  end
33
41
  end
@@ -3,21 +3,25 @@
3
3
  #
4
4
  require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/amount_of_money'
6
+ require 'onlinepayments/sdk/domain/surcharge_for_payment_link'
6
7
 
7
8
  module OnlinePayments::SDK
8
9
  module Domain
9
10
 
10
11
  # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount
11
12
  # @attr [String] merchant_reference
13
+ # @attr [OnlinePayments::SDK::Domain::SurchargeForPaymentLink] surcharge_specific_output
12
14
  class PaymentLinkOrderOutput < OnlinePayments::SDK::DataObject
13
15
  attr_accessor :amount
14
16
  attr_accessor :merchant_reference
17
+ attr_accessor :surcharge_specific_output
15
18
 
16
19
  # @return (Hash)
17
20
  def to_h
18
21
  hash = super
19
22
  hash['amount'] = @amount.to_h if @amount
20
23
  hash['merchantReference'] = @merchant_reference unless @merchant_reference.nil?
24
+ hash['surchargeSpecificOutput'] = @surcharge_specific_output.to_h if @surcharge_specific_output
21
25
  hash
22
26
  end
23
27
 
@@ -28,6 +32,10 @@ module OnlinePayments::SDK
28
32
  @amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amount'])
29
33
  end
30
34
  @merchant_reference = hash['merchantReference'] if hash.key? 'merchantReference'
35
+ if hash.key? 'surchargeSpecificOutput'
36
+ raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificOutput']] unless hash['surchargeSpecificOutput'].is_a? Hash
37
+ @surcharge_specific_output = OnlinePayments::SDK::Domain::SurchargeForPaymentLink.new_from_hash(hash['surchargeSpecificOutput'])
38
+ end
31
39
  end
32
40
  end
33
41
  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,38 @@
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 [true/false] force_authentication
10
+ # @attr [true/false] is_deferred_payment
11
+ # @attr [true/false] is_wip_transaction
12
+ # @attr [String] wip_merchant_authentication_method
13
+ class PaymentProduct3012SpecificInput < OnlinePayments::SDK::DataObject
14
+ attr_accessor :force_authentication
15
+ attr_accessor :is_deferred_payment
16
+ attr_accessor :is_wip_transaction
17
+ attr_accessor :wip_merchant_authentication_method
18
+
19
+ # @return (Hash)
20
+ def to_h
21
+ hash = super
22
+ hash['forceAuthentication'] = @force_authentication unless @force_authentication.nil?
23
+ hash['isDeferredPayment'] = @is_deferred_payment unless @is_deferred_payment.nil?
24
+ hash['isWipTransaction'] = @is_wip_transaction unless @is_wip_transaction.nil?
25
+ hash['wipMerchantAuthenticationMethod'] = @wip_merchant_authentication_method unless @wip_merchant_authentication_method.nil?
26
+ hash
27
+ end
28
+
29
+ def from_hash(hash)
30
+ super
31
+ @force_authentication = hash['forceAuthentication'] if hash.key? 'forceAuthentication'
32
+ @is_deferred_payment = hash['isDeferredPayment'] if hash.key? 'isDeferredPayment'
33
+ @is_wip_transaction = hash['isWipTransaction'] if hash.key? 'isWipTransaction'
34
+ @wip_merchant_authentication_method = hash['wipMerchantAuthenticationMethod'] if hash.key? 'wipMerchantAuthenticationMethod'
35
+ end
36
+ end
37
+ end
38
+ 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] checkout_response_signature
10
+ # @attr [String] credit_card_brand
11
+ # @attr [String] dpa_id
12
+ class PaymentProduct5002SpecificInput < OnlinePayments::SDK::DataObject
13
+ attr_accessor :checkout_response_signature
14
+ attr_accessor :credit_card_brand
15
+ attr_accessor :dpa_id
16
+
17
+ # @return (Hash)
18
+ def to_h
19
+ hash = super
20
+ hash['checkoutResponseSignature'] = @checkout_response_signature unless @checkout_response_signature.nil?
21
+ hash['creditCardBrand'] = @credit_card_brand unless @credit_card_brand.nil?
22
+ hash['dpaId'] = @dpa_id unless @dpa_id.nil?
23
+ hash
24
+ end
25
+
26
+ def from_hash(hash)
27
+ super
28
+ @checkout_response_signature = hash['checkoutResponseSignature'] if hash.key? 'checkoutResponseSignature'
29
+ @credit_card_brand = hash['creditCardBrand'] if hash.key? 'creditCardBrand'
30
+ @dpa_id = hash['dpaId'] if hash.key? 'dpaId'
31
+ end
32
+ end
33
+ end
34
+ 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] order_id
10
+ class PaymentProduct840 < OnlinePayments::SDK::DataObject
11
+ attr_accessor :order_id
12
+
13
+ # @return (Hash)
14
+ def to_h
15
+ hash = super
16
+ hash['orderId'] = @order_id unless @order_id.nil?
17
+ hash
18
+ end
19
+
20
+ def from_hash(hash)
21
+ super
22
+ @order_id = hash['orderId'] if hash.key? 'orderId'
23
+ end
24
+ end
25
+ end
26
+ end
@@ -3,6 +3,7 @@
3
3
  #
4
4
  require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/redirect_payment_product3306_specific_input'
6
+ require 'onlinepayments/sdk/domain/redirect_payment_product5001_specific_input'
6
7
  require 'onlinepayments/sdk/domain/redirect_payment_product5406_specific_input'
7
8
  require 'onlinepayments/sdk/domain/redirect_payment_product5408_specific_input'
8
9
  require 'onlinepayments/sdk/domain/redirect_payment_product809_specific_input'
@@ -14,6 +15,7 @@ module OnlinePayments::SDK
14
15
 
15
16
  # @attr [String] payment_option
16
17
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct3306SpecificInput] payment_product3306_specific_input
18
+ # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5001SpecificInput] payment_product5001_specific_input
17
19
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5406SpecificInput] payment_product5406_specific_input
18
20
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5408SpecificInput] payment_product5408_specific_input
19
21
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct809SpecificInput] payment_product809_specific_input
@@ -26,6 +28,7 @@ module OnlinePayments::SDK
26
28
  class RedirectPaymentMethodSpecificInput < OnlinePayments::SDK::DataObject
27
29
  attr_accessor :payment_option
28
30
  attr_accessor :payment_product3306_specific_input
31
+ attr_accessor :payment_product5001_specific_input
29
32
  attr_accessor :payment_product5406_specific_input
30
33
  attr_accessor :payment_product5408_specific_input
31
34
  attr_accessor :payment_product809_specific_input
@@ -41,6 +44,7 @@ module OnlinePayments::SDK
41
44
  hash = super
42
45
  hash['paymentOption'] = @payment_option unless @payment_option.nil?
43
46
  hash['paymentProduct3306SpecificInput'] = @payment_product3306_specific_input.to_h if @payment_product3306_specific_input
47
+ hash['paymentProduct5001SpecificInput'] = @payment_product5001_specific_input.to_h if @payment_product5001_specific_input
44
48
  hash['paymentProduct5406SpecificInput'] = @payment_product5406_specific_input.to_h if @payment_product5406_specific_input
45
49
  hash['paymentProduct5408SpecificInput'] = @payment_product5408_specific_input.to_h if @payment_product5408_specific_input
46
50
  hash['paymentProduct809SpecificInput'] = @payment_product809_specific_input.to_h if @payment_product809_specific_input
@@ -60,6 +64,10 @@ module OnlinePayments::SDK
60
64
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3306SpecificInput']] unless hash['paymentProduct3306SpecificInput'].is_a? Hash
61
65
  @payment_product3306_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct3306SpecificInput.new_from_hash(hash['paymentProduct3306SpecificInput'])
62
66
  end
67
+ if hash.key? 'paymentProduct5001SpecificInput'
68
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5001SpecificInput']] unless hash['paymentProduct5001SpecificInput'].is_a? Hash
69
+ @payment_product5001_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct5001SpecificInput.new_from_hash(hash['paymentProduct5001SpecificInput'])
70
+ end
63
71
  if hash.key? 'paymentProduct5406SpecificInput'
64
72
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5406SpecificInput']] unless hash['paymentProduct5406SpecificInput'].is_a? Hash
65
73
  @payment_product5406_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct5406SpecificInput.new_from_hash(hash['paymentProduct5406SpecificInput'])
@@ -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
@@ -5,6 +5,7 @@ require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/payment_product3012'
6
6
  require 'onlinepayments/sdk/domain/payment_product5404'
7
7
  require 'onlinepayments/sdk/domain/payment_product5407'
8
+ require 'onlinepayments/sdk/domain/payment_product840'
8
9
 
9
10
  module OnlinePayments::SDK
10
11
  module Domain
@@ -12,10 +13,12 @@ module OnlinePayments::SDK
12
13
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3012] payment_product3012
13
14
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct5404] payment_product5404
14
15
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct5407] payment_product5407
16
+ # @attr [OnlinePayments::SDK::Domain::PaymentProduct840] payment_product840
15
17
  class ShowFormData < OnlinePayments::SDK::DataObject
16
18
  attr_accessor :payment_product3012
17
19
  attr_accessor :payment_product5404
18
20
  attr_accessor :payment_product5407
21
+ attr_accessor :payment_product840
19
22
 
20
23
  # @return (Hash)
21
24
  def to_h
@@ -23,6 +26,7 @@ module OnlinePayments::SDK
23
26
  hash['paymentProduct3012'] = @payment_product3012.to_h if @payment_product3012
24
27
  hash['paymentProduct5404'] = @payment_product5404.to_h if @payment_product5404
25
28
  hash['paymentProduct5407'] = @payment_product5407.to_h if @payment_product5407
29
+ hash['paymentProduct840'] = @payment_product840.to_h if @payment_product840
26
30
  hash
27
31
  end
28
32
 
@@ -40,6 +44,10 @@ module OnlinePayments::SDK
40
44
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5407']] unless hash['paymentProduct5407'].is_a? Hash
41
45
  @payment_product5407 = OnlinePayments::SDK::Domain::PaymentProduct5407.new_from_hash(hash['paymentProduct5407'])
42
46
  end
47
+ if hash.key? 'paymentProduct840'
48
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct840']] unless hash['paymentProduct840'].is_a? Hash
49
+ @payment_product840 = OnlinePayments::SDK::Domain::PaymentProduct840.new_from_hash(hash['paymentProduct840'])
50
+ end
43
51
  end
44
52
  end
45
53
  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 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'])
@@ -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] surcharge_mode
10
+ class SurchargeForPaymentLink < OnlinePayments::SDK::DataObject
11
+ attr_accessor :surcharge_mode
12
+
13
+ # @return (Hash)
14
+ def to_h
15
+ hash = super
16
+ hash['surchargeMode'] = @surcharge_mode unless @surcharge_mode.nil?
17
+ hash
18
+ end
19
+
20
+ def from_hash(hash)
21
+ super
22
+ @surcharge_mode = hash['surchargeMode'] if hash.key? 'surchargeMode'
23
+ end
24
+ end
25
+ end
26
+ end
@@ -4,6 +4,7 @@
4
4
  require 'onlinepayments/sdk/data_object'
5
5
  require 'onlinepayments/sdk/domain/external_cardholder_authentication_data'
6
6
  require 'onlinepayments/sdk/domain/redirection_data'
7
+ require 'onlinepayments/sdk/domain/three_ds_whitelist'
7
8
  require 'onlinepayments/sdk/domain/three_d_secure_data'
8
9
 
9
10
  module OnlinePayments::SDK
@@ -12,26 +13,36 @@ module OnlinePayments::SDK
12
13
  # @attr [Long] authentication_amount
13
14
  # @attr [String] challenge_canvas_size
14
15
  # @attr [String] challenge_indicator
16
+ # @attr [true/false] decoupled_indicator
17
+ # @attr [String] decoupled_max_time
15
18
  # @attr [String] exemption_request
16
19
  # @attr [OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData] external_cardholder_authentication_data
17
20
  # @attr [Integer] merchant_fraud_rate
21
+ # @attr [String] payment_token_source
18
22
  # @attr [OnlinePayments::SDK::Domain::ThreeDSecureData] prior_three_d_secure_data
19
23
  # @attr [OnlinePayments::SDK::Domain::RedirectionData] redirection_data
20
24
  # @attr [true/false] secure_corporate_payment
21
25
  # @attr [true/false] skip_authentication
22
26
  # @attr [true/false] skip_soft_decline
27
+ # @attr [String] three_ri_indicator
28
+ # @attr [OnlinePayments::SDK::Domain::ThreeDSWhitelist] whitelist
23
29
  class ThreeDSecure < OnlinePayments::SDK::DataObject
24
30
  attr_accessor :authentication_amount
25
31
  attr_accessor :challenge_canvas_size
26
32
  attr_accessor :challenge_indicator
33
+ attr_accessor :decoupled_indicator
34
+ attr_accessor :decoupled_max_time
27
35
  attr_accessor :exemption_request
28
36
  attr_accessor :external_cardholder_authentication_data
29
37
  attr_accessor :merchant_fraud_rate
38
+ attr_accessor :payment_token_source
30
39
  attr_accessor :prior_three_d_secure_data
31
40
  attr_accessor :redirection_data
32
41
  attr_accessor :secure_corporate_payment
33
42
  attr_accessor :skip_authentication
34
43
  attr_accessor :skip_soft_decline
44
+ attr_accessor :three_ri_indicator
45
+ attr_accessor :whitelist
35
46
 
36
47
  # @return (Hash)
37
48
  def to_h
@@ -39,14 +50,19 @@ module OnlinePayments::SDK
39
50
  hash['authenticationAmount'] = @authentication_amount unless @authentication_amount.nil?
40
51
  hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
41
52
  hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
53
+ hash['decoupledIndicator'] = @decoupled_indicator unless @decoupled_indicator.nil?
54
+ hash['decoupledMaxTime'] = @decoupled_max_time unless @decoupled_max_time.nil?
42
55
  hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
43
56
  hash['externalCardholderAuthenticationData'] = @external_cardholder_authentication_data.to_h if @external_cardholder_authentication_data
44
57
  hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
58
+ hash['paymentTokenSource'] = @payment_token_source unless @payment_token_source.nil?
45
59
  hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h if @prior_three_d_secure_data
46
60
  hash['redirectionData'] = @redirection_data.to_h if @redirection_data
47
61
  hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
48
62
  hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
49
63
  hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
64
+ hash['threeRIIndicator'] = @three_ri_indicator unless @three_ri_indicator.nil?
65
+ hash['whitelist'] = @whitelist.to_h if @whitelist
50
66
  hash
51
67
  end
52
68
 
@@ -55,12 +71,15 @@ module OnlinePayments::SDK
55
71
  @authentication_amount = hash['authenticationAmount'] if hash.key? 'authenticationAmount'
56
72
  @challenge_canvas_size = hash['challengeCanvasSize'] if hash.key? 'challengeCanvasSize'
57
73
  @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
74
+ @decoupled_indicator = hash['decoupledIndicator'] if hash.key? 'decoupledIndicator'
75
+ @decoupled_max_time = hash['decoupledMaxTime'] if hash.key? 'decoupledMaxTime'
58
76
  @exemption_request = hash['exemptionRequest'] if hash.key? 'exemptionRequest'
59
77
  if hash.key? 'externalCardholderAuthenticationData'
60
78
  raise TypeError, "value '%s' is not a Hash" % [hash['externalCardholderAuthenticationData']] unless hash['externalCardholderAuthenticationData'].is_a? Hash
61
79
  @external_cardholder_authentication_data = OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData.new_from_hash(hash['externalCardholderAuthenticationData'])
62
80
  end
63
81
  @merchant_fraud_rate = hash['merchantFraudRate'] if hash.key? 'merchantFraudRate'
82
+ @payment_token_source = hash['paymentTokenSource'] if hash.key? 'paymentTokenSource'
64
83
  if hash.key? 'priorThreeDSecureData'
65
84
  raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
66
85
  @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
@@ -72,6 +91,11 @@ module OnlinePayments::SDK
72
91
  @secure_corporate_payment = hash['secureCorporatePayment'] if hash.key? 'secureCorporatePayment'
73
92
  @skip_authentication = hash['skipAuthentication'] if hash.key? 'skipAuthentication'
74
93
  @skip_soft_decline = hash['skipSoftDecline'] if hash.key? 'skipSoftDecline'
94
+ @three_ri_indicator = hash['threeRIIndicator'] if hash.key? 'threeRIIndicator'
95
+ if hash.key? 'whitelist'
96
+ raise TypeError, "value '%s' is not a Hash" % [hash['whitelist']] unless hash['whitelist'].is_a? Hash
97
+ @whitelist = OnlinePayments::SDK::Domain::ThreeDSWhitelist.new_from_hash(hash['whitelist'])
98
+ end
75
99
  end
76
100
  end
77
101
  end
@@ -2,6 +2,7 @@
2
2
  # This class was auto-generated.
3
3
  #
4
4
  require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/three_ds_whitelist'
5
6
  require 'onlinepayments/sdk/domain/three_d_secure_data'
6
7
 
7
8
  module OnlinePayments::SDK
@@ -9,33 +10,48 @@ module OnlinePayments::SDK
9
10
 
10
11
  # @attr [String] challenge_canvas_size
11
12
  # @attr [String] challenge_indicator
13
+ # @attr [true/false] decoupled_indicator
14
+ # @attr [String] decoupled_max_time
12
15
  # @attr [String] exemption_request
13
16
  # @attr [Integer] merchant_fraud_rate
17
+ # @attr [String] payment_token_source
14
18
  # @attr [OnlinePayments::SDK::Domain::ThreeDSecureData] prior_three_d_secure_data
15
19
  # @attr [true/false] secure_corporate_payment
16
20
  # @attr [true/false] skip_authentication
17
21
  # @attr [true/false] skip_soft_decline
22
+ # @attr [String] three_ri_indicator
23
+ # @attr [OnlinePayments::SDK::Domain::ThreeDSWhitelist] whitelist
18
24
  class ThreeDSecureBase < OnlinePayments::SDK::DataObject
19
25
  attr_accessor :challenge_canvas_size
20
26
  attr_accessor :challenge_indicator
27
+ attr_accessor :decoupled_indicator
28
+ attr_accessor :decoupled_max_time
21
29
  attr_accessor :exemption_request
22
30
  attr_accessor :merchant_fraud_rate
31
+ attr_accessor :payment_token_source
23
32
  attr_accessor :prior_three_d_secure_data
24
33
  attr_accessor :secure_corporate_payment
25
34
  attr_accessor :skip_authentication
26
35
  attr_accessor :skip_soft_decline
36
+ attr_accessor :three_ri_indicator
37
+ attr_accessor :whitelist
27
38
 
28
39
  # @return (Hash)
29
40
  def to_h
30
41
  hash = super
31
42
  hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
32
43
  hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
44
+ hash['decoupledIndicator'] = @decoupled_indicator unless @decoupled_indicator.nil?
45
+ hash['decoupledMaxTime'] = @decoupled_max_time unless @decoupled_max_time.nil?
33
46
  hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
34
47
  hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
48
+ hash['paymentTokenSource'] = @payment_token_source unless @payment_token_source.nil?
35
49
  hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h if @prior_three_d_secure_data
36
50
  hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
37
51
  hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
38
52
  hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
53
+ hash['threeRIIndicator'] = @three_ri_indicator unless @three_ri_indicator.nil?
54
+ hash['whitelist'] = @whitelist.to_h if @whitelist
39
55
  hash
40
56
  end
41
57
 
@@ -43,8 +59,11 @@ module OnlinePayments::SDK
43
59
  super
44
60
  @challenge_canvas_size = hash['challengeCanvasSize'] if hash.key? 'challengeCanvasSize'
45
61
  @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
62
+ @decoupled_indicator = hash['decoupledIndicator'] if hash.key? 'decoupledIndicator'
63
+ @decoupled_max_time = hash['decoupledMaxTime'] if hash.key? 'decoupledMaxTime'
46
64
  @exemption_request = hash['exemptionRequest'] if hash.key? 'exemptionRequest'
47
65
  @merchant_fraud_rate = hash['merchantFraudRate'] if hash.key? 'merchantFraudRate'
66
+ @payment_token_source = hash['paymentTokenSource'] if hash.key? 'paymentTokenSource'
48
67
  if hash.key? 'priorThreeDSecureData'
49
68
  raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
50
69
  @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
@@ -52,6 +71,11 @@ module OnlinePayments::SDK
52
71
  @secure_corporate_payment = hash['secureCorporatePayment'] if hash.key? 'secureCorporatePayment'
53
72
  @skip_authentication = hash['skipAuthentication'] if hash.key? 'skipAuthentication'
54
73
  @skip_soft_decline = hash['skipSoftDecline'] if hash.key? 'skipSoftDecline'
74
+ @three_ri_indicator = hash['threeRIIndicator'] if hash.key? 'threeRIIndicator'
75
+ if hash.key? 'whitelist'
76
+ raise TypeError, "value '%s' is not a Hash" % [hash['whitelist']] unless hash['whitelist'].is_a? Hash
77
+ @whitelist = OnlinePayments::SDK::Domain::ThreeDSWhitelist.new_from_hash(hash['whitelist'])
78
+ end
55
79
  end
56
80
  end
57
81
  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] source
10
+ # @attr [String] status
11
+ class ThreeDSWhitelist < OnlinePayments::SDK::DataObject
12
+ attr_accessor :source
13
+ attr_accessor :status
14
+
15
+ # @return (Hash)
16
+ def to_h
17
+ hash = super
18
+ hash['source'] = @source unless @source.nil?
19
+ hash['status'] = @status unless @status.nil?
20
+ hash
21
+ end
22
+
23
+ def from_hash(hash)
24
+ super
25
+ @source = hash['source'] if hash.key? 'source'
26
+ @status = hash['status'] if hash.key? 'status'
27
+ end
28
+ end
29
+ end
30
+ end