wallee-ruby-sdk 2.2.3 → 3.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (144) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +1 -1
  4. data/lib/wallee-ruby-sdk.rb +63 -8
  5. data/lib/wallee-ruby-sdk/api/bank_account_service_api.rb +213 -0
  6. data/lib/wallee-ruby-sdk/api/bank_transaction_service_api.rb +213 -0
  7. data/lib/wallee-ruby-sdk/api/charge_bank_transaction_service_api.rb +213 -0
  8. data/lib/wallee-ruby-sdk/api/currency_bank_account_service_api.rb +213 -0
  9. data/lib/wallee-ruby-sdk/api/external_transfer_bank_transaction_service_api.rb +213 -0
  10. data/lib/wallee-ruby-sdk/api/internal_transfer_bank_transaction_service_api.rb +213 -0
  11. data/lib/wallee-ruby-sdk/api/payment_terminal_till_service_api.rb +170 -0
  12. data/lib/wallee-ruby-sdk/api/refund_bank_transaction_service_api.rb +213 -0
  13. data/lib/wallee-ruby-sdk/api/refund_recovery_bank_transaction_service_api.rb +213 -0
  14. data/lib/wallee-ruby-sdk/api/shopify_subscriber_service_api.rb +62 -0
  15. data/lib/wallee-ruby-sdk/api/shopify_subscription_service_api.rb +124 -0
  16. data/lib/wallee-ruby-sdk/api/shopify_transaction_service_api.rb +213 -0
  17. data/lib/wallee-ruby-sdk/api/subscriber_service_api.rb +3 -3
  18. data/lib/wallee-ruby-sdk/api/subscription_service_api.rb +67 -0
  19. data/lib/wallee-ruby-sdk/api/token_service_api.rb +189 -0
  20. data/lib/wallee-ruby-sdk/api/transaction_terminal_service_api.rb +21 -32
  21. data/lib/wallee-ruby-sdk/api/web_app_service_api.rb +200 -0
  22. data/lib/wallee-ruby-sdk/api_client.rb +7 -4
  23. data/lib/wallee-ruby-sdk/configuration.rb +2 -2
  24. data/lib/wallee-ruby-sdk/models/abstract_account_update.rb +11 -1
  25. data/lib/wallee-ruby-sdk/models/abstract_payment_link_update.rb +15 -15
  26. data/lib/wallee-ruby-sdk/models/{abstract_shopify_subscription_product_active.rb → abstract_shopify_subscription_product_update.rb} +2 -12
  27. data/lib/wallee-ruby-sdk/models/abstract_space_update.rb +11 -1
  28. data/lib/wallee-ruby-sdk/models/abstract_subscription_product_active.rb +11 -1
  29. data/lib/wallee-ruby-sdk/models/abstract_transaction_pending.rb +59 -1
  30. data/lib/wallee-ruby-sdk/models/abstract_webhook_url_update.rb +24 -0
  31. data/lib/wallee-ruby-sdk/models/account.rb +31 -1
  32. data/lib/wallee-ruby-sdk/models/account_create.rb +11 -1
  33. data/lib/wallee-ruby-sdk/models/account_update.rb +11 -1
  34. data/lib/wallee-ruby-sdk/models/authenticated_card_data.rb +221 -0
  35. data/lib/wallee-ruby-sdk/models/{unencrypted_card_data.rb → authenticated_card_data_create.rb} +86 -12
  36. data/lib/wallee-ruby-sdk/models/bank_account.rb +291 -0
  37. data/lib/wallee-ruby-sdk/models/bank_account_environment.rb +35 -0
  38. data/lib/wallee-ruby-sdk/models/bank_account_state.rb +37 -0
  39. data/lib/wallee-ruby-sdk/models/bank_account_type.rb +227 -0
  40. data/lib/wallee-ruby-sdk/models/bank_transaction.rb +387 -0
  41. data/lib/wallee-ruby-sdk/models/bank_transaction_flow_direction.rb +35 -0
  42. data/lib/wallee-ruby-sdk/models/bank_transaction_source.rb +215 -0
  43. data/lib/wallee-ruby-sdk/models/bank_transaction_state.rb +35 -0
  44. data/lib/wallee-ruby-sdk/models/bank_transaction_type.rb +215 -0
  45. data/lib/wallee-ruby-sdk/models/card_authentication_response.rb +38 -0
  46. data/lib/wallee-ruby-sdk/models/card_authentication_version.rb +35 -0
  47. data/lib/wallee-ruby-sdk/models/card_cryptogram.rb +201 -0
  48. data/lib/wallee-ruby-sdk/models/card_cryptogram_create.rb +211 -0
  49. data/lib/wallee-ruby-sdk/models/card_cryptogram_type.rb +34 -0
  50. data/lib/wallee-ruby-sdk/models/cardholder_authentication.rb +231 -0
  51. data/lib/wallee-ruby-sdk/models/cardholder_authentication_create.rb +241 -0
  52. data/lib/wallee-ruby-sdk/models/charge_attempt.rb +11 -1
  53. data/lib/wallee-ruby-sdk/models/charge_bank_transaction.rb +291 -0
  54. data/lib/wallee-ruby-sdk/models/currency_bank_account.rb +241 -0
  55. data/lib/wallee-ruby-sdk/models/debt_collection_case.rb +1 -1
  56. data/lib/wallee-ruby-sdk/models/debt_collection_case_create.rb +1 -1
  57. data/lib/wallee-ruby-sdk/models/external_transfer_bank_transaction.rb +251 -0
  58. data/lib/wallee-ruby-sdk/models/internal_transfer_bank_transaction.rb +231 -0
  59. data/lib/wallee-ruby-sdk/models/payment_adjustment.rb +231 -0
  60. data/lib/wallee-ruby-sdk/models/payment_adjustment_type.rb +215 -0
  61. data/lib/wallee-ruby-sdk/models/payment_connector_configuration.rb +13 -1
  62. data/lib/wallee-ruby-sdk/models/payment_contract.rb +1 -25
  63. data/lib/wallee-ruby-sdk/models/payment_link.rb +16 -40
  64. data/lib/wallee-ruby-sdk/models/payment_link_active.rb +15 -15
  65. data/lib/wallee-ruby-sdk/models/payment_link_address_handling_mode.rb +36 -0
  66. data/lib/wallee-ruby-sdk/models/payment_link_create.rb +16 -44
  67. data/lib/wallee-ruby-sdk/models/payment_link_update.rb +15 -15
  68. data/lib/wallee-ruby-sdk/models/payment_terminal.rb +11 -1
  69. data/lib/wallee-ruby-sdk/models/payment_terminal_address.rb +0 -60
  70. data/lib/wallee-ruby-sdk/models/payment_terminal_configuration_version.rb +11 -1
  71. data/lib/wallee-ruby-sdk/models/payment_terminal_location.rb +2 -22
  72. data/lib/wallee-ruby-sdk/models/payment_terminal_receipt_type.rb +215 -0
  73. data/lib/wallee-ruby-sdk/models/permission.rb +14 -4
  74. data/lib/wallee-ruby-sdk/models/recurring_indicator.rb +37 -0
  75. data/lib/wallee-ruby-sdk/models/refund_bank_transaction.rb +281 -0
  76. data/lib/wallee-ruby-sdk/models/refund_recovery_bank_transaction.rb +293 -0
  77. data/lib/wallee-ruby-sdk/models/rendered_terminal_receipt.rb +26 -6
  78. data/lib/wallee-ruby-sdk/models/role.rb +1 -1
  79. data/lib/wallee-ruby-sdk/models/role_state.rb +37 -0
  80. data/lib/wallee-ruby-sdk/models/sales_channel.rb +34 -4
  81. data/lib/wallee-ruby-sdk/models/shopify_additional_line_item_data.rb +35 -0
  82. data/lib/wallee-ruby-sdk/models/shopify_integration.rb +73 -31
  83. data/lib/wallee-ruby-sdk/models/shopify_integration_payment_app_version.rb +34 -0
  84. data/lib/wallee-ruby-sdk/models/{shopify_integration_app_version.rb → shopify_integration_subscription_app_version.rb} +3 -3
  85. data/lib/wallee-ruby-sdk/models/shopify_subscriber.rb +1 -1
  86. data/lib/wallee-ruby-sdk/models/shopify_subscriber_active.rb +241 -0
  87. data/lib/wallee-ruby-sdk/models/shopify_subscriber_creation.rb +216 -0
  88. data/lib/wallee-ruby-sdk/models/shopify_subscription.rb +61 -7
  89. data/lib/wallee-ruby-sdk/models/shopify_subscription_address.rb +0 -60
  90. data/lib/wallee-ruby-sdk/models/{payment_terminal_contact_address.rb → shopify_subscription_address_create.rb} +152 -2
  91. data/lib/wallee-ruby-sdk/models/shopify_subscription_creation_request.rb +363 -0
  92. data/lib/wallee-ruby-sdk/models/shopify_subscription_model_billing_configuration.rb +271 -0
  93. data/lib/wallee-ruby-sdk/models/{shopify_subscription_edit_model_item.rb → shopify_subscription_model_item.rb} +2 -2
  94. data/lib/wallee-ruby-sdk/models/{shopify_subscription_edit_model_tax_line.rb → shopify_subscription_model_tax_line.rb} +1 -1
  95. data/lib/wallee-ruby-sdk/models/shopify_subscription_product_create.rb +9 -14
  96. data/lib/wallee-ruby-sdk/models/{shopify_subscription_product_active.rb → shopify_subscription_product_update.rb} +2 -12
  97. data/lib/wallee-ruby-sdk/models/shopify_subscription_update_addresses_request.rb +211 -0
  98. data/lib/wallee-ruby-sdk/models/shopify_subscription_update_request.rb +11 -81
  99. data/lib/wallee-ruby-sdk/models/shopify_subscription_version.rb +11 -1
  100. data/lib/wallee-ruby-sdk/models/space.rb +31 -1
  101. data/lib/wallee-ruby-sdk/models/space_create.rb +11 -1
  102. data/lib/wallee-ruby-sdk/models/space_update.rb +11 -1
  103. data/lib/wallee-ruby-sdk/models/subscriber.rb +1 -1
  104. data/lib/wallee-ruby-sdk/models/subscriber_create.rb +1 -1
  105. data/lib/wallee-ruby-sdk/models/subscription.rb +11 -1
  106. data/lib/wallee-ruby-sdk/models/subscription_affiliate.rb +1 -25
  107. data/lib/wallee-ruby-sdk/models/subscription_affiliate_create.rb +1 -29
  108. data/lib/wallee-ruby-sdk/models/subscription_affiliate_deleted.rb +1 -25
  109. data/lib/wallee-ruby-sdk/models/subscription_affiliate_deleting.rb +1 -25
  110. data/lib/wallee-ruby-sdk/models/subscription_charge.rb +49 -1
  111. data/lib/wallee-ruby-sdk/models/subscription_charge_create.rb +49 -1
  112. data/lib/wallee-ruby-sdk/models/subscription_create_request.rb +1 -1
  113. data/lib/wallee-ruby-sdk/models/subscription_ledger_entry.rb +12 -2
  114. data/lib/wallee-ruby-sdk/models/subscription_ledger_entry_create.rb +1 -1
  115. data/lib/wallee-ruby-sdk/models/subscription_product.rb +11 -1
  116. data/lib/wallee-ruby-sdk/models/subscription_product_active.rb +11 -1
  117. data/lib/wallee-ruby-sdk/models/subscription_product_component.rb +1 -1
  118. data/lib/wallee-ruby-sdk/models/subscription_product_component_update.rb +1 -1
  119. data/lib/wallee-ruby-sdk/models/subscription_product_create.rb +11 -1
  120. data/lib/wallee-ruby-sdk/models/subscription_product_version.rb +11 -1
  121. data/lib/wallee-ruby-sdk/models/subscription_product_version_pending.rb +14 -4
  122. data/lib/wallee-ruby-sdk/models/subscription_update_request.rb +206 -0
  123. data/lib/wallee-ruby-sdk/models/tax_calculation.rb +35 -0
  124. data/lib/wallee-ruby-sdk/models/terminal_receipt_fetch_request.rb +221 -0
  125. data/lib/wallee-ruby-sdk/models/terminal_receipt_format.rb +35 -0
  126. data/lib/wallee-ruby-sdk/models/token.rb +1 -25
  127. data/lib/wallee-ruby-sdk/models/token_create.rb +1 -29
  128. data/lib/wallee-ruby-sdk/models/tokenized_card_data.rb +211 -0
  129. data/lib/wallee-ruby-sdk/models/{unencrypted_card_data_create.rb → tokenized_card_data_create.rb} +60 -5
  130. data/lib/wallee-ruby-sdk/models/transaction.rb +132 -4
  131. data/lib/wallee-ruby-sdk/models/transaction_completion.rb +26 -1
  132. data/lib/wallee-ruby-sdk/models/transaction_completion_behavior.rb +36 -0
  133. data/lib/wallee-ruby-sdk/models/transaction_completion_request.rb +26 -1
  134. data/lib/wallee-ruby-sdk/models/transaction_create.rb +59 -1
  135. data/lib/wallee-ruby-sdk/models/transaction_pending.rb +59 -1
  136. data/lib/wallee-ruby-sdk/models/web_app_confirmation_request.rb +206 -0
  137. data/lib/wallee-ruby-sdk/models/web_app_confirmation_response.rb +231 -0
  138. data/lib/wallee-ruby-sdk/models/webhook_url.rb +35 -1
  139. data/lib/wallee-ruby-sdk/models/webhook_url_create.rb +24 -0
  140. data/lib/wallee-ruby-sdk/models/webhook_url_update.rb +24 -0
  141. data/lib/wallee-ruby-sdk/version.rb +1 -1
  142. data/test/condition_type_service_test.rb +22 -0
  143. data/wallee-ruby-sdk.gemspec +3 -2
  144. metadata +93 -17
@@ -23,6 +23,9 @@ module Wallee
23
23
  # The external ID helps to identify the entity and a subsequent creation of an entity with the same ID will not create a new entity.
24
24
  attr_accessor :external_id
25
25
 
26
+ #
27
+ attr_accessor :invoice_merchant_reference
28
+
26
29
  # The last completion flag indicates if this is the last completion. After the last completion is created no further completions can be issued.
27
30
  attr_accessor :last_completion
28
31
 
@@ -36,6 +39,7 @@ module Wallee
36
39
  def self.attribute_map
37
40
  {
38
41
  :'external_id' => :'externalId',
42
+ :'invoice_merchant_reference' => :'invoiceMerchantReference',
39
43
  :'last_completion' => :'lastCompletion',
40
44
  :'line_items' => :'lineItems',
41
45
  :'transaction_id' => :'transactionId'
@@ -46,6 +50,7 @@ module Wallee
46
50
  def self.swagger_types
47
51
  {
48
52
  :'external_id' => :'String',
53
+ :'invoice_merchant_reference' => :'String',
49
54
  :'last_completion' => :'BOOLEAN',
50
55
  :'line_items' => :'Array<CompletionLineItemCreate>',
51
56
  :'transaction_id' => :'Integer'
@@ -64,6 +69,10 @@ module Wallee
64
69
  self.external_id = attributes[:'externalId']
65
70
  end
66
71
 
72
+ if attributes.has_key?(:'invoiceMerchantReference')
73
+ self.invoice_merchant_reference = attributes[:'invoiceMerchantReference']
74
+ end
75
+
67
76
  if attributes.has_key?(:'lastCompletion')
68
77
  self.last_completion = attributes[:'lastCompletion']
69
78
  end
@@ -95,6 +104,10 @@ module Wallee
95
104
  invalid_properties.push('invalid value for "external_id", the character length must be great than or equal to 1.')
96
105
  end
97
106
 
107
+ if !@invoice_merchant_reference.nil? && @invoice_merchant_reference.to_s.length > 100
108
+ invalid_properties.push('invalid value for "invoice_merchant_reference", the character length must be smaller than or equal to 100.')
109
+ end
110
+
98
111
  if @last_completion.nil?
99
112
  invalid_properties.push('invalid value for "last_completion", last_completion cannot be nil.')
100
113
  end
@@ -112,6 +125,7 @@ module Wallee
112
125
  return false if @external_id.nil?
113
126
  return false if @external_id.to_s.length > 100
114
127
  return false if @external_id.to_s.length < 1
128
+ return false if !@invoice_merchant_reference.nil? && @invoice_merchant_reference.to_s.length > 100
115
129
  return false if @last_completion.nil?
116
130
  return false if @transaction_id.nil?
117
131
  true
@@ -135,12 +149,23 @@ module Wallee
135
149
  @external_id = external_id
136
150
  end
137
151
 
152
+ # Custom attribute writer method with validation
153
+ # @param [Object] invoice_merchant_reference Value to be assigned
154
+ def invoice_merchant_reference=(invoice_merchant_reference)
155
+ if !invoice_merchant_reference.nil? && invoice_merchant_reference.to_s.length > 100
156
+ fail ArgumentError, 'invalid value for "invoice_merchant_reference", the character length must be smaller than or equal to 100.'
157
+ end
158
+
159
+ @invoice_merchant_reference = invoice_merchant_reference
160
+ end
161
+
138
162
  # Checks equality by comparing each attribute.
139
163
  # @param [Object] Object to be compared
140
164
  def ==(o)
141
165
  return true if self.equal?(o)
142
166
  self.class == o.class &&
143
167
  external_id == o.external_id &&
168
+ invoice_merchant_reference == o.invoice_merchant_reference &&
144
169
  last_completion == o.last_completion &&
145
170
  line_items == o.line_items &&
146
171
  transaction_id == o.transaction_id
@@ -155,7 +180,7 @@ module Wallee
155
180
  # Calculates hash code according to all attributes.
156
181
  # @return [Fixnum] Hash code
157
182
  def hash
158
- [external_id, last_completion, line_items, transaction_id].hash
183
+ [external_id, invoice_merchant_reference, last_completion, line_items, transaction_id].hash
159
184
  end
160
185
 
161
186
  # Builds the object from hash
@@ -29,6 +29,9 @@ module Wallee
29
29
  #
30
30
  attr_accessor :billing_address
31
31
 
32
+ # The completion behavior controls when the transaction is completed.
33
+ attr_accessor :completion_behavior
34
+
32
35
  #
33
36
  attr_accessor :currency
34
37
 
@@ -104,6 +107,7 @@ module Wallee
104
107
  :'allowed_payment_method_brands' => :'allowedPaymentMethodBrands',
105
108
  :'allowed_payment_method_configurations' => :'allowedPaymentMethodConfigurations',
106
109
  :'billing_address' => :'billingAddress',
110
+ :'completion_behavior' => :'completionBehavior',
107
111
  :'currency' => :'currency',
108
112
  :'customer_email_address' => :'customerEmailAddress',
109
113
  :'customer_id' => :'customerId',
@@ -136,6 +140,7 @@ module Wallee
136
140
  :'allowed_payment_method_brands' => :'Array<PaymentMethodBrand>',
137
141
  :'allowed_payment_method_configurations' => :'Array<Integer>',
138
142
  :'billing_address' => :'AddressCreate',
143
+ :'completion_behavior' => :'TransactionCompletionBehavior',
139
144
  :'currency' => :'String',
140
145
  :'customer_email_address' => :'String',
141
146
  :'customer_id' => :'String',
@@ -186,6 +191,10 @@ module Wallee
186
191
  self.billing_address = attributes[:'billingAddress']
187
192
  end
188
193
 
194
+ if attributes.has_key?(:'completionBehavior')
195
+ self.completion_behavior = attributes[:'completionBehavior']
196
+ end
197
+
189
198
  if attributes.has_key?(:'currency')
190
199
  self.currency = attributes[:'currency']
191
200
  end
@@ -291,6 +300,14 @@ module Wallee
291
300
  invalid_properties.push('invalid value for "customer_email_address", the character length must be smaller than or equal to 254.')
292
301
  end
293
302
 
303
+ if !@failed_url.nil? && @failed_url.to_s.length > 1000
304
+ invalid_properties.push('invalid value for "failed_url", the character length must be smaller than or equal to 1000.')
305
+ end
306
+
307
+ if !@failed_url.nil? && @failed_url.to_s.length < 9
308
+ invalid_properties.push('invalid value for "failed_url", the character length must be great than or equal to 9.')
309
+ end
310
+
294
311
  if !@invoice_merchant_reference.nil? && @invoice_merchant_reference.to_s.length > 100
295
312
  invalid_properties.push('invalid value for "invoice_merchant_reference", the character length must be smaller than or equal to 100.')
296
313
  end
@@ -307,6 +324,14 @@ module Wallee
307
324
  invalid_properties.push('invalid value for "shipping_method", the character length must be smaller than or equal to 200.')
308
325
  end
309
326
 
327
+ if !@success_url.nil? && @success_url.to_s.length > 1000
328
+ invalid_properties.push('invalid value for "success_url", the character length must be smaller than or equal to 1000.')
329
+ end
330
+
331
+ if !@success_url.nil? && @success_url.to_s.length < 9
332
+ invalid_properties.push('invalid value for "success_url", the character length must be great than or equal to 9.')
333
+ end
334
+
310
335
  if !@device_session_identifier.nil? && @device_session_identifier.to_s.length > 40
311
336
  invalid_properties.push('invalid value for "device_session_identifier", the character length must be smaller than or equal to 40.')
312
337
  end
@@ -322,10 +347,14 @@ module Wallee
322
347
  # @return true if the model is valid
323
348
  def valid?
324
349
  return false if !@customer_email_address.nil? && @customer_email_address.to_s.length > 254
350
+ return false if !@failed_url.nil? && @failed_url.to_s.length > 1000
351
+ return false if !@failed_url.nil? && @failed_url.to_s.length < 9
325
352
  return false if !@invoice_merchant_reference.nil? && @invoice_merchant_reference.to_s.length > 100
326
353
  return false if @line_items.nil?
327
354
  return false if !@merchant_reference.nil? && @merchant_reference.to_s.length > 100
328
355
  return false if !@shipping_method.nil? && @shipping_method.to_s.length > 200
356
+ return false if !@success_url.nil? && @success_url.to_s.length > 1000
357
+ return false if !@success_url.nil? && @success_url.to_s.length < 9
329
358
  return false if !@device_session_identifier.nil? && @device_session_identifier.to_s.length > 40
330
359
  return false if !@device_session_identifier.nil? && @device_session_identifier.to_s.length < 10
331
360
  true
@@ -341,6 +370,20 @@ module Wallee
341
370
  @customer_email_address = customer_email_address
342
371
  end
343
372
 
373
+ # Custom attribute writer method with validation
374
+ # @param [Object] failed_url Value to be assigned
375
+ def failed_url=(failed_url)
376
+ if !failed_url.nil? && failed_url.to_s.length > 1000
377
+ fail ArgumentError, 'invalid value for "failed_url", the character length must be smaller than or equal to 1000.'
378
+ end
379
+
380
+ if !failed_url.nil? && failed_url.to_s.length < 9
381
+ fail ArgumentError, 'invalid value for "failed_url", the character length must be great than or equal to 9.'
382
+ end
383
+
384
+ @failed_url = failed_url
385
+ end
386
+
344
387
  # Custom attribute writer method with validation
345
388
  # @param [Object] invoice_merchant_reference Value to be assigned
346
389
  def invoice_merchant_reference=(invoice_merchant_reference)
@@ -371,6 +414,20 @@ module Wallee
371
414
  @shipping_method = shipping_method
372
415
  end
373
416
 
417
+ # Custom attribute writer method with validation
418
+ # @param [Object] success_url Value to be assigned
419
+ def success_url=(success_url)
420
+ if !success_url.nil? && success_url.to_s.length > 1000
421
+ fail ArgumentError, 'invalid value for "success_url", the character length must be smaller than or equal to 1000.'
422
+ end
423
+
424
+ if !success_url.nil? && success_url.to_s.length < 9
425
+ fail ArgumentError, 'invalid value for "success_url", the character length must be great than or equal to 9.'
426
+ end
427
+
428
+ @success_url = success_url
429
+ end
430
+
374
431
  # Custom attribute writer method with validation
375
432
  # @param [Object] device_session_identifier Value to be assigned
376
433
  def device_session_identifier=(device_session_identifier)
@@ -393,6 +450,7 @@ module Wallee
393
450
  allowed_payment_method_brands == o.allowed_payment_method_brands &&
394
451
  allowed_payment_method_configurations == o.allowed_payment_method_configurations &&
395
452
  billing_address == o.billing_address &&
453
+ completion_behavior == o.completion_behavior &&
396
454
  currency == o.currency &&
397
455
  customer_email_address == o.customer_email_address &&
398
456
  customer_id == o.customer_id &&
@@ -427,7 +485,7 @@ module Wallee
427
485
  # Calculates hash code according to all attributes.
428
486
  # @return [Fixnum] Hash code
429
487
  def hash
430
- [allowed_payment_method_brands, allowed_payment_method_configurations, billing_address, currency, customer_email_address, customer_id, failed_url, invoice_merchant_reference, language, line_items, merchant_reference, meta_data, shipping_address, shipping_method, success_url, time_zone, token, tokenization_mode, auto_confirmation_enabled, charge_retry_enabled, customers_presence, device_session_identifier, emails_disabled, environment, environment_selection_strategy, space_view_id].hash
488
+ [allowed_payment_method_brands, allowed_payment_method_configurations, billing_address, completion_behavior, currency, customer_email_address, customer_id, failed_url, invoice_merchant_reference, language, line_items, merchant_reference, meta_data, shipping_address, shipping_method, success_url, time_zone, token, tokenization_mode, auto_confirmation_enabled, charge_retry_enabled, customers_presence, device_session_identifier, emails_disabled, environment, environment_selection_strategy, space_view_id].hash
431
489
  end
432
490
 
433
491
  # Builds the object from hash
@@ -29,6 +29,9 @@ module Wallee
29
29
  #
30
30
  attr_accessor :billing_address
31
31
 
32
+ # The completion behavior controls when the transaction is completed.
33
+ attr_accessor :completion_behavior
34
+
32
35
  #
33
36
  attr_accessor :currency
34
37
 
@@ -86,6 +89,7 @@ module Wallee
86
89
  :'allowed_payment_method_brands' => :'allowedPaymentMethodBrands',
87
90
  :'allowed_payment_method_configurations' => :'allowedPaymentMethodConfigurations',
88
91
  :'billing_address' => :'billingAddress',
92
+ :'completion_behavior' => :'completionBehavior',
89
93
  :'currency' => :'currency',
90
94
  :'customer_email_address' => :'customerEmailAddress',
91
95
  :'customer_id' => :'customerId',
@@ -112,6 +116,7 @@ module Wallee
112
116
  :'allowed_payment_method_brands' => :'Array<PaymentMethodBrand>',
113
117
  :'allowed_payment_method_configurations' => :'Array<Integer>',
114
118
  :'billing_address' => :'AddressCreate',
119
+ :'completion_behavior' => :'TransactionCompletionBehavior',
115
120
  :'currency' => :'String',
116
121
  :'customer_email_address' => :'String',
117
122
  :'customer_id' => :'String',
@@ -156,6 +161,10 @@ module Wallee
156
161
  self.billing_address = attributes[:'billingAddress']
157
162
  end
158
163
 
164
+ if attributes.has_key?(:'completionBehavior')
165
+ self.completion_behavior = attributes[:'completionBehavior']
166
+ end
167
+
159
168
  if attributes.has_key?(:'currency')
160
169
  self.currency = attributes[:'currency']
161
170
  end
@@ -237,6 +246,14 @@ module Wallee
237
246
  invalid_properties.push('invalid value for "customer_email_address", the character length must be smaller than or equal to 254.')
238
247
  end
239
248
 
249
+ if !@failed_url.nil? && @failed_url.to_s.length > 1000
250
+ invalid_properties.push('invalid value for "failed_url", the character length must be smaller than or equal to 1000.')
251
+ end
252
+
253
+ if !@failed_url.nil? && @failed_url.to_s.length < 9
254
+ invalid_properties.push('invalid value for "failed_url", the character length must be great than or equal to 9.')
255
+ end
256
+
240
257
  if !@invoice_merchant_reference.nil? && @invoice_merchant_reference.to_s.length > 100
241
258
  invalid_properties.push('invalid value for "invoice_merchant_reference", the character length must be smaller than or equal to 100.')
242
259
  end
@@ -249,6 +266,14 @@ module Wallee
249
266
  invalid_properties.push('invalid value for "shipping_method", the character length must be smaller than or equal to 200.')
250
267
  end
251
268
 
269
+ if !@success_url.nil? && @success_url.to_s.length > 1000
270
+ invalid_properties.push('invalid value for "success_url", the character length must be smaller than or equal to 1000.')
271
+ end
272
+
273
+ if !@success_url.nil? && @success_url.to_s.length < 9
274
+ invalid_properties.push('invalid value for "success_url", the character length must be great than or equal to 9.')
275
+ end
276
+
252
277
  if @id.nil?
253
278
  invalid_properties.push('invalid value for "id", id cannot be nil.')
254
279
  end
@@ -264,9 +289,13 @@ module Wallee
264
289
  # @return true if the model is valid
265
290
  def valid?
266
291
  return false if !@customer_email_address.nil? && @customer_email_address.to_s.length > 254
292
+ return false if !@failed_url.nil? && @failed_url.to_s.length > 1000
293
+ return false if !@failed_url.nil? && @failed_url.to_s.length < 9
267
294
  return false if !@invoice_merchant_reference.nil? && @invoice_merchant_reference.to_s.length > 100
268
295
  return false if !@merchant_reference.nil? && @merchant_reference.to_s.length > 100
269
296
  return false if !@shipping_method.nil? && @shipping_method.to_s.length > 200
297
+ return false if !@success_url.nil? && @success_url.to_s.length > 1000
298
+ return false if !@success_url.nil? && @success_url.to_s.length < 9
270
299
  return false if @id.nil?
271
300
  return false if @version.nil?
272
301
  true
@@ -282,6 +311,20 @@ module Wallee
282
311
  @customer_email_address = customer_email_address
283
312
  end
284
313
 
314
+ # Custom attribute writer method with validation
315
+ # @param [Object] failed_url Value to be assigned
316
+ def failed_url=(failed_url)
317
+ if !failed_url.nil? && failed_url.to_s.length > 1000
318
+ fail ArgumentError, 'invalid value for "failed_url", the character length must be smaller than or equal to 1000.'
319
+ end
320
+
321
+ if !failed_url.nil? && failed_url.to_s.length < 9
322
+ fail ArgumentError, 'invalid value for "failed_url", the character length must be great than or equal to 9.'
323
+ end
324
+
325
+ @failed_url = failed_url
326
+ end
327
+
285
328
  # Custom attribute writer method with validation
286
329
  # @param [Object] invoice_merchant_reference Value to be assigned
287
330
  def invoice_merchant_reference=(invoice_merchant_reference)
@@ -312,6 +355,20 @@ module Wallee
312
355
  @shipping_method = shipping_method
313
356
  end
314
357
 
358
+ # Custom attribute writer method with validation
359
+ # @param [Object] success_url Value to be assigned
360
+ def success_url=(success_url)
361
+ if !success_url.nil? && success_url.to_s.length > 1000
362
+ fail ArgumentError, 'invalid value for "success_url", the character length must be smaller than or equal to 1000.'
363
+ end
364
+
365
+ if !success_url.nil? && success_url.to_s.length < 9
366
+ fail ArgumentError, 'invalid value for "success_url", the character length must be great than or equal to 9.'
367
+ end
368
+
369
+ @success_url = success_url
370
+ end
371
+
315
372
  # Checks equality by comparing each attribute.
316
373
  # @param [Object] Object to be compared
317
374
  def ==(o)
@@ -320,6 +377,7 @@ module Wallee
320
377
  allowed_payment_method_brands == o.allowed_payment_method_brands &&
321
378
  allowed_payment_method_configurations == o.allowed_payment_method_configurations &&
322
379
  billing_address == o.billing_address &&
380
+ completion_behavior == o.completion_behavior &&
323
381
  currency == o.currency &&
324
382
  customer_email_address == o.customer_email_address &&
325
383
  customer_id == o.customer_id &&
@@ -348,7 +406,7 @@ module Wallee
348
406
  # Calculates hash code according to all attributes.
349
407
  # @return [Fixnum] Hash code
350
408
  def hash
351
- [allowed_payment_method_brands, allowed_payment_method_configurations, billing_address, currency, customer_email_address, customer_id, failed_url, invoice_merchant_reference, language, line_items, merchant_reference, meta_data, shipping_address, shipping_method, success_url, time_zone, token, tokenization_mode, id, version].hash
409
+ [allowed_payment_method_brands, allowed_payment_method_configurations, billing_address, completion_behavior, currency, customer_email_address, customer_id, failed_url, invoice_merchant_reference, language, line_items, merchant_reference, meta_data, shipping_address, shipping_method, success_url, time_zone, token, tokenization_mode, id, version].hash
352
410
  end
353
411
 
354
412
  # Builds the object from hash
@@ -0,0 +1,206 @@
1
+ =begin
2
+ The wallee API allows an easy interaction with the wallee web service.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+
16
+ =end
17
+
18
+ require 'date'
19
+
20
+ module Wallee
21
+ #
22
+ class WebAppConfirmationRequest
23
+ # The user returns to the web app after granting the permission. The HTTP request contains the code. Provide it here to confirm the web app installation.
24
+ attr_accessor :code
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'code' => :'code'
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+ :'code' => :'String'
37
+ }
38
+ end
39
+
40
+ # Initializes the object
41
+ # @param [Hash] attributes Model attributes in the form of hash
42
+ def initialize(attributes = {})
43
+ return unless attributes.is_a?(Hash)
44
+
45
+ # convert string to symbol for hash key
46
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
47
+
48
+ if attributes.has_key?(:'code')
49
+ self.code = attributes[:'code']
50
+ end
51
+ end
52
+
53
+ # Show invalid properties with the reasons. Usually used together with valid?
54
+ # @return Array for valid properties with the reasons
55
+ def list_invalid_properties
56
+ invalid_properties = Array.new
57
+ if !@code.nil? && @code.to_s.length > 100
58
+ invalid_properties.push('invalid value for "code", the character length must be smaller than or equal to 100.')
59
+ end
60
+
61
+ invalid_properties
62
+ end
63
+
64
+ # Check to see if the all the properties in the model are valid
65
+ # @return true if the model is valid
66
+ def valid?
67
+ return false if !@code.nil? && @code.to_s.length > 100
68
+ true
69
+ end
70
+
71
+ # Custom attribute writer method with validation
72
+ # @param [Object] code Value to be assigned
73
+ def code=(code)
74
+ if !code.nil? && code.to_s.length > 100
75
+ fail ArgumentError, 'invalid value for "code", the character length must be smaller than or equal to 100.'
76
+ end
77
+
78
+ @code = code
79
+ end
80
+
81
+ # Checks equality by comparing each attribute.
82
+ # @param [Object] Object to be compared
83
+ def ==(o)
84
+ return true if self.equal?(o)
85
+ self.class == o.class &&
86
+ code == o.code
87
+ end
88
+
89
+ # @see the `==` method
90
+ # @param [Object] Object to be compared
91
+ def eql?(o)
92
+ self == o
93
+ end
94
+
95
+ # Calculates hash code according to all attributes.
96
+ # @return [Fixnum] Hash code
97
+ def hash
98
+ [code].hash
99
+ end
100
+
101
+ # Builds the object from hash
102
+ # @param [Hash] attributes Model attributes in the form of hash
103
+ # @return [Object] Returns the model itself
104
+ def build_from_hash(attributes)
105
+ return nil unless attributes.is_a?(Hash)
106
+ self.class.swagger_types.each_pair do |key, type|
107
+ if type =~ /\AArray<(.*)>/i
108
+ # check to ensure the input is an array given that the attribute
109
+ # is documented as an array but the input is not
110
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
111
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
112
+ end
113
+ elsif !attributes[self.class.attribute_map[key]].nil?
114
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
115
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
116
+ end
117
+
118
+ self
119
+ end
120
+
121
+ # Deserializes the data based on type
122
+ # @param string type Data type
123
+ # @param string value Value to be deserialized
124
+ # @return [Object] Deserialized data
125
+ def _deserialize(type, value)
126
+ case type.to_sym
127
+ when :DateTime
128
+ DateTime.parse(value)
129
+ when :Date
130
+ Date.parse(value)
131
+ when :String
132
+ value.to_s
133
+ when :Integer
134
+ value.to_i
135
+ when :Float
136
+ value.to_f
137
+ when :BOOLEAN
138
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
139
+ true
140
+ else
141
+ false
142
+ end
143
+ when :Object
144
+ # generic object (usually a Hash), return directly
145
+ value
146
+ when /\AArray<(?<inner_type>.+)>\z/
147
+ inner_type = Regexp.last_match[:inner_type]
148
+ value.map { |v| _deserialize(inner_type, v) }
149
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
150
+ k_type = Regexp.last_match[:k_type]
151
+ v_type = Regexp.last_match[:v_type]
152
+ {}.tap do |hash|
153
+ value.each do |k, v|
154
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
155
+ end
156
+ end
157
+ else # model
158
+ temp_model = Wallee.const_get(type).new
159
+ temp_model.build_from_hash(value)
160
+ end
161
+ end
162
+
163
+ # Returns the string representation of the object
164
+ # @return [String] String presentation of the object
165
+ def to_s
166
+ to_hash.to_s
167
+ end
168
+
169
+ # to_body is an alias to to_hash (backward compatibility)
170
+ # @return [Hash] Returns the object in the form of hash
171
+ def to_body
172
+ to_hash
173
+ end
174
+
175
+ # Returns the object in the form of hash
176
+ # @return [Hash] Returns the object in the form of hash
177
+ def to_hash
178
+ hash = {}
179
+ self.class.attribute_map.each_pair do |attr, param|
180
+ value = self.send(attr)
181
+ next if value.nil?
182
+ hash[param] = _to_hash(value)
183
+ end
184
+ hash
185
+ end
186
+
187
+ # Outputs non-array value in the form of hash
188
+ # For object, use to_hash. Otherwise, just return the value
189
+ # @param [Object] value Any valid value
190
+ # @return [Hash] Returns the value in the form of hash
191
+ def _to_hash(value)
192
+ if value.is_a?(Array)
193
+ value.compact.map{ |v| _to_hash(v) }
194
+ elsif value.is_a?(Hash)
195
+ {}.tap do |hash|
196
+ value.each { |k, v| hash[k] = _to_hash(v) }
197
+ end
198
+ elsif value.respond_to? :to_hash
199
+ value.to_hash
200
+ else
201
+ value
202
+ end
203
+ end
204
+
205
+ end
206
+ end