pcp-server-ruby-sdk 1.0.0 → 1.1.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 (42) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/api-definition.yaml +4737 -0
  4. data/lib/PCP-server-Ruby-SDK/endpoints/checkout_api_client.rb +24 -0
  5. data/lib/PCP-server-Ruby-SDK/endpoints/payment_execution_api_client.rb +47 -0
  6. data/lib/PCP-server-Ruby-SDK/endpoints/payment_information_api_client.rb +27 -2
  7. data/lib/PCP-server-Ruby-SDK/models/bank_account_information.rb +17 -5
  8. data/lib/PCP-server-Ruby-SDK/models/bank_payout_method_specific_input.rb +198 -0
  9. data/lib/PCP-server-Ruby-SDK/models/capture_output.rb +45 -41
  10. data/lib/PCP-server-Ruby-SDK/models/financing_payment_method_specific_output.rb +43 -40
  11. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_input.rb +16 -33
  12. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_three_dsecure.rb +185 -0
  13. data/lib/PCP-server-Ruby-SDK/models/order_line_details_input.rb +12 -6
  14. data/lib/PCP-server-Ruby-SDK/models/{payment_product320_specific_input.rb → pause_payment_request.rb} +13 -31
  15. data/lib/PCP-server-Ruby-SDK/models/pause_payment_response.rb +192 -0
  16. data/lib/PCP-server-Ruby-SDK/models/payee.rb +212 -0
  17. data/lib/PCP-server-Ruby-SDK/models/payment_event.rb +14 -14
  18. data/lib/PCP-server-Ruby-SDK/models/payment_execution.rb +39 -5
  19. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_request.rb +212 -0
  20. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_response.rb +202 -0
  21. data/lib/PCP-server-Ruby-SDK/models/payment_information_response.rb +40 -25
  22. data/lib/PCP-server-Ruby-SDK/models/payment_instructions.rb +222 -0
  23. data/lib/PCP-server-Ruby-SDK/models/payment_product302_specific_input.rb +232 -0
  24. data/lib/PCP-server-Ruby-SDK/models/payout_output.rb +28 -24
  25. data/lib/PCP-server-Ruby-SDK/models/payout_response.rb +6 -25
  26. data/lib/PCP-server-Ruby-SDK/models/refresh_payment_request.rb +192 -0
  27. data/lib/PCP-server-Ruby-SDK/models/refresh_type.rb +30 -0
  28. data/lib/PCP-server-Ruby-SDK/models/sepa_transfer_payment_product_772_specific_input.rb +192 -0
  29. data/lib/PCP-server-Ruby-SDK/models/status_value.rb +12 -10
  30. data/lib/PCP-server-Ruby-SDK/queries/get_checkouts_query.rb +3 -1
  31. data/lib/PCP-server-Ruby-SDK/transformer/apple_pay_transformer.rb +2 -2
  32. data/lib/PCP-server-Ruby-SDK/version.rb +1 -1
  33. data/lib/PCP-server-Ruby-SDK.rb +24 -2
  34. data/package-lock.json +196 -243
  35. data/package.json +1 -1
  36. data/scripts.sh +7 -14
  37. data/spec/endpoints/checkout_api_client_spec.rb +51 -0
  38. data/spec/endpoints/payment_execution_api_client_spec.rb +102 -0
  39. data/spec/endpoints/payment_information_api_client_spec.rb +52 -0
  40. data/spec/transformer/apple_pay_transformer_spec.rb +1 -1
  41. data/spec/utils/server_meta_info_spec.rb +2 -2
  42. metadata +19 -7
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pcp-serversdk-ruby",
3
- "version": "0.0.1",
3
+ "version": "1.1.0",
4
4
  "type": "commonjs",
5
5
  "scripts": {
6
6
  "changelog": "conventional-changelog -i CHANGELOG.md -s --config ./changelog.config.js"
data/scripts.sh CHANGED
@@ -37,23 +37,16 @@ version() {
37
37
  NEW_VERSION=$2
38
38
 
39
39
  VERSION_FILE_PATH="./lib/PCP-server-Ruby-SDK/version.rb"
40
+ PACKAGE_JSON_PATH="./package.json"
41
+ PACKAGE_LOCK_JSON_PATH="./package-lock.json"
40
42
 
41
- # Update the version in the version.rb file
42
- if [ -f $VERSION_FILE_PATH ]; then
43
- sed -i '' "s/VERSION = '.*'/VERSION = '$NEW_VERSION'/" "$VERSION_FILE_PATH"
44
-
45
- if grep -q "VERSION = '$NEW_VERSION'" "$VERSION_FILE_PATH"; then
46
- echo "Version updated successfully to $NEW_VERSION in $VERSION_FILE_PATH"
47
- else
48
- echo "Failed to update the version in $VERSION_FILE_PATH"
49
- exit 1
50
- fi
51
- else
52
- echo "Version file not found at $VERSION_FILE_PATH"
53
- exit 1
54
- fi
43
+ sed -i '' "s/VERSION = '.*'/VERSION = '$NEW_VERSION'/" "$VERSION_FILE_PATH"
44
+ sed -i "" "s/\"version\": \".*\"/\"version\": \"$NEW_VERSION\"/" ${PACKAGE_JSON_PATH}
45
+ sed -i "" "s/\"version\": \".*\"/\"version\": \"$NEW_VERSION\"/" ${PACKAGE_LOCK_JSON_PATH}
55
46
 
56
47
  # Commit and tag the changes
48
+ git add $PACKAGE_JSON_PATH
49
+ git add $PACKAGE_LOCK_JSON_PATH
57
50
  git add $VERSION_FILE_PATH
58
51
  npm install
59
52
  npm run changelog
@@ -254,4 +254,55 @@ RSpec.describe PCPServerSDK::Endpoints::CheckoutApiClient do
254
254
  end
255
255
  end
256
256
  end
257
+
258
+ describe '#complete_checkout_request' do
259
+ let(:payload) { double('PCPServerSDK::Models::CompleteOrderRequest') }
260
+
261
+ context 'when request is successful' do
262
+ let(:response) { double('Response', body: '{}', code: 200) }
263
+ let(:expected_response) { PCPServerSDK::Models::CompletePaymentResponse.new }
264
+
265
+ before do
266
+ allow(client).to receive(:get_response).and_return(response)
267
+ end
268
+
269
+ it 'returns a successful response' do
270
+ result = client.complete_checkout_request('1', '2', '3', payload)
271
+ expect(result).to eq(expected_response)
272
+ end
273
+ end
274
+
275
+ context 'when request is unsuccessful (400)' do
276
+ let(:response) { double('Response', body: error_body, code: 400) }
277
+
278
+ before do
279
+ allow(client).to receive(:get_response).and_return(response)
280
+ end
281
+
282
+ it 'raises an PCPServerSDK::Errors::ApiErrorResponseException' do
283
+ expect { client.complete_checkout_request('1', '2', '3', payload) }.to raise_error(PCPServerSDK::Errors::ApiErrorResponseException)
284
+ end
285
+ end
286
+
287
+ context 'when request is unsuccessful (500)' do
288
+ let(:response) { double('Response', body: '{}', code: 500) }
289
+
290
+ before do
291
+ allow(client).to receive(:get_response).and_return(response)
292
+ end
293
+
294
+ it 'raises an PCPServerSDK::Errors::ApiResponseRetrievalException' do
295
+ expect { client.complete_checkout_request('1', '2', '3', payload) }.to raise_error(PCPServerSDK::Errors::ApiResponseRetrievalException)
296
+ end
297
+ end
298
+
299
+ context 'when some params are nil' do
300
+ it 'raises a TypeError' do
301
+ expect { client.complete_checkout_request(nil, '2', '3', payload) }.to raise_error(TypeError, 'Merchant ID is required')
302
+ expect { client.complete_checkout_request('1', nil, '3', payload) }.to raise_error(TypeError, 'Commerce Case ID is required')
303
+ expect { client.complete_checkout_request('1', '2', nil, payload) }.to raise_error(TypeError, 'Checkout ID is required')
304
+ expect { client.complete_checkout_request('1', '2', '3', nil) }.to raise_error(TypeError, 'Payload is required')
305
+ end
306
+ end
307
+ end
257
308
  end
@@ -266,4 +266,106 @@ RSpec.describe PCPServerSDK::Endpoints::PaymentExecutionApiClient do
266
266
  end
267
267
  end
268
268
  end
269
+
270
+ describe '#pause_payment' do
271
+ let(:payload) { double('PCPServerSDK::Models::PausePaymentRequest') }
272
+
273
+ context 'when request is successful' do
274
+ let(:response) { double('Response', body: '{}', code: '200') }
275
+ let(:expected_response) { PCPServerSDK::Models::PausePaymentResponse.new }
276
+
277
+ before do
278
+ allow(client).to receive(:get_response).and_return(response)
279
+ end
280
+
281
+ it 'returns a successful response' do
282
+ result = client.pause_payment('1', '2', '3', '4', payload)
283
+ expect(result).to eq(expected_response)
284
+ end
285
+ end
286
+
287
+ context 'when request is unsuccessful (400)' do
288
+ let(:response) { double('Response', body: error_body, code: '400') }
289
+
290
+ before do
291
+ allow(client).to receive(:get_response).and_return(response)
292
+ end
293
+
294
+ it 'raises an PCPServerSDK::Errors::ApiErrorResponseException' do
295
+ expect { client.pause_payment('1', '2', '3', '4', payload) }.to raise_error(PCPServerSDK::Errors::ApiErrorResponseException)
296
+ end
297
+ end
298
+
299
+ context 'when request is unsuccessful (500)' do
300
+ let(:response) { double('Response', body: '{}', code: '500') }
301
+
302
+ before do
303
+ allow(client).to receive(:get_response).and_return(response)
304
+ end
305
+
306
+ it 'raises an PCPServerSDK::Errors::ApiResponseRetrievalException' do
307
+ expect { client.pause_payment('1', '2', '3', '4', payload) }.to raise_error(PCPServerSDK::Errors::ApiResponseRetrievalException)
308
+ end
309
+ end
310
+
311
+ context 'when some params are nil' do
312
+ it 'raises a TypeError' do
313
+ expect { client.pause_payment(nil, '2', '3', '4', payload) }.to raise_error(TypeError, 'Merchant ID is required')
314
+ expect { client.pause_payment('1', nil, '3', '4', payload) }.to raise_error(TypeError, 'Commerce Case ID is required')
315
+ expect { client.pause_payment('1', '2', nil, '4', payload) }.to raise_error(TypeError, 'Checkout ID is required')
316
+ expect { client.pause_payment('1', '2', '3', nil, payload) }.to raise_error(TypeError, 'Payment Execution ID is required')
317
+ end
318
+ end
319
+ end
320
+
321
+ describe '#refresh_payment' do
322
+ let(:payload) { double('PCPServerSDK::Models::RefreshPaymentRequest') }
323
+ let(:expected_response) { PCPServerSDK::Models::PaymentExecution.new }
324
+
325
+ context 'when request is successful' do
326
+ let(:response) { double('Response', body: '{}', code: '200') }
327
+
328
+ before do
329
+ allow(client).to receive(:get_response).and_return(response)
330
+ end
331
+
332
+ it 'returns a successful response' do
333
+ result = client.refresh_payment('1', '2', '3', '4', payload)
334
+ expect(result).to eq(expected_response)
335
+ end
336
+ end
337
+
338
+ context 'when request is unsuccessful (400)' do
339
+ let(:response) { double('Response', body: error_body, code: '400') }
340
+
341
+ before do
342
+ allow(client).to receive(:get_response).and_return(response)
343
+ end
344
+
345
+ it 'raises an PCPServerSDK::Errors::ApiErrorResponseException' do
346
+ expect { client.refresh_payment('1', '2', '3', '4', payload) }.to raise_error(PCPServerSDK::Errors::ApiErrorResponseException)
347
+ end
348
+ end
349
+
350
+ context 'when request is unsuccessful (500)' do
351
+ let(:response) { double('Response', body: '{}', code: '500') }
352
+
353
+ before do
354
+ allow(client).to receive(:get_response).and_return(response)
355
+ end
356
+
357
+ it 'raises an PCPServerSDK::Errors::ApiResponseRetrievalException' do
358
+ expect { client.refresh_payment('1', '2', '3', '4', payload) }.to raise_error(PCPServerSDK::Errors::ApiResponseRetrievalException)
359
+ end
360
+ end
361
+
362
+ context 'when some params are nil' do
363
+ it 'raises a TypeError' do
364
+ expect { client.refresh_payment(nil, '2', '3', '4', payload) }.to raise_error(TypeError, 'Merchant ID is required')
365
+ expect { client.refresh_payment('1', nil, '3', '4', payload) }.to raise_error(TypeError, 'Commerce Case ID is required')
366
+ expect { client.refresh_payment('1', '2', nil, '4', payload) }.to raise_error(TypeError, 'Checkout ID is required')
367
+ expect { client.refresh_payment('1', '2', '3', nil, payload) }.to raise_error(TypeError, 'Payment Execution ID is required')
368
+ end
369
+ end
370
+ end
269
371
  end
@@ -112,4 +112,56 @@ RSpec.describe PCPServerSDK::Endpoints::PaymentInformationApiClient do
112
112
  end
113
113
  end
114
114
  end
115
+
116
+ describe '#refund_payment_information' do
117
+ let(:payload) { double('PCPServerSDK::Models::PaymentInformationRefundRequest') }
118
+
119
+ context 'when request is successful' do
120
+ let(:response) { double('Response', body: '{}', code: '200') }
121
+ let(:expected_response) { PCPServerSDK::Models::PaymentInformationRefundResponse.new }
122
+
123
+ before do
124
+ allow(client).to receive(:get_response).and_return(response)
125
+ end
126
+
127
+ it 'returns a successful response' do
128
+ result = client.refund_payment_information('1', '2', '3', '4', payload)
129
+ expect(result).to eq(expected_response)
130
+ end
131
+ end
132
+
133
+ context 'when request is unsuccessful (400)' do
134
+ let(:response) { double('Response', body: error_body, code: '400') }
135
+
136
+ before do
137
+ allow(client).to receive(:get_response).and_return(response)
138
+ end
139
+
140
+ it 'raises an PCPServerSDK::Errors::ApiErrorResponseException' do
141
+ expect { client.refund_payment_information('1', '2', '3', '4', payload) }.to raise_error(PCPServerSDK::Errors::ApiErrorResponseException)
142
+ end
143
+ end
144
+
145
+ context 'when request is unsuccessful (500)' do
146
+ let(:response) { double('Response', body: '{}', code: '500') }
147
+
148
+ before do
149
+ allow(client).to receive(:get_response).and_return(response)
150
+ end
151
+
152
+ it 'raises an PCPServerSDK::Errors::ApiResponseRetrievalException' do
153
+ expect { client.refund_payment_information('1', '2', '3', '4', payload) }.to raise_error(PCPServerSDK::Errors::ApiResponseRetrievalException)
154
+ end
155
+ end
156
+
157
+ context 'when some params are nil' do
158
+ it 'raises a TypeError' do
159
+ expect { client.refund_payment_information(nil, '2', '3', '4', payload) }.to raise_error(TypeError, 'Merchant ID is required')
160
+ expect { client.refund_payment_information('1', nil, '3', '4', payload) }.to raise_error(TypeError, 'Commerce Case ID is required')
161
+ expect { client.refund_payment_information('1', '2', nil, '4', payload) }.to raise_error(TypeError, 'Checkout ID is required')
162
+ expect { client.refund_payment_information('1', '2', '3', nil, payload) }.to raise_error(TypeError, 'Payment Information ID is required')
163
+ expect { client.refund_payment_information('1', '2', '3', '4', nil) }.to raise_error(TypeError, 'Payload is required')
164
+ end
165
+ end
166
+ end
115
167
  end
@@ -46,7 +46,7 @@ RSpec.describe 'PCPServerSDK::Transformer::transform_apple_pay_payment_to_mobile
46
46
  payment_product_id: 302,
47
47
  public_key_hash: 'publicKeyHash123',
48
48
  ephemeral_key: 'ephemeralPublicKey123',
49
- payment_product302_specific_input: PCPServerSDK::Models::PaymentProduct320SpecificInput.new(
49
+ payment_product302_specific_input: PCPServerSDK::Models::PaymentProduct302SpecificInput.new(
50
50
  network: PCPServerSDK::Models::Network.from_string('VISA'),
51
51
  token: PCPServerSDK::Models::ApplePaymentDataTokenInformation.new(
52
52
  version: PCPServerSDK::Models::ApplePaymentTokenVersion.from_string('EC_V1'),
@@ -12,7 +12,7 @@ RSpec.describe PCPServerSDK::Utils::ServerMetaInfo do
12
12
  end
13
13
 
14
14
  it 'sets the SDK identifier' do
15
- expect(server_meta_info.sdk_identifier).to eq('RubyServerSDK/v1.0.0')
15
+ expect(server_meta_info.sdk_identifier).to eq("RubyServerSDK/v#{PCPServerSDK::VERSION}")
16
16
  end
17
17
 
18
18
  it 'sets the SDK creator' do
@@ -33,7 +33,7 @@ RSpec.describe PCPServerSDK::Utils::ServerMetaInfo do
33
33
  end
34
34
 
35
35
  it 'includes the SDK identifier' do
36
- expect(json_output['sdk_identifier']).to eq('RubyServerSDK/v1.0.0')
36
+ expect(json_output['sdk_identifier']).to eq("RubyServerSDK/v#{PCPServerSDK::VERSION}")
37
37
  end
38
38
 
39
39
  it 'includes the SDK creator' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pcp-server-ruby-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - PAYONE GmbH
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-03 00:00:00.000000000 Z
11
+ date: 2025-03-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-http
@@ -94,6 +94,7 @@ files:
94
94
  - PCP-server-Ruby-SDK.gemspec
95
95
  - README.md
96
96
  - Rakefile
97
+ - api-definition.yaml
97
98
  - changelog.config.js
98
99
  - commitlint.config.js
99
100
  - example-app/commerce_case_api_example.rb
@@ -127,6 +128,7 @@ files:
127
128
  - lib/PCP-server-Ruby-SDK/models/applepay/apple_pay_payment_token.rb
128
129
  - lib/PCP-server-Ruby-SDK/models/authorization_mode.rb
129
130
  - lib/PCP-server-Ruby-SDK/models/bank_account_information.rb
131
+ - lib/PCP-server-Ruby-SDK/models/bank_payout_method_specific_input.rb
130
132
  - lib/PCP-server-Ruby-SDK/models/cancel_item.rb
131
133
  - lib/PCP-server-Ruby-SDK/models/cancel_payment_request.rb
132
134
  - lib/PCP-server-Ruby-SDK/models/cancel_payment_response.rb
@@ -181,6 +183,7 @@ files:
181
183
  - lib/PCP-server-Ruby-SDK/models/merchant_action.rb
182
184
  - lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_input.rb
183
185
  - lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_output.rb
186
+ - lib/PCP-server-Ruby-SDK/models/mobile_payment_three_dsecure.rb
184
187
  - lib/PCP-server-Ruby-SDK/models/network.rb
185
188
  - lib/PCP-server-Ruby-SDK/models/order.rb
186
189
  - lib/PCP-server-Ruby-SDK/models/order_item.rb
@@ -192,17 +195,23 @@ files:
192
195
  - lib/PCP-server-Ruby-SDK/models/order_type.rb
193
196
  - lib/PCP-server-Ruby-SDK/models/patch_checkout_request.rb
194
197
  - lib/PCP-server-Ruby-SDK/models/patch_commerce_case_request.rb
198
+ - lib/PCP-server-Ruby-SDK/models/pause_payment_request.rb
199
+ - lib/PCP-server-Ruby-SDK/models/pause_payment_response.rb
200
+ - lib/PCP-server-Ruby-SDK/models/payee.rb
195
201
  - lib/PCP-server-Ruby-SDK/models/payment_channel.rb
196
202
  - lib/PCP-server-Ruby-SDK/models/payment_creation_output.rb
197
203
  - lib/PCP-server-Ruby-SDK/models/payment_event.rb
198
204
  - lib/PCP-server-Ruby-SDK/models/payment_execution.rb
199
205
  - lib/PCP-server-Ruby-SDK/models/payment_execution_request.rb
200
206
  - lib/PCP-server-Ruby-SDK/models/payment_execution_specific_input.rb
207
+ - lib/PCP-server-Ruby-SDK/models/payment_information_refund_request.rb
208
+ - lib/PCP-server-Ruby-SDK/models/payment_information_refund_response.rb
201
209
  - lib/PCP-server-Ruby-SDK/models/payment_information_request.rb
202
210
  - lib/PCP-server-Ruby-SDK/models/payment_information_response.rb
211
+ - lib/PCP-server-Ruby-SDK/models/payment_instructions.rb
203
212
  - lib/PCP-server-Ruby-SDK/models/payment_method_specific_input.rb
204
213
  - lib/PCP-server-Ruby-SDK/models/payment_output.rb
205
- - lib/PCP-server-Ruby-SDK/models/payment_product320_specific_input.rb
214
+ - lib/PCP-server-Ruby-SDK/models/payment_product302_specific_input.rb
206
215
  - lib/PCP-server-Ruby-SDK/models/payment_product3391_specific_input.rb
207
216
  - lib/PCP-server-Ruby-SDK/models/payment_product3391_specific_output.rb
208
217
  - lib/PCP-server-Ruby-SDK/models/payment_product3392_specific_input.rb
@@ -226,6 +235,8 @@ files:
226
235
  - lib/PCP-server-Ruby-SDK/models/redirect_payment_product840_specific_input.rb
227
236
  - lib/PCP-server-Ruby-SDK/models/redirection_data.rb
228
237
  - lib/PCP-server-Ruby-SDK/models/references.rb
238
+ - lib/PCP-server-Ruby-SDK/models/refresh_payment_request.rb
239
+ - lib/PCP-server-Ruby-SDK/models/refresh_type.rb
229
240
  - lib/PCP-server-Ruby-SDK/models/refund_error_response.rb
230
241
  - lib/PCP-server-Ruby-SDK/models/refund_output.rb
231
242
  - lib/PCP-server-Ruby-SDK/models/refund_payment_response.rb
@@ -238,6 +249,7 @@ files:
238
249
  - lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_method_specific_input.rb
239
250
  - lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_method_specific_output.rb
240
251
  - lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_product771_specific_input.rb
252
+ - lib/PCP-server-Ruby-SDK/models/sepa_transfer_payment_product_772_specific_input.rb
241
253
  - lib/PCP-server-Ruby-SDK/models/shipping.rb
242
254
  - lib/PCP-server-Ruby-SDK/models/shopping_cart_input.rb
243
255
  - lib/PCP-server-Ruby-SDK/models/shopping_cart_patch.rb
@@ -279,7 +291,7 @@ homepage: https://github.com/PAYONE-GmbH/PCP-ServerSDK-ruby
279
291
  licenses:
280
292
  - MIT
281
293
  metadata: {}
282
- post_install_message:
294
+ post_install_message:
283
295
  rdoc_options: []
284
296
  require_paths:
285
297
  - lib
@@ -294,8 +306,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
294
306
  - !ruby/object:Gem::Version
295
307
  version: '0'
296
308
  requirements: []
297
- rubygems_version: 3.3.5
298
- signing_key:
309
+ rubygems_version: 3.4.20
310
+ signing_key:
299
311
  specification_version: 4
300
312
  summary: Commerce Platform API Ruby Gem
301
313
  test_files: []