pcp-server-ruby-sdk 1.12.0 → 1.13.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 (168) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/api-definition.yaml +323 -41
  5. data/lib/PCP-server-Ruby-SDK/endpoints/payment_intent_api_client.rb +37 -0
  6. data/lib/PCP-server-Ruby-SDK/models/address.rb +9 -237
  7. data/lib/PCP-server-Ruby-SDK/models/address_personal.rb +10 -246
  8. data/lib/PCP-server-Ruby-SDK/models/amount_of_money.rb +4 -195
  9. data/lib/PCP-server-Ruby-SDK/models/api_error.rb +27 -232
  10. data/lib/PCP-server-Ruby-SDK/models/apple_payment_data_token_header_information.rb +6 -194
  11. data/lib/PCP-server-Ruby-SDK/models/apple_payment_data_token_information.rb +8 -229
  12. data/lib/PCP-server-Ruby-SDK/models/bank_account_information.rb +11 -207
  13. data/lib/PCP-server-Ruby-SDK/models/bank_payout_method_specific_input.rb +4 -187
  14. data/lib/PCP-server-Ruby-SDK/models/cancel_item.rb +6 -195
  15. data/lib/PCP-server-Ruby-SDK/models/cancel_payment_request.rb +6 -222
  16. data/lib/PCP-server-Ruby-SDK/models/cancel_payment_response.rb +4 -190
  17. data/lib/PCP-server-Ruby-SDK/models/cancel_request.rb +6 -224
  18. data/lib/PCP-server-Ruby-SDK/models/cancel_response.rb +4 -190
  19. data/lib/PCP-server-Ruby-SDK/models/capture_output.rb +9 -214
  20. data/lib/PCP-server-Ruby-SDK/models/capture_payment_request.rb +14 -253
  21. data/lib/PCP-server-Ruby-SDK/models/capture_payment_response.rb +7 -239
  22. data/lib/PCP-server-Ruby-SDK/models/card_fraud_results.rb +29 -184
  23. data/lib/PCP-server-Ruby-SDK/models/card_info.rb +3 -182
  24. data/lib/PCP-server-Ruby-SDK/models/card_payment_details.rb +8 -210
  25. data/lib/PCP-server-Ruby-SDK/models/card_payment_method_specific_input.rb +32 -307
  26. data/lib/PCP-server-Ruby-SDK/models/card_payment_method_specific_output.rb +6 -210
  27. data/lib/PCP-server-Ruby-SDK/models/card_recurrence_details.rb +12 -186
  28. data/lib/PCP-server-Ruby-SDK/models/cart_item_data.rb +10 -0
  29. data/lib/PCP-server-Ruby-SDK/models/cart_item_input.rb +5 -198
  30. data/lib/PCP-server-Ruby-SDK/models/cart_item_invoice_data.rb +5 -184
  31. data/lib/PCP-server-Ruby-SDK/models/cart_item_order_status.rb +4 -213
  32. data/lib/PCP-server-Ruby-SDK/models/cart_item_patch.rb +5 -200
  33. data/lib/PCP-server-Ruby-SDK/models/cart_item_result.rb +5 -200
  34. data/lib/PCP-server-Ruby-SDK/models/cart_item_supplier_references.rb +6 -195
  35. data/lib/PCP-server-Ruby-SDK/models/checkout_references.rb +4 -192
  36. data/lib/PCP-server-Ruby-SDK/models/checkout_response.rb +15 -319
  37. data/lib/PCP-server-Ruby-SDK/models/checkouts_response.rb +4 -193
  38. data/lib/PCP-server-Ruby-SDK/models/company_information.rb +3 -182
  39. data/lib/PCP-server-Ruby-SDK/models/complete_financing_payment_method_specific_input.rb +12 -202
  40. data/lib/PCP-server-Ruby-SDK/models/complete_order_request.rb +3 -181
  41. data/lib/PCP-server-Ruby-SDK/models/complete_payment_method_specific_input.rb +4 -191
  42. data/lib/PCP-server-Ruby-SDK/models/complete_payment_product840_specific_input.rb +7 -226
  43. data/lib/PCP-server-Ruby-SDK/models/complete_payment_request.rb +6 -209
  44. data/lib/PCP-server-Ruby-SDK/models/complete_payment_response.rb +5 -199
  45. data/lib/PCP-server-Ruby-SDK/models/complete_redirect_payment_method_specific_input.rb +4 -192
  46. data/lib/PCP-server-Ruby-SDK/models/contact_details.rb +4 -191
  47. data/lib/PCP-server-Ruby-SDK/models/create_checkout_request.rb +13 -240
  48. data/lib/PCP-server-Ruby-SDK/models/create_checkout_response.rb +16 -307
  49. data/lib/PCP-server-Ruby-SDK/models/create_commerce_case_response.rb +7 -219
  50. data/lib/PCP-server-Ruby-SDK/models/create_payment_intent.rb +11 -0
  51. data/lib/PCP-server-Ruby-SDK/models/create_payment_intent_request.rb +13 -0
  52. data/lib/PCP-server-Ruby-SDK/models/create_payment_intent_response.rb +10 -0
  53. data/lib/PCP-server-Ruby-SDK/models/create_payment_response.rb +7 -218
  54. data/lib/PCP-server-Ruby-SDK/models/customer.rb +28 -260
  55. data/lib/PCP-server-Ruby-SDK/models/customer_account.rb +10 -44
  56. data/lib/PCP-server-Ruby-SDK/models/customer_device.rb +8 -209
  57. data/lib/PCP-server-Ruby-SDK/models/deliver_item.rb +6 -195
  58. data/lib/PCP-server-Ruby-SDK/models/deliver_request.rb +10 -246
  59. data/lib/PCP-server-Ruby-SDK/models/deliver_response.rb +4 -191
  60. data/lib/PCP-server-Ruby-SDK/models/delivery_information.rb +3 -185
  61. data/lib/PCP-server-Ruby-SDK/models/error_response.rb +4 -193
  62. data/lib/PCP-server-Ruby-SDK/models/financing_payment_method_specific_input.rb +15 -203
  63. data/lib/PCP-server-Ruby-SDK/models/financing_payment_method_specific_output.rb +10 -196
  64. data/lib/PCP-server-Ruby-SDK/models/fund_distribution.rb +12 -263
  65. data/lib/PCP-server-Ruby-SDK/models/fund_split.rb +5 -205
  66. data/lib/PCP-server-Ruby-SDK/models/fund_split_request.rb +3 -147
  67. data/lib/PCP-server-Ruby-SDK/models/fund_split_response.rb +10 -174
  68. data/lib/PCP-server-Ruby-SDK/models/installment_option.rb +13 -273
  69. data/lib/PCP-server-Ruby-SDK/models/link_information.rb +4 -196
  70. data/lib/PCP-server-Ruby-SDK/models/merchant_action.rb +16 -194
  71. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_input.rb +13 -246
  72. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_output.rb +7 -219
  73. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_three_dsecure.rb +3 -179
  74. data/lib/PCP-server-Ruby-SDK/models/model_base.rb +147 -0
  75. data/lib/PCP-server-Ruby-SDK/models/order.rb +7 -221
  76. data/lib/PCP-server-Ruby-SDK/models/order_item.rb +6 -197
  77. data/lib/PCP-server-Ruby-SDK/models/order_line_details_input.rb +29 -305
  78. data/lib/PCP-server-Ruby-SDK/models/order_line_details_patch.rb +5 -326
  79. data/lib/PCP-server-Ruby-SDK/models/order_line_details_result.rb +5 -326
  80. data/lib/PCP-server-Ruby-SDK/models/order_request.rb +7 -244
  81. data/lib/PCP-server-Ruby-SDK/models/order_response.rb +4 -192
  82. data/lib/PCP-server-Ruby-SDK/models/patch_checkout_request.rb +8 -228
  83. data/lib/PCP-server-Ruby-SDK/models/patch_commerce_case_request.rb +3 -183
  84. data/lib/PCP-server-Ruby-SDK/models/pause_payment_request.rb +2 -165
  85. data/lib/PCP-server-Ruby-SDK/models/pause_payment_response.rb +3 -186
  86. data/lib/PCP-server-Ruby-SDK/models/payee.rb +6 -204
  87. data/lib/PCP-server-Ruby-SDK/models/payment_creation_output.rb +3 -183
  88. data/lib/PCP-server-Ruby-SDK/models/payment_event.rb +19 -274
  89. data/lib/PCP-server-Ruby-SDK/models/payment_execution.rb +29 -335
  90. data/lib/PCP-server-Ruby-SDK/models/payment_execution_request.rb +4 -191
  91. data/lib/PCP-server-Ruby-SDK/models/payment_execution_specific_input.rb +6 -212
  92. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_request.rb +7 -205
  93. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_response.rb +5 -196
  94. data/lib/PCP-server-Ruby-SDK/models/payment_information_request.rb +10 -249
  95. data/lib/PCP-server-Ruby-SDK/models/payment_information_response.rb +30 -314
  96. data/lib/PCP-server-Ruby-SDK/models/payment_instructions.rb +8 -214
  97. data/lib/PCP-server-Ruby-SDK/models/payment_intent_output.rb +13 -0
  98. data/lib/PCP-server-Ruby-SDK/models/payment_intent_response.rb +13 -0
  99. data/lib/PCP-server-Ruby-SDK/models/payment_intent_response_data.rb +12 -0
  100. data/lib/PCP-server-Ruby-SDK/models/payment_method_specific_input.rb +9 -261
  101. data/lib/PCP-server-Ruby-SDK/models/payment_method_specific_input_for_intent.rb +9 -0
  102. data/lib/PCP-server-Ruby-SDK/models/payment_output.rb +11 -255
  103. data/lib/PCP-server-Ruby-SDK/models/payment_product302_specific_input.rb +11 -225
  104. data/lib/PCP-server-Ruby-SDK/models/payment_product3391_specific_input.rb +6 -197
  105. data/lib/PCP-server-Ruby-SDK/models/payment_product3391_specific_output.rb +3 -185
  106. data/lib/PCP-server-Ruby-SDK/models/payment_product3392_specific_input.rb +3 -185
  107. data/lib/PCP-server-Ruby-SDK/models/payment_product5002_specific_input.rb +7 -203
  108. data/lib/PCP-server-Ruby-SDK/models/payment_product771_specific_output.rb +3 -183
  109. data/lib/PCP-server-Ruby-SDK/models/payment_product840_customer_account.rb +6 -210
  110. data/lib/PCP-server-Ruby-SDK/models/payment_product840_specific_output.rb +5 -209
  111. data/lib/PCP-server-Ruby-SDK/models/payment_product840_specific_output_data.rb +11 -0
  112. data/lib/PCP-server-Ruby-SDK/models/payment_product840_specific_output_for_intent.rb +13 -0
  113. data/lib/PCP-server-Ruby-SDK/models/payment_references.rb +6 -184
  114. data/lib/PCP-server-Ruby-SDK/models/payment_references_for_refund.rb +12 -197
  115. data/lib/PCP-server-Ruby-SDK/models/payment_response.rb +6 -234
  116. data/lib/PCP-server-Ruby-SDK/models/payment_status_output.rb +6 -234
  117. data/lib/PCP-server-Ruby-SDK/models/payout_output.rb +5 -205
  118. data/lib/PCP-server-Ruby-SDK/models/payout_response.rb +6 -215
  119. data/lib/PCP-server-Ruby-SDK/models/personal_information.rb +11 -227
  120. data/lib/PCP-server-Ruby-SDK/models/personal_name.rb +5 -201
  121. data/lib/PCP-server-Ruby-SDK/models/positive_amount_of_money.rb +4 -196
  122. data/lib/PCP-server-Ruby-SDK/models/processing_mandate_information.rb +9 -254
  123. data/lib/PCP-server-Ruby-SDK/models/redirect_data.rb +3 -183
  124. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_input.rb +14 -249
  125. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_input_for_intent.rb +12 -0
  126. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_output.rb +6 -211
  127. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_output_for_create_intent.rb +12 -0
  128. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_output_for_intent.rb +10 -0
  129. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_product840_specific_input.rb +6 -205
  130. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_product840_specific_input_data.rb +10 -0
  131. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_product900_specific_input.rb +12 -177
  132. data/lib/PCP-server-Ruby-SDK/models/redirection_data.rb +11 -186
  133. data/lib/PCP-server-Ruby-SDK/models/references.rb +47 -205
  134. data/lib/PCP-server-Ruby-SDK/models/refresh_payment_request.rb +3 -186
  135. data/lib/PCP-server-Ruby-SDK/models/refund_error_response.rb +4 -193
  136. data/lib/PCP-server-Ruby-SDK/models/refund_output.rb +8 -211
  137. data/lib/PCP-server-Ruby-SDK/models/refund_payment_response.rb +7 -242
  138. data/lib/PCP-server-Ruby-SDK/models/refund_request.rb +6 -210
  139. data/lib/PCP-server-Ruby-SDK/models/return_information.rb +4 -194
  140. data/lib/PCP-server-Ruby-SDK/models/return_item.rb +6 -196
  141. data/lib/PCP-server-Ruby-SDK/models/return_request.rb +6 -234
  142. data/lib/PCP-server-Ruby-SDK/models/return_response.rb +4 -191
  143. data/lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_method_specific_input.rb +4 -193
  144. data/lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_method_specific_output.rb +4 -193
  145. data/lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_product771_specific_input.rb +4 -192
  146. data/lib/PCP-server-Ruby-SDK/models/sepa_transfer_payment_product_772_specific_input.rb +3 -186
  147. data/lib/PCP-server-Ruby-SDK/models/shipping.rb +3 -183
  148. data/lib/PCP-server-Ruby-SDK/models/shipping_address.rb +14 -0
  149. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_data.rb +9 -0
  150. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_input.rb +3 -185
  151. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_patch.rb +3 -185
  152. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_result.rb +3 -185
  153. data/lib/PCP-server-Ruby-SDK/models/status_output.rb +21 -264
  154. data/lib/PCP-server-Ruby-SDK/models/three_d_secure_results.rb +6 -226
  155. data/lib/PCP-server-Ruby-SDK/version.rb +1 -1
  156. data/lib/PCP-server-Ruby-SDK.rb +18 -0
  157. data/package-lock.json +2 -2
  158. data/package.json +1 -1
  159. data/scripts/convert_models_to_model_base.rb +128 -0
  160. data/spec/endpoints/payment_intent_api_client_spec.rb +43 -0
  161. data/spec/models/api_definition_conformance_spec.rb +88 -0
  162. data/spec/models/model_base_spec.rb +87 -0
  163. data/spec/models/payment_intent_models_spec.rb +25 -0
  164. data/spec/models/required_field_validation_spec.rb +5 -5
  165. metadata +35 -11
  166. data/lib/PCP-server-Ruby-SDK/models/action_type.rb +0 -34
  167. data/lib/PCP-server-Ruby-SDK/models/avs_result.rb +0 -52
  168. data/lib/PCP-server-Ruby-SDK/models/business_relation.rb +0 -30
@@ -1,192 +1,17 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
-
5
- # Object containing browser specific redirection related data.
6
3
  module PCPServerSDK
7
4
  module Models
8
- class RedirectionData
9
- # The URL that the customer is redirected to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process. Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first. URLs without a protocol will be rejected.
10
- attr_accessor :return_url
11
-
12
- # Attribute mapping from ruby-style variable name to JSON key.
13
- def self.attribute_map
14
- {
15
- :'return_url' => :'returnUrl'
16
- }
17
- end
18
-
19
- # Returns all the JSON keys this model knows about
20
- def self.acceptable_attributes
21
- attribute_map.values
22
- end
23
-
24
- # Attribute type mapping.
25
- def self.openapi_types
26
- {
27
- :'return_url' => :'String'
28
- }
29
- end
30
-
31
- # List of attributes with nullable: true
32
- def self.openapi_nullable
33
- Set.new([
34
- ])
35
- end
36
-
37
- # Initializes the object
38
- # @param [Hash] attributes Model attributes in the form of hash
39
- def initialize(attributes = {})
40
- if (!attributes.is_a?(Hash))
41
- fail ArgumentError, "The input argument (attributes) must be a hash in `RedirectionData` initialize method"
42
- end
43
-
44
- # check to see if the attribute exists and convert string to symbol for hash key
45
- attributes = attributes.each_with_object({}) { |(k, v), h|
46
- if (!self.class.attribute_map.key?(k.to_sym))
47
- fail ArgumentError, "`#{k}` is not a valid attribute in `RedirectionData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
48
- end
49
- h[k.to_sym] = v
50
- }
51
-
52
- if attributes.key?(:'return_url')
53
- self.return_url = attributes[:'return_url']
54
- else
55
- self.return_url = nil
56
- end
57
- end
58
-
59
- # Checks equality by comparing each attribute.
60
- # @param [Object] Object to be compared
61
- def ==(o)
62
- return true if self.equal?(o)
63
- self.class == o.class &&
64
- return_url == o.return_url
65
- end
66
-
67
- # @see the `==` method
68
- # @param [Object] Object to be compared
69
- def eql?(o)
70
- self == o
71
- end
72
-
73
- # Calculates hash code according to all attributes.
74
- # @return [Integer] Hash code
75
- def hash
76
- [return_url].hash
77
- end
78
-
79
- # Builds the object from hash
80
- # @param [Hash] attributes Model attributes in the form of hash
81
- # @return [Object] Returns the model itself
82
- def self.build_from_hash(attributes)
83
- return nil unless attributes.is_a?(Hash)
84
- attributes = attributes.transform_keys(&:to_sym)
85
- transformed_hash = {}
86
- openapi_types.each_pair do |key, type|
87
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
88
- transformed_hash["#{key}"] = nil
89
- elsif type =~ /\AArray<(.*)>/i
90
- # check to ensure the input is an array given that the attribute
91
- # is documented as an array but the input is not
92
- if attributes[attribute_map[key]].is_a?(Array)
93
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
94
- end
95
- elsif !attributes[attribute_map[key]].nil?
96
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
97
- end
98
- end
99
- new(transformed_hash)
100
- end
101
-
102
- # Deserializes the data based on type
103
- # @param string type Data type
104
- # @param string value Value to be deserialized
105
- # @return [Object] Deserialized data
106
- def self._deserialize(type, value)
107
- case type.to_sym
108
- when :Time
109
- Time.parse(value)
110
- when :Date
111
- Date.parse(value)
112
- when :String
113
- value.to_s
114
- when :Integer
115
- value.to_i
116
- when :Float
117
- value.to_f
118
- when :Boolean
119
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
120
- true
121
- else
122
- false
123
- end
124
- when :Object
125
- # generic object (usually a Hash), return directly
126
- value
127
- when /\AArray<(?<inner_type>.+)>\z/
128
- inner_type = Regexp.last_match[:inner_type]
129
- value.map { |v| _deserialize(inner_type, v) }
130
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
131
- k_type = Regexp.last_match[:k_type]
132
- v_type = Regexp.last_match[:v_type]
133
- {}.tap do |hash|
134
- value.each do |k, v|
135
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
136
- end
137
- end
138
- else # model
139
- # models (e.g. Pet) or oneOf
140
- klass = PCPServerSDK::Models.const_get(type)
141
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
142
- end
143
- end
144
-
145
- # Returns the string representation of the object
146
- # @return [String] String presentation of the object
147
- def to_s
148
- to_hash.to_s
149
- end
150
-
151
- # to_body is an alias to to_hash (backward compatibility)
152
- # @return [Hash] Returns the object in the form of hash
153
- def to_body
154
- to_hash
155
- end
156
-
157
- # Returns the object in the form of hash
158
- # @return [Hash] Returns the object in the form of hash
159
- def to_hash
160
- hash = {}
161
- self.class.attribute_map.each_pair do |attr, param|
162
- value = self.send(attr)
163
- if value.nil?
164
- is_nullable = self.class.openapi_nullable.include?(attr)
165
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
166
- end
167
-
168
- hash[param] = _to_hash(value)
169
- end
170
- hash
171
- end
172
-
173
- # Outputs non-array value in the form of hash
174
- # For object, use to_hash. Otherwise, just return the value
175
- # @param [Object] value Any valid value
176
- # @return [Hash] Returns the value in the form of hash
177
- def _to_hash(value)
178
- if value.is_a?(Array)
179
- value.compact.map { |v| _to_hash(v) }
180
- elsif value.is_a?(Hash)
181
- {}.tap do |hash|
182
- value.each { |k, v| hash[k] = _to_hash(v) }
183
- end
184
- elsif value.respond_to? :to_hash
185
- value.to_hash
186
- else
187
- value
188
- end
189
- end
5
+ class RedirectionData < ModelBase
6
+ # The URL that the customer is redirected to after the payment flow has finished. You can add any number of
7
+ # key value pairs in the query string that, for instance help you to identify the customer when they return to
8
+ # your site. Please note that we will also append some additional key value pairs that will also help you with
9
+ # this identification process.
10
+ # Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use
11
+ # on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered
12
+ # on the device first.
13
+ # URLs without a protocol will be rejected.
14
+ attribute :return_url, :returnUrl, :String
190
15
  end
191
16
  end
192
17
  end
@@ -1,212 +1,54 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
-
5
- # Object that holds all reference properties that are linked to this transaction.
6
3
  module PCPServerSDK
7
4
  module Models
8
- class References
9
- # Descriptive text that is used towards to customer, either during an online Checkout at a third party and/or on the statement of the customer. For card transactions this is usually referred to as a Soft Descriptor. The maximum allowed length varies per card acquirer: * AIB - 22 characters * American Express - 25 characters * Atos Origin BNP - 15 characters * Barclays - 25 characters * Catella - 22 characters * CBA - 20 characters * Elavon - 25 characters * First Data - 25 characters * INICIS (INIPAY) - 22-30 characters * JCB - 25 characters * Merchant Solutions - 22-25 characters * Payvision (EU & HK) - 25 characters * SEB Euroline - 22 characters * Sub1 Argentina - 15 characters * Wells Fargo - 25 characters Note that we advise you to use 22 characters as the max length as beyond this our experience is that issuers will start to truncate. We currently also only allow per API call overrides for AIB and Barclays For alternative payment products the maximum allowed length varies per payment product: * 402 e-Przelewy - 30 characters * 404 INICIS - 80 characters * 802 Nordea ePayment Finland - 234 characters * 809 iDeal - 32 characters * 836 SOFORT - 42 characters * 840 PayPal - 127 characters * 841 WebMoney - 175 characters * 849 Yandex - 64 characters * 861 Alipay - 256 characters * 863 WeChat Pay - 32 characters * 880 BOKU - 20 characters * 8580 Qiwi - 255 characters * 1504 Konbini - 80 characters All other payment products don't support a descriptor.
10
- attr_accessor :descriptor
11
-
12
- # The merchantReference is a unique identifier for a payment and can be used for reporting purposes. The merchantReference is required for the execution of a payment and has to be unique. In case a payment has failed the same merchantReference can be used again. Once a successful payment has been made the same merchantReference can no longer be used and will be rejected.
13
- attr_accessor :merchant_reference
14
-
5
+ class References < ModelBase
6
+ # Descriptive text that is used towards to customer, either during an online Checkout at a third party and/or
7
+ # on the statement of the customer. For card transactions this is usually referred to as a Soft Descriptor.
8
+ # The maximum allowed length varies per card acquirer:
9
+ # * AIB - 22 characters
10
+ # * American Express - 25 characters
11
+ # * Atos Origin BNP - 15 characters
12
+ # * Barclays - 25 characters
13
+ # * Catella - 22 characters
14
+ # * CBA - 20 characters
15
+ # * Elavon - 25 characters
16
+ # * First Data - 25 characters
17
+ # * INICIS (INIPAY) - 22-30 characters
18
+ # * JCB - 25 characters
19
+ # * Merchant Solutions - 22-25 characters
20
+ # * Payvision (EU & HK) - 25 characters
21
+ # * SEB Euroline - 22 characters
22
+ # * Sub1 Argentina - 15 characters
23
+ # * Wells Fargo - 25 characters
24
+ #
25
+ # Note that we advise you to use 22 characters as the max length as beyond this our experience is that issuers
26
+ # will start to truncate. We currently also only allow per API call overrides for AIB and Barclays
27
+ # For alternative payment products the maximum allowed length varies per payment product:
28
+ # * 402 e-Przelewy - 30 characters
29
+ # * 404 INICIS - 80 characters
30
+ # * 802 Nordea ePayment Finland - 234 characters
31
+ # * 809 iDeal - 32 characters
32
+ # * 836 SOFORT - 42 characters
33
+ # * 840 PayPal - 127 characters
34
+ # * 841 WebMoney - 175 characters
35
+ # * 849 Yandex - 64 characters
36
+ # * 861 Alipay - 256 characters
37
+ # * 863 WeChat Pay - 32 characters
38
+ # * 880 BOKU - 20 characters
39
+ # * 8580 Qiwi - 255 characters
40
+ # * 1504 Konbini - 80 characters
41
+ #
42
+ # All other payment products don't support a descriptor.
43
+ attribute :descriptor, :descriptor, :String
44
+ # The merchantReference is a unique identifier for a payment and can be used for reporting purposes. The
45
+ # merchantReference is required for the execution of a payment and has to be unique. In case a payment has
46
+ # failed the same merchantReference can be used again.
47
+ # Once a successful payment has been made the same merchantReference can no longer be used and will be
48
+ # rejected.
49
+ attribute :merchant_reference, :merchantReference, :String
15
50
  # It allows you to store additional parameters for the transaction in JSON format. This field must not contain any personal data.
16
- attr_accessor :merchant_parameters
17
-
18
- # Attribute mapping from ruby-style variable name to JSON key.
19
- def self.attribute_map
20
- {
21
- :'descriptor' => :'descriptor',
22
- :'merchant_reference' => :'merchantReference',
23
- :'merchant_parameters' => :'merchantParameters'
24
- }
25
- end
26
-
27
- # Returns all the JSON keys this model knows about
28
- def self.acceptable_attributes
29
- attribute_map.values
30
- end
31
-
32
- # Attribute type mapping.
33
- def self.openapi_types
34
- {
35
- :'descriptor' => :'String',
36
- :'merchant_reference' => :'String',
37
- :'merchant_parameters' => :'String'
38
- }
39
- end
40
-
41
- # List of attributes with nullable: true
42
- def self.openapi_nullable
43
- Set.new([
44
- ])
45
- end
46
-
47
- # Initializes the object
48
- # @param [Hash] attributes Model attributes in the form of hash
49
- def initialize(attributes = {})
50
- if (!attributes.is_a?(Hash))
51
- fail ArgumentError, "The input argument (attributes) must be a hash in `References` initialize method"
52
- end
53
-
54
- # check to see if the attribute exists and convert string to symbol for hash key
55
- attributes = attributes.each_with_object({}) { |(k, v), h|
56
- if (!self.class.attribute_map.key?(k.to_sym))
57
- fail ArgumentError, "`#{k}` is not a valid attribute in `References`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
58
- end
59
- h[k.to_sym] = v
60
- }
61
-
62
- if attributes.key?(:'descriptor')
63
- self.descriptor = attributes[:'descriptor']
64
- end
65
-
66
- if attributes.key?(:'merchant_reference')
67
- self.merchant_reference = attributes[:'merchant_reference']
68
- else
69
- self.merchant_reference = nil
70
- end
71
-
72
- if attributes.key?(:'merchant_parameters')
73
- self.merchant_parameters = attributes[:'merchant_parameters']
74
- end
75
- end
76
-
77
- # Checks equality by comparing each attribute.
78
- # @param [Object] Object to be compared
79
- def ==(o)
80
- return true if self.equal?(o)
81
- self.class == o.class &&
82
- descriptor == o.descriptor &&
83
- merchant_reference == o.merchant_reference &&
84
- merchant_parameters == o.merchant_parameters
85
- end
86
-
87
- # @see the `==` method
88
- # @param [Object] Object to be compared
89
- def eql?(o)
90
- self == o
91
- end
92
-
93
- # Calculates hash code according to all attributes.
94
- # @return [Integer] Hash code
95
- def hash
96
- [descriptor, merchant_reference, merchant_parameters].hash
97
- end
98
-
99
- # Builds the object from hash
100
- # @param [Hash] attributes Model attributes in the form of hash
101
- # @return [Object] Returns the model itself
102
- def self.build_from_hash(attributes)
103
- return nil unless attributes.is_a?(Hash)
104
- attributes = attributes.transform_keys(&:to_sym)
105
- transformed_hash = {}
106
- openapi_types.each_pair do |key, type|
107
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
108
- transformed_hash["#{key}"] = nil
109
- elsif type =~ /\AArray<(.*)>/i
110
- # check to ensure the input is an array given that the attribute
111
- # is documented as an array but the input is not
112
- if attributes[attribute_map[key]].is_a?(Array)
113
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
114
- end
115
- elsif !attributes[attribute_map[key]].nil?
116
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
117
- end
118
- end
119
- new(transformed_hash)
120
- end
121
-
122
- # Deserializes the data based on type
123
- # @param string type Data type
124
- # @param string value Value to be deserialized
125
- # @return [Object] Deserialized data
126
- def self._deserialize(type, value)
127
- case type.to_sym
128
- when :Time
129
- Time.parse(value)
130
- when :Date
131
- Date.parse(value)
132
- when :String
133
- value.to_s
134
- when :Integer
135
- value.to_i
136
- when :Float
137
- value.to_f
138
- when :Boolean
139
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
140
- true
141
- else
142
- false
143
- end
144
- when :Object
145
- # generic object (usually a Hash), return directly
146
- value
147
- when /\AArray<(?<inner_type>.+)>\z/
148
- inner_type = Regexp.last_match[:inner_type]
149
- value.map { |v| _deserialize(inner_type, v) }
150
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
151
- k_type = Regexp.last_match[:k_type]
152
- v_type = Regexp.last_match[:v_type]
153
- {}.tap do |hash|
154
- value.each do |k, v|
155
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
156
- end
157
- end
158
- else # model
159
- # models (e.g. Pet) or oneOf
160
- klass = PCPServerSDK::Models.const_get(type)
161
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
162
- end
163
- end
164
-
165
- # Returns the string representation of the object
166
- # @return [String] String presentation of the object
167
- def to_s
168
- to_hash.to_s
169
- end
170
-
171
- # to_body is an alias to to_hash (backward compatibility)
172
- # @return [Hash] Returns the object in the form of hash
173
- def to_body
174
- to_hash
175
- end
176
-
177
- # Returns the object in the form of hash
178
- # @return [Hash] Returns the object in the form of hash
179
- def to_hash
180
- hash = {}
181
- self.class.attribute_map.each_pair do |attr, param|
182
- value = self.send(attr)
183
- if value.nil?
184
- is_nullable = self.class.openapi_nullable.include?(attr)
185
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
186
- end
187
-
188
- hash[param] = _to_hash(value)
189
- end
190
- hash
191
- end
192
-
193
- # Outputs non-array value in the form of hash
194
- # For object, use to_hash. Otherwise, just return the value
195
- # @param [Object] value Any valid value
196
- # @return [Hash] Returns the value in the form of hash
197
- def _to_hash(value)
198
- if value.is_a?(Array)
199
- value.compact.map { |v| _to_hash(v) }
200
- elsif value.is_a?(Hash)
201
- {}.tap do |hash|
202
- value.each { |k, v| hash[k] = _to_hash(v) }
203
- end
204
- elsif value.respond_to? :to_hash
205
- value.to_hash
206
- else
207
- value
208
- end
209
- end
51
+ attribute :merchant_parameters, :merchantParameters, :String
210
52
  end
211
53
  end
212
54
  end
@@ -1,192 +1,9 @@
1
- require 'date'
2
- require 'time'
1
+ require_relative 'model_base'
3
2
 
4
- # Request to refresh the payment status of a specific payment.
5
3
  module PCPServerSDK
6
4
  module Models
7
- class RefreshPaymentRequest
8
- # Type of refresh request
9
- attr_accessor :refresh_type
10
-
11
- class EnumAttributeValidator
12
- attr_reader :datatype
13
- attr_reader :allowable_values
14
-
15
- def initialize(datatype, allowable_values)
16
- @allowable_values = allowable_values.map do |value|
17
- case datatype.to_s
18
- when /Integer/i
19
- value.to_i
20
- when /Float/i
21
- value.to_f
22
- else
23
- value
24
- end
25
- end
26
- end
27
-
28
- def valid?(value)
29
- !value || allowable_values.include?(value)
30
- end
31
- end
32
-
33
- # Attribute mapping from Ruby-style variable name to JSON key.
34
- def self.attribute_map
35
- {
36
- :'refresh_type' => :'refreshType'
37
- }
38
- end
39
-
40
- # Returns all the JSON keys this model knows about
41
- def self.acceptable_attributes
42
- attribute_map.values
43
- end
44
-
45
- # Attribute type mapping.
46
- def self.openapi_types
47
- {
48
- :'refresh_type' => :'RefreshType'
49
- }
50
- end
51
-
52
- # List of attributes with nullable: true
53
- def self.openapi_nullable
54
- Set.new([])
55
- end
56
-
57
- # Initializes the object
58
- # @param [Hash] attributes Model attributes in the form of hash
59
- def initialize(attributes = {})
60
- if (!attributes.is_a?(Hash))
61
- fail ArgumentError, "The input argument (attributes) must be a hash in `RefreshPaymentRequest` initialize method"
62
- end
63
-
64
- attributes = attributes.each_with_object({}) { |(k, v), h|
65
- if (!self.class.attribute_map.key?(k.to_sym))
66
- fail ArgumentError, "`#{k}` is not a valid attribute in `RefreshPaymentRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
67
- end
68
- h[k.to_sym] = v
69
- }
70
-
71
- if attributes.key?(:'refresh_type')
72
- self.refresh_type = attributes[:'refresh_type']
73
- end
74
- end
75
-
76
- # Checks equality by comparing each attribute.
77
- def ==(o)
78
- return true if self.equal?(o)
79
- self.class == o.class &&
80
- refresh_type == o.refresh_type
81
- end
82
-
83
- # @see the `==` method
84
- def eql?(o)
85
- self == o
86
- end
87
-
88
- # Calculates hash code according to all attributes.
89
- def hash
90
- [refresh_type].hash
91
- end
92
-
93
- # Builds the object from hash
94
- # @param [Hash] attributes Model attributes in the form of hash
95
- # @return [Object] Returns the model itself
96
- def self.build_from_hash(attributes)
97
- return nil unless attributes.is_a?(Hash)
98
- attributes = attributes.transform_keys(&:to_sym)
99
- transformed_hash = {}
100
- openapi_types.each_pair do |key, type|
101
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
102
- transformed_hash["#{key}"] = nil
103
- elsif type =~ /\AArray<(.*)>/i
104
- if attributes[attribute_map[key]].is_a?(Array)
105
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
106
- end
107
- elsif !attributes[attribute_map[key]].nil?
108
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
109
- end
110
- end
111
- new(transformed_hash)
112
- end
113
-
114
- # Deserializes the data based on type
115
- def self._deserialize(type, value)
116
- case type.to_sym
117
- when :Time
118
- Time.parse(value)
119
- when :Date
120
- Date.parse(value)
121
- when :String
122
- value.to_s
123
- when :Integer
124
- value.to_i
125
- when :Float
126
- value.to_f
127
- when :Boolean
128
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
129
- true
130
- else
131
- false
132
- end
133
- when :Object
134
- value
135
- when /\AArray<(?<inner_type>.+)>\z/
136
- inner_type = Regexp.last_match[:inner_type]
137
- value.map { |v| _deserialize(inner_type, v) }
138
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
139
- k_type = Regexp.last_match[:k_type]
140
- v_type = Regexp.last_match[:v_type]
141
- {}.tap do |hash|
142
- value.each do |k, v|
143
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
144
- end
145
- end
146
- else
147
- klass = PCPServerSDK::Models.const_get(type)
148
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
149
- end
150
- end
151
-
152
- # Returns the string representation of the object
153
- def to_s
154
- to_hash.to_s
155
- end
156
-
157
- # to_body is an alias to to_hash (backward compatibility)
158
- def to_body
159
- to_hash
160
- end
161
-
162
- # Returns the object in the form of hash
163
- def to_hash
164
- hash = {}
165
- self.class.attribute_map.each_pair do |attr, param|
166
- value = self.send(attr)
167
- if value.nil?
168
- is_nullable = self.class.openapi_nullable.include?(attr)
169
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
170
- end
171
- hash[param] = _to_hash(value)
172
- end
173
- hash
174
- end
175
-
176
- # Outputs non-array value in the form of hash
177
- def _to_hash(value)
178
- if value.is_a?(Array)
179
- value.compact.map { |v| _to_hash(v) }
180
- elsif value.is_a?(Hash)
181
- {}.tap do |hash|
182
- value.each { |k, v| hash[k] = _to_hash(v) }
183
- end
184
- elsif value.respond_to? :to_hash
185
- value.to_hash
186
- else
187
- value
188
- end
189
- end
5
+ class RefreshPaymentRequest < ModelBase
6
+ attribute :refresh_type, :refreshType, :RefreshType
190
7
  end
191
8
  end
192
9
  end