onlinepayments-sdk-ruby 6.2.0 → 6.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a2a294ce28b875c0ec624ff4eaef06d2fdecb48dad24a20aadfcce18dd51034c
4
- data.tar.gz: 80f179289eaeb804812b7f04e286c729c950a59033ebc65a87eaf61a6248a4db
3
+ metadata.gz: 2a6d707682cd845e5d0541dc184edf99eb2a126809fa4ce6cb49e6fa7e0256c1
4
+ data.tar.gz: 6c4f82808408e62a1401bf4171d45602e5d0bcd98da7d41858eca735b2ba1c99
5
5
  SHA512:
6
- metadata.gz: 3bf250869af8eb4df9778232de91fadb10eb37d201efea511a18fa8edf16c6e5ce5f82b18ae00aae2040af03c3b1a474ee3b943fe549dbe8042697e9ac1df1a8
7
- data.tar.gz: 37424c758395edb18071f64f72a0781c1637bd84697f79822b49cb49223393ceb5cd1657c0e48f4e95fdc63c3e81f94fc187a5478f3da1fb012bbe350d23ebda
6
+ metadata.gz: 9d8ab2ada940be33aacdb017ea4d24ed999ff3ec53e7971a4ef9c7b716a34b550a29c3d559aea3a431bfcd9f0ea713916c83734cf50be52ea3babb36f0400468
7
+ data.tar.gz: 4bc54323279a58b0586a5150acd652bb2e33ef612ef9ef5893922229aa8dcd691567db339cfc68383b0eed022ee705ca07933ebbd9f05995b0332456ae9ddd91
@@ -15,7 +15,7 @@ module OnlinePayments
15
15
  HMAC_ALGOR = 'SHA256'.freeze
16
16
  CONTENT_TYPE = 'Content-Type'.freeze
17
17
  DATE = 'Date'.freeze
18
- XGCS = 'x-gcs'.freeze
18
+ XGCS = 'X-GCS'.freeze
19
19
 
20
20
  # Constructs a new V1HmacAuthenticator instance using the provided CommunicatorConfiguration.
21
21
  #
@@ -66,7 +66,7 @@ module OnlinePayments
66
66
  content_type = value
67
67
  when name.casecmp(DATE).zero?
68
68
  date = value
69
- when to_canonical_header_name(name).start_with?("x-gcs")
69
+ when to_canonical_header_name(name).start_with?("X-GCS")
70
70
  xgc_http_headers << [to_canonical_header_name(name), to_canonical_header_value(value)]
71
71
  end
72
72
  end
@@ -13,7 +13,7 @@ module OnlinePayments
13
13
  class MetadataProvider
14
14
  private
15
15
 
16
- SDK_VERSION = '6.2.0'.freeze
16
+ SDK_VERSION = '6.3.0'.freeze
17
17
  SERVER_META_INFO_HEADER = 'X-GCS-ServerMetaInfo'.freeze
18
18
  PROHIBITED_HEADERS = [SERVER_META_INFO_HEADER, 'X-GCS-Idempotence-Key', 'Date', 'Content-Type', 'Authorization'].sort!.freeze
19
19
  CHARSET = 'utf-8'.freeze
@@ -9,6 +9,7 @@ require 'onlinepayments/sdk/domain/multiple_payment_information'
9
9
  require 'onlinepayments/sdk/domain/network_token_data'
10
10
  require 'onlinepayments/sdk/domain/payment_product130_specific_input'
11
11
  require 'onlinepayments/sdk/domain/payment_product3012_specific_input'
12
+ require 'onlinepayments/sdk/domain/payment_product3013_specific_input'
12
13
  require 'onlinepayments/sdk/domain/payment_product3208_specific_input'
13
14
  require 'onlinepayments/sdk/domain/payment_product3209_specific_input'
14
15
  require 'onlinepayments/sdk/domain/three_d_secure'
@@ -29,6 +30,7 @@ module OnlinePayments
29
30
  # @attr [OnlinePayments::SDK::Domain::NetworkTokenData] network_token_data
30
31
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct130SpecificInput] payment_product130_specific_input
31
32
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3012SpecificInput] payment_product3012_specific_input
33
+ # @attr [OnlinePayments::SDK::Domain::PaymentProduct3013SpecificInput] payment_product3013_specific_input
32
34
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3208SpecificInput] payment_product3208_specific_input
33
35
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3209SpecificInput] payment_product3209_specific_input
34
36
  # @attr [Integer] payment_product_id
@@ -70,6 +72,8 @@ module OnlinePayments
70
72
 
71
73
  attr_accessor :payment_product3012_specific_input
72
74
 
75
+ attr_accessor :payment_product3013_specific_input
76
+
73
77
  attr_accessor :payment_product3208_specific_input
74
78
 
75
79
  attr_accessor :payment_product3209_specific_input
@@ -113,6 +117,7 @@ module OnlinePayments
113
117
  hash['networkTokenData'] = @network_token_data.to_h unless @network_token_data.nil?
114
118
  hash['paymentProduct130SpecificInput'] = @payment_product130_specific_input.to_h unless @payment_product130_specific_input.nil?
115
119
  hash['paymentProduct3012SpecificInput'] = @payment_product3012_specific_input.to_h unless @payment_product3012_specific_input.nil?
120
+ hash['paymentProduct3013SpecificInput'] = @payment_product3013_specific_input.to_h unless @payment_product3013_specific_input.nil?
116
121
  hash['paymentProduct3208SpecificInput'] = @payment_product3208_specific_input.to_h unless @payment_product3208_specific_input.nil?
117
122
  hash['paymentProduct3209SpecificInput'] = @payment_product3209_specific_input.to_h unless @payment_product3209_specific_input.nil?
118
123
  hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
@@ -176,6 +181,10 @@ module OnlinePayments
176
181
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3012SpecificInput']] unless hash['paymentProduct3012SpecificInput'].is_a? Hash
177
182
  @payment_product3012_specific_input = OnlinePayments::SDK::Domain::PaymentProduct3012SpecificInput.new_from_hash(hash['paymentProduct3012SpecificInput'])
178
183
  end
184
+ if hash.has_key? 'paymentProduct3013SpecificInput'
185
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3013SpecificInput']] unless hash['paymentProduct3013SpecificInput'].is_a? Hash
186
+ @payment_product3013_specific_input = OnlinePayments::SDK::Domain::PaymentProduct3013SpecificInput.new_from_hash(hash['paymentProduct3013SpecificInput'])
187
+ end
179
188
  if hash.has_key? 'paymentProduct3208SpecificInput'
180
189
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3208SpecificInput']] unless hash['paymentProduct3208SpecificInput'].is_a? Hash
181
190
  @payment_product3208_specific_input = OnlinePayments::SDK::Domain::PaymentProduct3208SpecificInput.new_from_hash(hash['paymentProduct3208SpecificInput'])
@@ -7,6 +7,7 @@ require 'onlinepayments/sdk/domain/data_object'
7
7
  require 'onlinepayments/sdk/domain/multiple_payment_information'
8
8
  require 'onlinepayments/sdk/domain/payment_product130_specific_input'
9
9
  require 'onlinepayments/sdk/domain/payment_product3012_specific_input'
10
+ require 'onlinepayments/sdk/domain/payment_product3013_specific_input'
10
11
  require 'onlinepayments/sdk/domain/payment_product3208_specific_input'
11
12
  require 'onlinepayments/sdk/domain/payment_product3209_specific_input'
12
13
  require 'onlinepayments/sdk/domain/payment_product5100_specific_input'
@@ -22,6 +23,7 @@ module OnlinePayments
22
23
  # @attr [OnlinePayments::SDK::Domain::MultiplePaymentInformation] multiple_payment_information
23
24
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct130SpecificInput] payment_product130_specific_input
24
25
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3012SpecificInput] payment_product3012_specific_input
26
+ # @attr [OnlinePayments::SDK::Domain::PaymentProduct3013SpecificInput] payment_product3013_specific_input
25
27
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3208SpecificInput] payment_product3208_specific_input
26
28
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct3209SpecificInput] payment_product3209_specific_input
27
29
  # @attr [OnlinePayments::SDK::Domain::PaymentProduct5100SpecificInput] payment_product5100_specific_input
@@ -49,6 +51,8 @@ module OnlinePayments
49
51
 
50
52
  attr_accessor :payment_product3012_specific_input
51
53
 
54
+ attr_accessor :payment_product3013_specific_input
55
+
52
56
  attr_accessor :payment_product3208_specific_input
53
57
 
54
58
  attr_accessor :payment_product3209_specific_input
@@ -81,6 +85,7 @@ module OnlinePayments
81
85
  hash['multiplePaymentInformation'] = @multiple_payment_information.to_h unless @multiple_payment_information.nil?
82
86
  hash['paymentProduct130SpecificInput'] = @payment_product130_specific_input.to_h unless @payment_product130_specific_input.nil?
83
87
  hash['paymentProduct3012SpecificInput'] = @payment_product3012_specific_input.to_h unless @payment_product3012_specific_input.nil?
88
+ hash['paymentProduct3013SpecificInput'] = @payment_product3013_specific_input.to_h unless @payment_product3013_specific_input.nil?
84
89
  hash['paymentProduct3208SpecificInput'] = @payment_product3208_specific_input.to_h unless @payment_product3208_specific_input.nil?
85
90
  hash['paymentProduct3209SpecificInput'] = @payment_product3209_specific_input.to_h unless @payment_product3209_specific_input.nil?
86
91
  hash['paymentProduct5100SpecificInput'] = @payment_product5100_specific_input.to_h unless @payment_product5100_specific_input.nil?
@@ -122,6 +127,10 @@ module OnlinePayments
122
127
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3012SpecificInput']] unless hash['paymentProduct3012SpecificInput'].is_a? Hash
123
128
  @payment_product3012_specific_input = OnlinePayments::SDK::Domain::PaymentProduct3012SpecificInput.new_from_hash(hash['paymentProduct3012SpecificInput'])
124
129
  end
130
+ if hash.has_key? 'paymentProduct3013SpecificInput'
131
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3013SpecificInput']] unless hash['paymentProduct3013SpecificInput'].is_a? Hash
132
+ @payment_product3013_specific_input = OnlinePayments::SDK::Domain::PaymentProduct3013SpecificInput.new_from_hash(hash['paymentProduct3013SpecificInput'])
133
+ end
125
134
  if hash.has_key? 'paymentProduct3208SpecificInput'
126
135
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3208SpecificInput']] unless hash['paymentProduct3208SpecificInput'].is_a? Hash
127
136
  @payment_product3208_specific_input = OnlinePayments::SDK::Domain::PaymentProduct3208SpecificInput.new_from_hash(hash['paymentProduct3208SpecificInput'])
@@ -8,17 +8,21 @@ module OnlinePayments
8
8
  module SDK
9
9
  module Domain
10
10
  # @attr [OnlinePayments::SDK::Domain::TokenCardSpecificInput] card
11
+ # @attr [String] encrypted_customer_input
11
12
  # @attr [Integer] payment_product_id
12
13
  class CreateTokenRequest < OnlinePayments::SDK::Domain::DataObject
13
14
 
14
15
  attr_accessor :card
15
16
 
17
+ attr_accessor :encrypted_customer_input
18
+
16
19
  attr_accessor :payment_product_id
17
20
 
18
21
  # @return (Hash)
19
22
  def to_h
20
23
  hash = super
21
24
  hash['card'] = @card.to_h unless @card.nil?
25
+ hash['encryptedCustomerInput'] = @encrypted_customer_input unless @encrypted_customer_input.nil?
22
26
  hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
23
27
  hash
24
28
  end
@@ -29,6 +33,9 @@ module OnlinePayments
29
33
  raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
30
34
  @card = OnlinePayments::SDK::Domain::TokenCardSpecificInput.new_from_hash(hash['card'])
31
35
  end
36
+ if hash.has_key? 'encryptedCustomerInput'
37
+ @encrypted_customer_input = hash['encryptedCustomerInput']
38
+ end
32
39
  if hash.has_key? 'paymentProductId'
33
40
  @payment_product_id = hash['paymentProductId']
34
41
  end
@@ -22,6 +22,7 @@ module OnlinePayments
22
22
  # @attr [OnlinePayments::SDK::Domain::Shipping] shipping
23
23
  # @attr [OnlinePayments::SDK::Domain::ShoppingCart] shopping_cart
24
24
  # @attr [OnlinePayments::SDK::Domain::SurchargeSpecificInput] surcharge_specific_input
25
+ # @attr [Integer] total_tax_amount
25
26
  class Order < OnlinePayments::SDK::Domain::DataObject
26
27
 
27
28
  attr_accessor :additional_input
@@ -40,6 +41,8 @@ module OnlinePayments
40
41
 
41
42
  attr_accessor :surcharge_specific_input
42
43
 
44
+ attr_accessor :total_tax_amount
45
+
43
46
  # @return (Hash)
44
47
  def to_h
45
48
  hash = super
@@ -51,6 +54,7 @@ module OnlinePayments
51
54
  hash['shipping'] = @shipping.to_h unless @shipping.nil?
52
55
  hash['shoppingCart'] = @shopping_cart.to_h unless @shopping_cart.nil?
53
56
  hash['surchargeSpecificInput'] = @surcharge_specific_input.to_h unless @surcharge_specific_input.nil?
57
+ hash['totalTaxAmount'] = @total_tax_amount unless @total_tax_amount.nil?
54
58
  hash
55
59
  end
56
60
 
@@ -88,6 +92,9 @@ module OnlinePayments
88
92
  raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificInput']] unless hash['surchargeSpecificInput'].is_a? Hash
89
93
  @surcharge_specific_input = OnlinePayments::SDK::Domain::SurchargeSpecificInput.new_from_hash(hash['surchargeSpecificInput'])
90
94
  end
95
+ if hash.has_key? 'totalTaxAmount'
96
+ @total_tax_amount = hash['totalTaxAmount']
97
+ end
91
98
  end
92
99
  end
93
100
  end
@@ -0,0 +1,35 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ require 'onlinepayments/sdk/domain/data_object'
5
+ require 'onlinepayments/sdk/domain/payment_link_response'
6
+
7
+ module OnlinePayments
8
+ module SDK
9
+ module Domain
10
+ # @attr [Array<OnlinePayments::SDK::Domain::PaymentLinkResponse>] payment_links
11
+ class PaymentLinksResponse < OnlinePayments::SDK::Domain::DataObject
12
+
13
+ attr_accessor :payment_links
14
+
15
+ # @return (Hash)
16
+ def to_h
17
+ hash = super
18
+ hash['PaymentLinks'] = @payment_links.collect{|val| val.to_h} unless @payment_links.nil?
19
+ hash
20
+ end
21
+
22
+ def from_hash(hash)
23
+ super
24
+ if hash.has_key? 'PaymentLinks'
25
+ raise TypeError, "value '%s' is not an Array" % [hash['PaymentLinks']] unless hash['PaymentLinks'].is_a? Array
26
+ @payment_links = []
27
+ hash['PaymentLinks'].each do |e|
28
+ @payment_links << OnlinePayments::SDK::Domain::PaymentLinkResponse.new_from_hash(e)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,44 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ require 'onlinepayments/sdk/domain/data_object'
5
+
6
+ module OnlinePayments
7
+ module SDK
8
+ module Domain
9
+ # @attr [String] market_number
10
+ # @attr [String] purchasing_buyer_reference1
11
+ # @attr [String] purchasing_buyer_reference2
12
+ class PaymentProduct3013SpecificInput < OnlinePayments::SDK::Domain::DataObject
13
+
14
+ attr_accessor :market_number
15
+
16
+ attr_accessor :purchasing_buyer_reference1
17
+
18
+ attr_accessor :purchasing_buyer_reference2
19
+
20
+ # @return (Hash)
21
+ def to_h
22
+ hash = super
23
+ hash['marketNumber'] = @market_number unless @market_number.nil?
24
+ hash['purchasingBuyerReference1'] = @purchasing_buyer_reference1 unless @purchasing_buyer_reference1.nil?
25
+ hash['purchasingBuyerReference2'] = @purchasing_buyer_reference2 unless @purchasing_buyer_reference2.nil?
26
+ hash
27
+ end
28
+
29
+ def from_hash(hash)
30
+ super
31
+ if hash.has_key? 'marketNumber'
32
+ @market_number = hash['marketNumber']
33
+ end
34
+ if hash.has_key? 'purchasingBuyerReference1'
35
+ @purchasing_buyer_reference1 = hash['purchasingBuyerReference1']
36
+ end
37
+ if hash.has_key? 'purchasingBuyerReference2'
38
+ @purchasing_buyer_reference2 = hash['purchasingBuyerReference2']
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -13,6 +13,7 @@ require 'onlinepayments/sdk/domain/redirect_payment_product5403_specific_input'
13
13
  require 'onlinepayments/sdk/domain/redirect_payment_product5406_specific_input'
14
14
  require 'onlinepayments/sdk/domain/redirect_payment_product5408_specific_input'
15
15
  require 'onlinepayments/sdk/domain/redirect_payment_product5410_specific_input'
16
+ require 'onlinepayments/sdk/domain/redirect_payment_product5412_specific_input'
16
17
  require 'onlinepayments/sdk/domain/redirect_payment_product809_specific_input'
17
18
  require 'onlinepayments/sdk/domain/redirect_payment_product840_specific_input'
18
19
  require 'onlinepayments/sdk/domain/redirection_data'
@@ -32,6 +33,7 @@ module OnlinePayments
32
33
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5406SpecificInput] payment_product5406_specific_input
33
34
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5408SpecificInput] payment_product5408_specific_input
34
35
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5410SpecificInput] payment_product5410_specific_input
36
+ # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct5412SpecificInput] payment_product5412_specific_input
35
37
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct809SpecificInput] payment_product809_specific_input
36
38
  # @attr [OnlinePayments::SDK::Domain::RedirectPaymentProduct840SpecificInput] payment_product840_specific_input
37
39
  # @attr [Integer] payment_product_id
@@ -65,6 +67,8 @@ module OnlinePayments
65
67
 
66
68
  attr_accessor :payment_product5410_specific_input
67
69
 
70
+ attr_accessor :payment_product5412_specific_input
71
+
68
72
  attr_accessor :payment_product809_specific_input
69
73
 
70
74
  attr_accessor :payment_product840_specific_input
@@ -94,6 +98,7 @@ module OnlinePayments
94
98
  hash['paymentProduct5406SpecificInput'] = @payment_product5406_specific_input.to_h unless @payment_product5406_specific_input.nil?
95
99
  hash['paymentProduct5408SpecificInput'] = @payment_product5408_specific_input.to_h unless @payment_product5408_specific_input.nil?
96
100
  hash['paymentProduct5410SpecificInput'] = @payment_product5410_specific_input.to_h unless @payment_product5410_specific_input.nil?
101
+ hash['paymentProduct5412SpecificInput'] = @payment_product5412_specific_input.to_h unless @payment_product5412_specific_input.nil?
97
102
  hash['paymentProduct809SpecificInput'] = @payment_product809_specific_input.to_h unless @payment_product809_specific_input.nil?
98
103
  hash['paymentProduct840SpecificInput'] = @payment_product840_specific_input.to_h unless @payment_product840_specific_input.nil?
99
104
  hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
@@ -153,6 +158,10 @@ module OnlinePayments
153
158
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5410SpecificInput']] unless hash['paymentProduct5410SpecificInput'].is_a? Hash
154
159
  @payment_product5410_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct5410SpecificInput.new_from_hash(hash['paymentProduct5410SpecificInput'])
155
160
  end
161
+ if hash.has_key? 'paymentProduct5412SpecificInput'
162
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5412SpecificInput']] unless hash['paymentProduct5412SpecificInput'].is_a? Hash
163
+ @payment_product5412_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct5412SpecificInput.new_from_hash(hash['paymentProduct5412SpecificInput'])
164
+ end
156
165
  if hash.has_key? 'paymentProduct809SpecificInput'
157
166
  raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct809SpecificInput']] unless hash['paymentProduct809SpecificInput'].is_a? Hash
158
167
  @payment_product809_specific_input = OnlinePayments::SDK::Domain::RedirectPaymentProduct809SpecificInput.new_from_hash(hash['paymentProduct809SpecificInput'])
@@ -0,0 +1,30 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ require 'onlinepayments/sdk/domain/data_object'
5
+
6
+ module OnlinePayments
7
+ module SDK
8
+ module Domain
9
+ # @attr [true/false] adjustable_amount
10
+ class RedirectPaymentProduct5412SpecificInput < OnlinePayments::SDK::Domain::DataObject
11
+
12
+ attr_accessor :adjustable_amount
13
+
14
+ # @return (Hash)
15
+ def to_h
16
+ hash = super
17
+ hash['adjustableAmount'] = @adjustable_amount unless @adjustable_amount.nil?
18
+ hash
19
+ end
20
+
21
+ def from_hash(hash)
22
+ super
23
+ if hash.has_key? 'adjustableAmount'
24
+ @adjustable_amount = hash['adjustableAmount']
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -16,6 +16,7 @@ require 'onlinepayments/sdk/merchant/products/products_client'
16
16
  require 'onlinepayments/sdk/merchant/refunds/refunds_client'
17
17
  require 'onlinepayments/sdk/merchant/services/services_client'
18
18
  require 'onlinepayments/sdk/merchant/sessions/sessions_client'
19
+ require 'onlinepayments/sdk/merchant/subsequent/subsequent_client'
19
20
  require 'onlinepayments/sdk/merchant/tokens/tokens_client'
20
21
  require 'onlinepayments/sdk/merchant/webhooks/webhooks_client'
21
22
 
@@ -73,6 +74,13 @@ module OnlinePayments
73
74
  OnlinePayments::SDK::Merchant::Complete::CompleteClient.new(self, nil)
74
75
  end
75
76
 
77
+ # Resource /v2/{merchantId}/payments/{paymentId}/subsequent
78
+ #
79
+ # @return [OnlinePayments::SDK::Merchant::Subsequent::SubsequentClient]
80
+ def subsequent
81
+ OnlinePayments::SDK::Merchant::Subsequent::SubsequentClient.new(self, nil)
82
+ end
83
+
76
84
  # Resource /v2/{merchantId}/productgroups
77
85
  #
78
86
  # @return [OnlinePayments::SDK::Merchant::ProductGroups::ProductGroupsClient]
@@ -0,0 +1,28 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ require 'onlinepayments/sdk/communication/param_request'
5
+ require 'onlinepayments/sdk/communication/request_param'
6
+
7
+ module OnlinePayments
8
+ module SDK
9
+ module Merchant
10
+ module PaymentLinks
11
+ # Query parameters for Get payment links (/v2/{merchantId}/paymentlinks)
12
+ #
13
+ # @attr [String] operation_group_reference
14
+ class GetPaymentLinksInBulkParams < OnlinePayments::SDK::Communication::ParamRequest
15
+
16
+ attr_accessor :operation_group_reference
17
+
18
+ # @return [Array<OnlinePayments::SDK::Communication::RequestParam>] representing the attributes of this class
19
+ def to_request_parameters
20
+ result = []
21
+ result << RequestParam.new('operationGroupReference', @operation_group_reference) unless @operation_group_reference.nil?
22
+ result
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -6,6 +6,7 @@ require 'onlinepayments/sdk/exception_factory'
6
6
  require 'onlinepayments/sdk/communication/response_exception'
7
7
  require 'onlinepayments/sdk/domain/error_response'
8
8
  require 'onlinepayments/sdk/domain/payment_link_response'
9
+ require 'onlinepayments/sdk/domain/payment_links_response'
9
10
 
10
11
  module OnlinePayments
11
12
  module SDK
@@ -20,6 +21,34 @@ module OnlinePayments
20
21
  super(parent: parent, path_context: path_context)
21
22
  end
22
23
 
24
+ # Resource /v2/!{merchantId}/paymentlinks - Get payment links
25
+ #
26
+ # @param query [OnlinePayments::SDK::Merchant::PaymentLinks::GetPaymentLinksInBulkParams]
27
+ # @param context [OnlinePayments::SDK::CallContext, nil]
28
+ # @return [OnlinePayments::SDK::Domain::PaymentLinksResponse]
29
+ # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
30
+ # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
31
+ # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
32
+ # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
33
+ # or there was a conflict (HTTP status code 404, 409 or 410)
34
+ # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
35
+ # the payment platform was unable to process a message from a downstream partner/acquirer,
36
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
37
+ # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
38
+ def get_payment_links_in_bulk(query, context = nil)
39
+ uri = instantiate_uri('/v2/{merchantId}/paymentlinks', nil)
40
+ @communicator.get(
41
+ uri,
42
+ client_headers,
43
+ query,
44
+ OnlinePayments::SDK::Domain::PaymentLinksResponse,
45
+ context)
46
+ rescue OnlinePayments::SDK::Communication::ResponseException => e
47
+ error_type = OnlinePayments::SDK::Domain::ErrorResponse
48
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
49
+ raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
50
+ end
51
+
23
52
  # Resource /v2/!{merchantId}/paymentlinks - Create payment link
24
53
  #
25
54
  # @param body [OnlinePayments::SDK::Domain::CreatePaymentLinkRequest]
@@ -13,7 +13,6 @@ require 'onlinepayments/sdk/domain/payment_error_response'
13
13
  require 'onlinepayments/sdk/domain/payment_response'
14
14
  require 'onlinepayments/sdk/domain/refund_error_response'
15
15
  require 'onlinepayments/sdk/domain/refund_response'
16
- require 'onlinepayments/sdk/domain/subsequent_payment_response'
17
16
 
18
17
  module OnlinePayments
19
18
  module SDK
@@ -219,40 +218,6 @@ module OnlinePayments
219
218
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
220
219
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
221
220
  end
222
-
223
- # Resource /v2/!{merchantId}/payments/!{paymentId}/subsequent - Subsequent payment
224
- #
225
- # @param payment_id [String]
226
- # @param body [OnlinePayments::SDK::Domain::SubsequentPaymentRequest]
227
- # @param context [OnlinePayments::SDK::CallContext, nil]
228
- # @return [OnlinePayments::SDK::Domain::SubsequentPaymentResponse]
229
- # @raise [OnlinePayments::SDK::DeclinedPaymentException] if the payment platform declined / rejected the payment. The payment result will be available from the exception.
230
- # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
231
- # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
232
- # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
233
- # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
234
- # or there was a conflict (HTTP status code 404, 409 or 410)
235
- # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
236
- # the payment platform was unable to process a message from a downstream partner/acquirer,
237
- # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
238
- # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
239
- def subsequent_payment(payment_id, body, context = nil)
240
- path_context = {
241
- 'paymentId'.freeze => payment_id,
242
- }
243
- uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}/subsequent', path_context)
244
- @communicator.post(
245
- uri,
246
- client_headers,
247
- nil,
248
- body,
249
- OnlinePayments::SDK::Domain::SubsequentPaymentResponse,
250
- context)
251
- rescue OnlinePayments::SDK::Communication::ResponseException => e
252
- error_type = OnlinePayments::SDK::Domain::PaymentErrorResponse
253
- error_object = @communicator.marshaller.unmarshal(e.body, error_type)
254
- raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
255
- end
256
221
  end
257
222
  end
258
223
  end
@@ -0,0 +1,60 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ require 'onlinepayments/sdk/api_resource'
5
+ require 'onlinepayments/sdk/exception_factory'
6
+ require 'onlinepayments/sdk/communication/response_exception'
7
+ require 'onlinepayments/sdk/domain/payment_error_response'
8
+ require 'onlinepayments/sdk/domain/subsequent_payment_response'
9
+
10
+ module OnlinePayments
11
+ module SDK
12
+ module Merchant
13
+ module Subsequent
14
+ # Subsequent client. Thread-safe.
15
+ class SubsequentClient < OnlinePayments::SDK::ApiResource
16
+
17
+ # @param parent [OnlinePayments::SDK::ApiResource]
18
+ # @param path_context [Hash, nil]
19
+ def initialize(parent, path_context)
20
+ super(parent: parent, path_context: path_context)
21
+ end
22
+
23
+ # Resource /v2/!{merchantId}/payments/!{paymentId}/subsequent - Subsequent payment
24
+ #
25
+ # @param payment_id [String]
26
+ # @param body [OnlinePayments::SDK::Domain::SubsequentPaymentRequest]
27
+ # @param context [OnlinePayments::SDK::CallContext, nil]
28
+ # @return [OnlinePayments::SDK::Domain::SubsequentPaymentResponse]
29
+ # @raise [OnlinePayments::SDK::DeclinedPaymentException] if the payment platform declined / rejected the payment. The payment result will be available from the exception.
30
+ # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
31
+ # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
32
+ # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
33
+ # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
34
+ # or there was a conflict (HTTP status code 404, 409 or 410)
35
+ # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
36
+ # the payment platform was unable to process a message from a downstream partner/acquirer,
37
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
38
+ # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
39
+ def subsequent_payment(payment_id, body, context = nil)
40
+ path_context = {
41
+ 'paymentId'.freeze => payment_id,
42
+ }
43
+ uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}/subsequent', path_context)
44
+ @communicator.post(
45
+ uri,
46
+ client_headers,
47
+ nil,
48
+ body,
49
+ OnlinePayments::SDK::Domain::SubsequentPaymentResponse,
50
+ context)
51
+ rescue OnlinePayments::SDK::Communication::ResponseException => e
52
+ error_type = OnlinePayments::SDK::Domain::PaymentErrorResponse
53
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
54
+ raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,4 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ Dir[File.join(__dir__, 'subsequent', '*.rb')].each { |f| require f }
@@ -82,7 +82,7 @@ module OnlinePayments
82
82
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
83
83
  end
84
84
 
85
- # Resource /v2/!{merchantId}/tokens - Create token
85
+ # Resource /v2/!{merchantId}/tokens - Please create a token.
86
86
  #
87
87
  # @param body [OnlinePayments::SDK::Domain::CreateTokenRequest]
88
88
  # @param context [OnlinePayments::SDK::CallContext, nil]
@@ -1,4 +1,5 @@
1
1
  require 'onlinepayments/sdk/domain/data_object'
2
+ require 'onlinepayments/sdk/domain/payment_link_response'
2
3
  require 'onlinepayments/sdk/domain/payment_response'
3
4
  require 'onlinepayments/sdk/domain/payout_response'
4
5
  require 'onlinepayments/sdk/domain/refund_response'
@@ -12,6 +13,7 @@ module OnlinePayments
12
13
  # @attr [String] id
13
14
  # @attr [String] merchant_id
14
15
  # @attr [String] type
16
+ # @attr [OnlinePayments::SDK::V2::Domain::PaymentLinkResponse] paymentlink
15
17
  # @attr [OnlinePayments::SDK::V2::Domain::PaymentResponse] payment
16
18
  # @attr [OnlinePayments::SDK::V2::Domain::PayoutResponse] payout
17
19
  # @attr [OnlinePayments::SDK::V2::Domain::RefundResponse] refund
@@ -30,6 +32,8 @@ module OnlinePayments
30
32
 
31
33
  attr_accessor :type
32
34
 
35
+ attr_accessor :paymentlink
36
+
33
37
  attr_accessor :payment
34
38
 
35
39
  attr_accessor :payout
@@ -46,6 +50,7 @@ module OnlinePayments
46
50
  hash['id'] = @id unless @id.nil?
47
51
  hash['merchantId'] = @merchant_id unless @merchant_id.nil?
48
52
  hash['type'] = @type unless @type.nil?
53
+ hash['paymentlink'] = @paymentlink.to_h unless @paymentlink.nil?
49
54
  hash['payment'] = @payment.to_h unless @payment.nil?
50
55
  hash['payout'] = @payout.to_h unless @payout.nil?
51
56
  hash['refund'] = @refund.to_h unless @refund.nil?
@@ -70,6 +75,9 @@ module OnlinePayments
70
75
  if hash.has_key? 'type'
71
76
  @type = hash['type']
72
77
  end
78
+ if hash.has_key? 'paymentlink'
79
+ @paymentlink = OnlinePayments::SDK::Domain::PaymentLinkResponse.new_from_hash(hash['paymentlink'])
80
+ end
73
81
  if hash.has_key? 'payment'
74
82
  @payment = OnlinePayments::SDK::Domain::PaymentResponse.new_from_hash(hash['payment'])
75
83
  end
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = 'onlinepayments-sdk-ruby'
3
- spec.version = '6.2.0'
3
+ spec.version = '6.3.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: 6.2.0
4
+ version: 6.3.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: 2025-09-19 00:00:00.000000000 Z
11
+ date: 2025-10-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httpclient
@@ -324,12 +324,14 @@ files:
324
324
  - lib/onlinepayments/sdk/domain/payment_link_order_output.rb
325
325
  - lib/onlinepayments/sdk/domain/payment_link_response.rb
326
326
  - lib/onlinepayments/sdk/domain/payment_link_specific_input.rb
327
+ - lib/onlinepayments/sdk/domain/payment_links_response.rb
327
328
  - lib/onlinepayments/sdk/domain/payment_output.rb
328
329
  - lib/onlinepayments/sdk/domain/payment_product.rb
329
330
  - lib/onlinepayments/sdk/domain/payment_product130_specific_input.rb
330
331
  - lib/onlinepayments/sdk/domain/payment_product130_specific_three_d_secure.rb
331
332
  - lib/onlinepayments/sdk/domain/payment_product3012.rb
332
333
  - lib/onlinepayments/sdk/domain/payment_product3012_specific_input.rb
334
+ - lib/onlinepayments/sdk/domain/payment_product3013_specific_input.rb
333
335
  - lib/onlinepayments/sdk/domain/payment_product302_specific_data.rb
334
336
  - lib/onlinepayments/sdk/domain/payment_product3203_specific_output.rb
335
337
  - lib/onlinepayments/sdk/domain/payment_product3204_specific_output.rb
@@ -396,6 +398,7 @@ files:
396
398
  - lib/onlinepayments/sdk/domain/redirect_payment_product5406_specific_input.rb
397
399
  - lib/onlinepayments/sdk/domain/redirect_payment_product5408_specific_input.rb
398
400
  - lib/onlinepayments/sdk/domain/redirect_payment_product5410_specific_input.rb
401
+ - lib/onlinepayments/sdk/domain/redirect_payment_product5412_specific_input.rb
399
402
  - lib/onlinepayments/sdk/domain/redirect_payment_product809_specific_input.rb
400
403
  - lib/onlinepayments/sdk/domain/redirect_payment_product840_specific_input.rb
401
404
  - lib/onlinepayments/sdk/domain/redirection_data.rb
@@ -485,6 +488,7 @@ files:
485
488
  - lib/onlinepayments/sdk/merchant/mandates/mandates_client.rb
486
489
  - lib/onlinepayments/sdk/merchant/merchant_client.rb
487
490
  - lib/onlinepayments/sdk/merchant/paymentlinks.rb
491
+ - lib/onlinepayments/sdk/merchant/paymentlinks/get_payment_links_in_bulk_params.rb
488
492
  - lib/onlinepayments/sdk/merchant/paymentlinks/payment_links_client.rb
489
493
  - lib/onlinepayments/sdk/merchant/payments.rb
490
494
  - lib/onlinepayments/sdk/merchant/payments/payments_client.rb
@@ -509,6 +513,8 @@ files:
509
513
  - lib/onlinepayments/sdk/merchant/services/services_client.rb
510
514
  - lib/onlinepayments/sdk/merchant/sessions.rb
511
515
  - lib/onlinepayments/sdk/merchant/sessions/sessions_client.rb
516
+ - lib/onlinepayments/sdk/merchant/subsequent.rb
517
+ - lib/onlinepayments/sdk/merchant/subsequent/subsequent_client.rb
512
518
  - lib/onlinepayments/sdk/merchant/tokens.rb
513
519
  - lib/onlinepayments/sdk/merchant/tokens/tokens_client.rb
514
520
  - lib/onlinepayments/sdk/merchant/webhooks.rb