univapay-client-sdk 1.0.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 (241) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +212 -0
  4. data/bin/console +15 -0
  5. data/lib/univapay_client_sdk/api_helper.rb +10 -0
  6. data/lib/univapay_client_sdk/apis/base_api.rb +67 -0
  7. data/lib/univapay_client_sdk/apis/cancels_api.rb +293 -0
  8. data/lib/univapay_client_sdk/apis/charges_api.rb +909 -0
  9. data/lib/univapay_client_sdk/apis/merchants_api.rb +57 -0
  10. data/lib/univapay_client_sdk/apis/refunds_api.rb +298 -0
  11. data/lib/univapay_client_sdk/apis/stores_api.rb +126 -0
  12. data/lib/univapay_client_sdk/apis/subscriptions_api.rb +1014 -0
  13. data/lib/univapay_client_sdk/apis/transaction_tokens_api.rb +455 -0
  14. data/lib/univapay_client_sdk/apis/webhooks_api.rb +463 -0
  15. data/lib/univapay_client_sdk/client.rb +128 -0
  16. data/lib/univapay_client_sdk/configuration.rb +179 -0
  17. data/lib/univapay_client_sdk/events/unknown_event.rb +32 -0
  18. data/lib/univapay_client_sdk/events/webhooks/bank_transfer_handler.rb +37 -0
  19. data/lib/univapay_client_sdk/events/webhooks/cancel_handler.rb +37 -0
  20. data/lib/univapay_client_sdk/events/webhooks/charge_handler.rb +37 -0
  21. data/lib/univapay_client_sdk/events/webhooks/customs_handler.rb +37 -0
  22. data/lib/univapay_client_sdk/events/webhooks/refund_handler.rb +37 -0
  23. data/lib/univapay_client_sdk/events/webhooks/subscription_handler.rb +37 -0
  24. data/lib/univapay_client_sdk/events/webhooks/token_handler.rb +37 -0
  25. data/lib/univapay_client_sdk/exceptions/api_error_exception.rb +199 -0
  26. data/lib/univapay_client_sdk/exceptions/api_exception.rb +21 -0
  27. data/lib/univapay_client_sdk/extensions.rb +127 -0
  28. data/lib/univapay_client_sdk/http/api_response.rb +19 -0
  29. data/lib/univapay_client_sdk/http/auth/oauth_2.rb +58 -0
  30. data/lib/univapay_client_sdk/http/http_call_back.rb +10 -0
  31. data/lib/univapay_client_sdk/http/http_method_enum.rb +10 -0
  32. data/lib/univapay_client_sdk/http/http_request.rb +10 -0
  33. data/lib/univapay_client_sdk/http/http_response.rb +10 -0
  34. data/lib/univapay_client_sdk/http/proxy_settings.rb +22 -0
  35. data/lib/univapay_client_sdk/logging/configuration/api_logging_configuration.rb +186 -0
  36. data/lib/univapay_client_sdk/logging/sdk_logger.rb +17 -0
  37. data/lib/univapay_client_sdk/models/api_error_detail.rb +87 -0
  38. data/lib/univapay_client_sdk/models/api_error_status.rb +26 -0
  39. data/lib/univapay_client_sdk/models/bank_transfer_event.rb +27 -0
  40. data/lib/univapay_client_sdk/models/bank_transfer_ledger.rb +199 -0
  41. data/lib/univapay_client_sdk/models/bank_transfer_ledger_bank_ledger_type.rb +36 -0
  42. data/lib/univapay_client_sdk/models/bank_transfer_ledger_list.rb +104 -0
  43. data/lib/univapay_client_sdk/models/bank_transfer_ledger_mode.rb +36 -0
  44. data/lib/univapay_client_sdk/models/bank_transfer_payment_status.rb +44 -0
  45. data/lib/univapay_client_sdk/models/bank_transfer_status_data.rb +229 -0
  46. data/lib/univapay_client_sdk/models/bank_transfer_status_webhook_callback.rb +134 -0
  47. data/lib/univapay_client_sdk/models/bank_transfer_status_webhook_callback_extension.rb +75 -0
  48. data/lib/univapay_client_sdk/models/base_bank_transfer_data.rb +100 -0
  49. data/lib/univapay_client_sdk/models/base_konbini_data.rb +99 -0
  50. data/lib/univapay_client_sdk/models/base_konbini_data_convenience_store.rb +60 -0
  51. data/lib/univapay_client_sdk/models/base_model.rb +110 -0
  52. data/lib/univapay_client_sdk/models/base_online_data.rb +123 -0
  53. data/lib/univapay_client_sdk/models/base_online_data_brand.rb +48 -0
  54. data/lib/univapay_client_sdk/models/base_online_data_call_method.rb +52 -0
  55. data/lib/univapay_client_sdk/models/base_online_data_os_type.rb +36 -0
  56. data/lib/univapay_client_sdk/models/base_online_data_user_identifier_source.rb +36 -0
  57. data/lib/univapay_client_sdk/models/cancel.rb +183 -0
  58. data/lib/univapay_client_sdk/models/cancel_create_request.rb +77 -0
  59. data/lib/univapay_client_sdk/models/cancel_event.rb +26 -0
  60. data/lib/univapay_client_sdk/models/cancel_list.rb +94 -0
  61. data/lib/univapay_client_sdk/models/cancel_status.rb +44 -0
  62. data/lib/univapay_client_sdk/models/cancel_update_request.rb +76 -0
  63. data/lib/univapay_client_sdk/models/cancel_webhook_callback.rb +132 -0
  64. data/lib/univapay_client_sdk/models/cancel_webhook_callback_extension.rb +74 -0
  65. data/lib/univapay_client_sdk/models/card_processor_installment_config.rb +89 -0
  66. data/lib/univapay_client_sdk/models/charge.rb +411 -0
  67. data/lib/univapay_client_sdk/models/charge_capture_request.rb +84 -0
  68. data/lib/univapay_client_sdk/models/charge_create_request.rb +179 -0
  69. data/lib/univapay_client_sdk/models/charge_create_request_client_metadata.rb +76 -0
  70. data/lib/univapay_client_sdk/models/charge_create_request_redirect.rb +75 -0
  71. data/lib/univapay_client_sdk/models/charge_create_request_three_ds.rb +88 -0
  72. data/lib/univapay_client_sdk/models/charge_create_request_three_ds_mode.rb +44 -0
  73. data/lib/univapay_client_sdk/models/charge_event.rb +36 -0
  74. data/lib/univapay_client_sdk/models/charge_list.rb +104 -0
  75. data/lib/univapay_client_sdk/models/charge_mode.rb +36 -0
  76. data/lib/univapay_client_sdk/models/charge_redirect.rb +96 -0
  77. data/lib/univapay_client_sdk/models/charge_status.rb +56 -0
  78. data/lib/univapay_client_sdk/models/charge_three_ds.rb +97 -0
  79. data/lib/univapay_client_sdk/models/charge_transaction_token_type.rb +40 -0
  80. data/lib/univapay_client_sdk/models/charge_update_request.rb +75 -0
  81. data/lib/univapay_client_sdk/models/charge_webhook_event.rb +138 -0
  82. data/lib/univapay_client_sdk/models/cursor_direction_query.rb +36 -0
  83. data/lib/univapay_client_sdk/models/customs_declaration_create_request.rb +106 -0
  84. data/lib/univapay_client_sdk/models/customs_declaration_event.rb +27 -0
  85. data/lib/univapay_client_sdk/models/customs_declaration_patch_request.rb +77 -0
  86. data/lib/univapay_client_sdk/models/customs_declaration_webhook_callback.rb +135 -0
  87. data/lib/univapay_client_sdk/models/customs_declaration_webhook_callback_extension.rb +76 -0
  88. data/lib/univapay_client_sdk/models/customs_declaration_webhook_data.rb +232 -0
  89. data/lib/univapay_client_sdk/models/customs_declaration_webhook_declaration.rb +121 -0
  90. data/lib/univapay_client_sdk/models/customs_declaration_webhook_error.rb +127 -0
  91. data/lib/univapay_client_sdk/models/customs_declaration_webhook_other_error.rb +120 -0
  92. data/lib/univapay_client_sdk/models/customs_declaration_webhook_result.rb +125 -0
  93. data/lib/univapay_client_sdk/models/customs_declaration_webhook_status.rb +44 -0
  94. data/lib/univapay_client_sdk/models/generic_metadata.rb +111 -0
  95. data/lib/univapay_client_sdk/models/installment_fixed_cycles.rb +70 -0
  96. data/lib/univapay_client_sdk/models/installment_plan_type.rb +36 -0
  97. data/lib/univapay_client_sdk/models/issuer_token.rb +177 -0
  98. data/lib/univapay_client_sdk/models/issuer_token_call_method.rb +51 -0
  99. data/lib/univapay_client_sdk/models/issuer_token_payload.rb +105 -0
  100. data/lib/univapay_client_sdk/models/issuer_token_payment_type.rb +36 -0
  101. data/lib/univapay_client_sdk/models/merchant.rb +179 -0
  102. data/lib/univapay_client_sdk/models/merchant_webhook_bank_transfer_configuration.rb +342 -0
  103. data/lib/univapay_client_sdk/models/merchant_webhook_card_brand_percent_fees.rb +167 -0
  104. data/lib/univapay_client_sdk/models/merchant_webhook_card_configuration.rb +301 -0
  105. data/lib/univapay_client_sdk/models/merchant_webhook_checkout_configuration.rb +87 -0
  106. data/lib/univapay_client_sdk/models/merchant_webhook_checkout_toggle.rb +77 -0
  107. data/lib/univapay_client_sdk/models/merchant_webhook_configuration.rb +505 -0
  108. data/lib/univapay_client_sdk/models/merchant_webhook_convenience_configuration.rb +88 -0
  109. data/lib/univapay_client_sdk/models/merchant_webhook_customer_management_configuration.rb +99 -0
  110. data/lib/univapay_client_sdk/models/merchant_webhook_installment_plan_configuration.rb +139 -0
  111. data/lib/univapay_client_sdk/models/merchant_webhook_limit_charge_by_card_configuration.rb +88 -0
  112. data/lib/univapay_client_sdk/models/merchant_webhook_limit_refund_by_sales_configuration.rb +100 -0
  113. data/lib/univapay_client_sdk/models/merchant_webhook_money_amount.rb +85 -0
  114. data/lib/univapay_client_sdk/models/merchant_webhook_online_configuration.rb +77 -0
  115. data/lib/univapay_client_sdk/models/merchant_webhook_paidy_configuration.rb +77 -0
  116. data/lib/univapay_client_sdk/models/merchant_webhook_qr_merchant_configuration.rb +77 -0
  117. data/lib/univapay_client_sdk/models/merchant_webhook_qr_scan_configuration.rb +93 -0
  118. data/lib/univapay_client_sdk/models/merchant_webhook_recurring_cvv_confirmation_config.rb +97 -0
  119. data/lib/univapay_client_sdk/models/merchant_webhook_recurring_token_configuration.rb +109 -0
  120. data/lib/univapay_client_sdk/models/merchant_webhook_security_configuration.rb +234 -0
  121. data/lib/univapay_client_sdk/models/merchant_webhook_subscription_configuration.rb +138 -0
  122. data/lib/univapay_client_sdk/models/merchant_webhook_subscription_plan_configuration.rb +138 -0
  123. data/lib/univapay_client_sdk/models/merchant_webhook_transfer_schedule_configuration.rb +159 -0
  124. data/lib/univapay_client_sdk/models/merchant_webhook_user_transactions_configuration.rb +349 -0
  125. data/lib/univapay_client_sdk/models/mode_query.rb +36 -0
  126. data/lib/univapay_client_sdk/models/payment_error.rb +178 -0
  127. data/lib/univapay_client_sdk/models/plan_settings_type.rb +36 -0
  128. data/lib/univapay_client_sdk/models/refund.rb +240 -0
  129. data/lib/univapay_client_sdk/models/refund_create_request.rb +118 -0
  130. data/lib/univapay_client_sdk/models/refund_event.rb +26 -0
  131. data/lib/univapay_client_sdk/models/refund_list.rb +104 -0
  132. data/lib/univapay_client_sdk/models/refund_reason_request.rb +42 -0
  133. data/lib/univapay_client_sdk/models/refund_reason_response.rb +62 -0
  134. data/lib/univapay_client_sdk/models/refund_status.rb +47 -0
  135. data/lib/univapay_client_sdk/models/refund_update_request.rb +99 -0
  136. data/lib/univapay_client_sdk/models/refund_webhook_callback.rb +132 -0
  137. data/lib/univapay_client_sdk/models/refund_webhook_callback_extension.rb +74 -0
  138. data/lib/univapay_client_sdk/models/restrict_ip_after_failed_charge_config.rb +99 -0
  139. data/lib/univapay_client_sdk/models/store.rb +119 -0
  140. data/lib/univapay_client_sdk/models/store_list.rb +104 -0
  141. data/lib/univapay_client_sdk/models/store_list_item.rb +114 -0
  142. data/lib/univapay_client_sdk/models/subscription.rb +310 -0
  143. data/lib/univapay_client_sdk/models/subscription_create_request.rb +216 -0
  144. data/lib/univapay_client_sdk/models/subscription_event.rb +54 -0
  145. data/lib/univapay_client_sdk/models/subscription_installment_plan.rb +86 -0
  146. data/lib/univapay_client_sdk/models/subscription_list.rb +104 -0
  147. data/lib/univapay_client_sdk/models/subscription_list_item.rb +352 -0
  148. data/lib/univapay_client_sdk/models/subscription_next_payment.rb +222 -0
  149. data/lib/univapay_client_sdk/models/subscription_patch_payment_request.rb +117 -0
  150. data/lib/univapay_client_sdk/models/subscription_patch_token_request.rb +79 -0
  151. data/lib/univapay_client_sdk/models/subscription_payment.rb +185 -0
  152. data/lib/univapay_client_sdk/models/subscription_payment_list.rb +94 -0
  153. data/lib/univapay_client_sdk/models/subscription_period.rb +56 -0
  154. data/lib/univapay_client_sdk/models/subscription_plan_settings.rb +98 -0
  155. data/lib/univapay_client_sdk/models/subscription_schedule_settings.rb +132 -0
  156. data/lib/univapay_client_sdk/models/subscription_status.rb +56 -0
  157. data/lib/univapay_client_sdk/models/subscription_suspend_request.rb +79 -0
  158. data/lib/univapay_client_sdk/models/subscription_terminate_with_status.rb +36 -0
  159. data/lib/univapay_client_sdk/models/subscription_termination_mode.rb +36 -0
  160. data/lib/univapay_client_sdk/models/subscription_update_next_payment.rb +104 -0
  161. data/lib/univapay_client_sdk/models/subscription_update_request.rb +134 -0
  162. data/lib/univapay_client_sdk/models/subscription_update_schedule_settings.rb +110 -0
  163. data/lib/univapay_client_sdk/models/subscription_update_status.rb +37 -0
  164. data/lib/univapay_client_sdk/models/subscription_user_data.rb +134 -0
  165. data/lib/univapay_client_sdk/models/subscription_webhook_event.rb +143 -0
  166. data/lib/univapay_client_sdk/models/suspend_schedule_settings.rb +78 -0
  167. data/lib/univapay_client_sdk/models/three_ds_issuer_token.rb +116 -0
  168. data/lib/univapay_client_sdk/models/three_ds_issuer_token_call_method.rb +26 -0
  169. data/lib/univapay_client_sdk/models/three_ds_issuer_token_payment_type.rb +26 -0
  170. data/lib/univapay_client_sdk/models/token_create_bank_transfer_data.rb +122 -0
  171. data/lib/univapay_client_sdk/models/token_create_card_data.rb +230 -0
  172. data/lib/univapay_client_sdk/models/token_create_card_data_cvv_authorize.rb +95 -0
  173. data/lib/univapay_client_sdk/models/token_create_card_data_three_ds.rb +97 -0
  174. data/lib/univapay_client_sdk/models/token_create_konbini_data.rb +146 -0
  175. data/lib/univapay_client_sdk/models/token_create_online_data.rb +142 -0
  176. data/lib/univapay_client_sdk/models/token_create_phone_number.rb +104 -0
  177. data/lib/univapay_client_sdk/models/token_event.rb +59 -0
  178. data/lib/univapay_client_sdk/models/token_response_bank_transfer_data.rb +181 -0
  179. data/lib/univapay_client_sdk/models/token_response_card_data.rb +129 -0
  180. data/lib/univapay_client_sdk/models/token_response_card_data_billing.rb +153 -0
  181. data/lib/univapay_client_sdk/models/token_response_card_data_card.rb +187 -0
  182. data/lib/univapay_client_sdk/models/token_response_card_data_cvv_authorize.rb +132 -0
  183. data/lib/univapay_client_sdk/models/token_response_card_data_cvv_authorize_check.rb +118 -0
  184. data/lib/univapay_client_sdk/models/token_response_card_data_three_ds.rb +142 -0
  185. data/lib/univapay_client_sdk/models/token_response_card_data_three_ds_status.rb +48 -0
  186. data/lib/univapay_client_sdk/models/token_response_konbini_data.rb +135 -0
  187. data/lib/univapay_client_sdk/models/token_response_online_data.rb +158 -0
  188. data/lib/univapay_client_sdk/models/token_response_phone_number.rb +96 -0
  189. data/lib/univapay_client_sdk/models/token_webhook_event.rb +144 -0
  190. data/lib/univapay_client_sdk/models/transaction_token.rb +250 -0
  191. data/lib/univapay_client_sdk/models/transaction_token_create_request.rb +161 -0
  192. data/lib/univapay_client_sdk/models/transaction_token_create_request_metadata.rb +124 -0
  193. data/lib/univapay_client_sdk/models/transaction_token_create_request_payment_type.rb +44 -0
  194. data/lib/univapay_client_sdk/models/transaction_token_create_request_type.rb +40 -0
  195. data/lib/univapay_client_sdk/models/transaction_token_list.rb +104 -0
  196. data/lib/univapay_client_sdk/models/transaction_token_list_item.rb +204 -0
  197. data/lib/univapay_client_sdk/models/transaction_token_list_item_user_data.rb +96 -0
  198. data/lib/univapay_client_sdk/models/transaction_token_mode.rb +36 -0
  199. data/lib/univapay_client_sdk/models/transaction_token_payment_type.rb +48 -0
  200. data/lib/univapay_client_sdk/models/transaction_token_type.rb +40 -0
  201. data/lib/univapay_client_sdk/models/transaction_token_update_request.rb +95 -0
  202. data/lib/univapay_client_sdk/models/transaction_token_update_request_data.rb +184 -0
  203. data/lib/univapay_client_sdk/models/transaction_token_update_request_data_phone_number.rb +86 -0
  204. data/lib/univapay_client_sdk/models/webhook.rb +191 -0
  205. data/lib/univapay_client_sdk/models/webhook_callback_envelope.rb +98 -0
  206. data/lib/univapay_client_sdk/models/webhook_create_request.rb +97 -0
  207. data/lib/univapay_client_sdk/models/webhook_event.rb +166 -0
  208. data/lib/univapay_client_sdk/models/webhook_event_list.rb +94 -0
  209. data/lib/univapay_client_sdk/models/webhook_list.rb +94 -0
  210. data/lib/univapay_client_sdk/models/webhook_trigger.rb +104 -0
  211. data/lib/univapay_client_sdk/models/webhook_update_request.rb +108 -0
  212. data/lib/univapay_client_sdk/utilities/date_time_helper.rb +11 -0
  213. data/lib/univapay_client_sdk/utilities/file_wrapper.rb +28 -0
  214. data/lib/univapay_client_sdk/utilities/union_type_lookup.rb +182 -0
  215. data/lib/univapay_client_sdk.rb +285 -0
  216. data/test/apis/api_test_base.rb +23 -0
  217. data/test/apis/test_cancels_api.rb +162 -0
  218. data/test/apis/test_charges_api.rb +565 -0
  219. data/test/apis/test_error_messages.rb +38 -0
  220. data/test/apis/test_merchants_api.rb +50 -0
  221. data/test/apis/test_refunds_api.rb +172 -0
  222. data/test/apis/test_stores_api.rb +86 -0
  223. data/test/apis/test_subscriptions_api.rb +579 -0
  224. data/test/apis/test_transaction_tokens_api.rb +305 -0
  225. data/test/apis/test_webhooks_api.rb +245 -0
  226. data/test/events/webhooks/test_bank_transfer_handler.rb +95 -0
  227. data/test/events/webhooks/test_cancel_handler.rb +90 -0
  228. data/test/events/webhooks/test_charge_handler.rb +138 -0
  229. data/test/events/webhooks/test_customs_handler.rb +100 -0
  230. data/test/events/webhooks/test_refund_handler.rb +95 -0
  231. data/test/events/webhooks/test_subscription_handler.rb +346 -0
  232. data/test/events/webhooks/test_token_handler.rb +332 -0
  233. data/test/framework_integrations/rails_app_test_helper.rb +14 -0
  234. data/test/framework_integrations/webhooks/apps/hanami_charge_app.rb +61 -0
  235. data/test/framework_integrations/webhooks/apps/rails_charge_app.rb +24 -0
  236. data/test/framework_integrations/webhooks/apps/sinatra_charge_app.rb +27 -0
  237. data/test/framework_integrations/webhooks/test/test_hanami_charge_app.rb +57 -0
  238. data/test/framework_integrations/webhooks/test/test_rails_charge_app.rb +57 -0
  239. data/test/framework_integrations/webhooks/test/test_sinatra_charge_app.rb +58 -0
  240. data/test/http_response_catcher.rb +32 -0
  241. metadata +366 -0
@@ -0,0 +1,97 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module UnivapayClientSdk
7
+ # Token Create Card Data Three Ds schema.
8
+ class TokenCreateCardDataThreeDs < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Enabled value.
13
+ # @return [TrueClass | FalseClass]
14
+ attr_accessor :enabled
15
+
16
+ # Redirect endpoint URL.
17
+ # @return [String]
18
+ attr_accessor :redirect_endpoint
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['enabled'] = 'enabled'
24
+ @_hash['redirect_endpoint'] = 'redirect_endpoint'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ enabled
32
+ redirect_endpoint
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(enabled: SKIP, redirect_endpoint: SKIP,
42
+ additional_properties: nil)
43
+ # Add additional model properties to the instance
44
+ additional_properties = {} if additional_properties.nil?
45
+
46
+ @enabled = enabled unless enabled == SKIP
47
+ @redirect_endpoint = redirect_endpoint unless redirect_endpoint == SKIP
48
+ @additional_properties = additional_properties
49
+ end
50
+
51
+ # Creates an instance of the object from a hash.
52
+ def self.from_hash(hash)
53
+ return nil unless hash
54
+
55
+ # Extract variables from the hash.
56
+ enabled = hash.key?('enabled') ? hash['enabled'] : SKIP
57
+ redirect_endpoint =
58
+ hash.key?('redirect_endpoint') ? hash['redirect_endpoint'] : SKIP
59
+
60
+ # Create a new hash for additional properties, removing known properties.
61
+ new_hash = hash.reject { |k, _| names.value?(k) }
62
+
63
+ additional_properties = APIHelper.get_additional_properties(
64
+ new_hash, proc { |value| value }
65
+ )
66
+
67
+ # Create object from extracted values.
68
+ TokenCreateCardDataThreeDs.new(enabled: enabled,
69
+ redirect_endpoint: redirect_endpoint,
70
+ additional_properties: additional_properties)
71
+ end
72
+
73
+ # Validates an instance of the object from a given value.
74
+ # @param [TokenCreateCardDataThreeDs | Hash] The value against the validation is performed.
75
+ def self.validate(value)
76
+ return true if value.instance_of? self
77
+
78
+ return false unless value.instance_of? Hash
79
+
80
+ true
81
+ end
82
+
83
+ # Provides a human-readable string representation of the object.
84
+ def to_s
85
+ class_name = self.class.name.split('::').last
86
+ "<#{class_name} enabled: #{@enabled}, redirect_endpoint: #{@redirect_endpoint},"\
87
+ " additional_properties: #{@additional_properties}>"
88
+ end
89
+
90
+ # Provides a debugging-friendly string with detailed object information.
91
+ def inspect
92
+ class_name = self.class.name.split('::').last
93
+ "<#{class_name} enabled: #{@enabled.inspect}, redirect_endpoint:"\
94
+ " #{@redirect_endpoint.inspect}, additional_properties: #{@additional_properties}>"
95
+ end
96
+ end
97
+ end
@@ -0,0 +1,146 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module UnivapayClientSdk
7
+ # Token Create Konbini Data schema.
8
+ class TokenCreateKonbiniData < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Customer name.
13
+ # @return [String]
14
+ attr_accessor :customer_name
15
+
16
+ # Base Konbini Data Convenience Store schema.
17
+ # @return [BaseKonbiniDataConvenienceStore]
18
+ attr_accessor :convenience_store
19
+
20
+ # ISO-8601 Duration (e.g., 'P7D'). Default is 30 days.
21
+ # @return [String]
22
+ attr_accessor :expiration_period
23
+
24
+ # Token Create Phone Number schema.
25
+ # @return [TokenCreatePhoneNumber]
26
+ attr_accessor :phone_number
27
+
28
+ # Expiration time shift value.
29
+ # @return [String]
30
+ attr_accessor :expiration_time_shift
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['customer_name'] = 'customer_name'
36
+ @_hash['convenience_store'] = 'convenience_store'
37
+ @_hash['expiration_period'] = 'expiration_period'
38
+ @_hash['phone_number'] = 'phone_number'
39
+ @_hash['expiration_time_shift'] = 'expiration_time_shift'
40
+ @_hash
41
+ end
42
+
43
+ # An array for optional fields
44
+ def self.optionals
45
+ %w[
46
+ expiration_period
47
+ expiration_time_shift
48
+ ]
49
+ end
50
+
51
+ # An array for nullable fields
52
+ def self.nullables
53
+ []
54
+ end
55
+
56
+ def initialize(customer_name:, convenience_store:, phone_number:,
57
+ expiration_period: SKIP, expiration_time_shift: SKIP,
58
+ additional_properties: nil)
59
+ # Add additional model properties to the instance
60
+ additional_properties = {} if additional_properties.nil?
61
+
62
+ @customer_name = customer_name
63
+ @convenience_store = convenience_store
64
+ @expiration_period = expiration_period unless expiration_period == SKIP
65
+ @phone_number = phone_number
66
+ @expiration_time_shift = expiration_time_shift unless expiration_time_shift == SKIP
67
+ @additional_properties = additional_properties
68
+ end
69
+
70
+ # Creates an instance of the object from a hash.
71
+ def self.from_hash(hash)
72
+ return nil unless hash
73
+
74
+ # Extract variables from the hash.
75
+ customer_name = hash.key?('customer_name') ? hash['customer_name'] : nil
76
+ convenience_store =
77
+ hash.key?('convenience_store') ? hash['convenience_store'] : nil
78
+ phone_number = TokenCreatePhoneNumber.from_hash(hash['phone_number']) if hash['phone_number']
79
+ expiration_period =
80
+ hash.key?('expiration_period') ? hash['expiration_period'] : SKIP
81
+ expiration_time_shift =
82
+ hash.key?('expiration_time_shift') ? hash['expiration_time_shift'] : SKIP
83
+
84
+ # Create a new hash for additional properties, removing known properties.
85
+ new_hash = hash.reject { |k, _| names.value?(k) }
86
+
87
+ additional_properties = APIHelper.get_additional_properties(
88
+ new_hash, proc { |value| value }
89
+ )
90
+
91
+ # Create object from extracted values.
92
+ TokenCreateKonbiniData.new(customer_name: customer_name,
93
+ convenience_store: convenience_store,
94
+ phone_number: phone_number,
95
+ expiration_period: expiration_period,
96
+ expiration_time_shift: expiration_time_shift,
97
+ additional_properties: additional_properties)
98
+ end
99
+
100
+ # Validates an instance of the object from a given value.
101
+ # @param [TokenCreateKonbiniData | Hash] The value against the validation is performed.
102
+ def self.validate(value)
103
+ if value.instance_of? self
104
+ return (
105
+ APIHelper.valid_type?(value.customer_name,
106
+ ->(val) { val.instance_of? String }) and
107
+ APIHelper.valid_type?(value.convenience_store,
108
+ ->(val) { BaseKonbiniDataConvenienceStore.validate(val) }) and
109
+ APIHelper.valid_type?(value.phone_number,
110
+ ->(val) { TokenCreatePhoneNumber.validate(val) },
111
+ is_model_hash: true)
112
+ )
113
+ end
114
+
115
+ return false unless value.instance_of? Hash
116
+
117
+ (
118
+ APIHelper.valid_type?(value['customer_name'],
119
+ ->(val) { val.instance_of? String }) and
120
+ APIHelper.valid_type?(value['convenience_store'],
121
+ ->(val) { BaseKonbiniDataConvenienceStore.validate(val) }) and
122
+ APIHelper.valid_type?(value['phone_number'],
123
+ ->(val) { TokenCreatePhoneNumber.validate(val) },
124
+ is_model_hash: true)
125
+ )
126
+ end
127
+
128
+ # Provides a human-readable string representation of the object.
129
+ def to_s
130
+ class_name = self.class.name.split('::').last
131
+ "<#{class_name} customer_name: #{@customer_name}, convenience_store: #{@convenience_store},"\
132
+ " expiration_period: #{@expiration_period}, phone_number: #{@phone_number},"\
133
+ " expiration_time_shift: #{@expiration_time_shift}, additional_properties:"\
134
+ " #{@additional_properties}>"
135
+ end
136
+
137
+ # Provides a debugging-friendly string with detailed object information.
138
+ def inspect
139
+ class_name = self.class.name.split('::').last
140
+ "<#{class_name} customer_name: #{@customer_name.inspect}, convenience_store:"\
141
+ " #{@convenience_store.inspect}, expiration_period: #{@expiration_period.inspect},"\
142
+ " phone_number: #{@phone_number.inspect}, expiration_time_shift:"\
143
+ " #{@expiration_time_shift.inspect}, additional_properties: #{@additional_properties}>"
144
+ end
145
+ end
146
+ end
@@ -0,0 +1,142 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module UnivapayClientSdk
7
+ # Token Create Online Data schema.
8
+ class TokenCreateOnlineData < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Base Online Data Brand schema.
13
+ # @return [BaseOnlineDataBrand]
14
+ attr_accessor :brand
15
+
16
+ # Base Online Data Call Method schema.
17
+ # @return [BaseOnlineDataCallMethod]
18
+ attr_accessor :call_method
19
+
20
+ # Base Online Data Os Type schema.
21
+ # @return [BaseOnlineDataOsType]
22
+ attr_accessor :os_type
23
+
24
+ # Consumer specific identifier required by some gateways for fraud
25
+ # prevention.
26
+ # @return [String]
27
+ attr_accessor :user_identifier
28
+
29
+ # The source of the user identifier
30
+ # @return [BaseOnlineDataUserIdentifierSource]
31
+ attr_accessor :user_identifier_source
32
+
33
+ # A mapping from model property names to API property names.
34
+ def self.names
35
+ @_hash = {} if @_hash.nil?
36
+ @_hash['brand'] = 'brand'
37
+ @_hash['call_method'] = 'call_method'
38
+ @_hash['os_type'] = 'os_type'
39
+ @_hash['user_identifier'] = 'user_identifier'
40
+ @_hash['user_identifier_source'] = 'user_identifier_source'
41
+ @_hash
42
+ end
43
+
44
+ # An array for optional fields
45
+ def self.optionals
46
+ %w[
47
+ os_type
48
+ user_identifier
49
+ user_identifier_source
50
+ ]
51
+ end
52
+
53
+ # An array for nullable fields
54
+ def self.nullables
55
+ %w[
56
+ os_type
57
+ user_identifier
58
+ user_identifier_source
59
+ ]
60
+ end
61
+
62
+ def initialize(brand:, call_method:, os_type: SKIP, user_identifier: SKIP,
63
+ user_identifier_source: SKIP, additional_properties: nil)
64
+ # Add additional model properties to the instance
65
+ additional_properties = {} if additional_properties.nil?
66
+
67
+ @brand = brand
68
+ @call_method = call_method
69
+ @os_type = os_type unless os_type == SKIP
70
+ @user_identifier = user_identifier unless user_identifier == SKIP
71
+ @user_identifier_source = user_identifier_source unless user_identifier_source == SKIP
72
+ @additional_properties = additional_properties
73
+ end
74
+
75
+ # Creates an instance of the object from a hash.
76
+ def self.from_hash(hash)
77
+ return nil unless hash
78
+
79
+ # Extract variables from the hash.
80
+ brand = hash.key?('brand') ? hash['brand'] : nil
81
+ call_method = hash.key?('call_method') ? hash['call_method'] : nil
82
+ os_type = hash.key?('os_type') ? hash['os_type'] : SKIP
83
+ user_identifier =
84
+ hash.key?('user_identifier') ? hash['user_identifier'] : SKIP
85
+ user_identifier_source =
86
+ hash.key?('user_identifier_source') ? hash['user_identifier_source'] : SKIP
87
+
88
+ # Create a new hash for additional properties, removing known properties.
89
+ new_hash = hash.reject { |k, _| names.value?(k) }
90
+
91
+ additional_properties = APIHelper.get_additional_properties(
92
+ new_hash, proc { |value| value }
93
+ )
94
+
95
+ # Create object from extracted values.
96
+ TokenCreateOnlineData.new(brand: brand,
97
+ call_method: call_method,
98
+ os_type: os_type,
99
+ user_identifier: user_identifier,
100
+ user_identifier_source: user_identifier_source,
101
+ additional_properties: additional_properties)
102
+ end
103
+
104
+ # Validates an instance of the object from a given value.
105
+ # @param [TokenCreateOnlineData | Hash] The value against the validation is performed.
106
+ def self.validate(value)
107
+ if value.instance_of? self
108
+ return (
109
+ APIHelper.valid_type?(value.brand,
110
+ ->(val) { BaseOnlineDataBrand.validate(val) }) and
111
+ APIHelper.valid_type?(value.call_method,
112
+ ->(val) { BaseOnlineDataCallMethod.validate(val) })
113
+ )
114
+ end
115
+
116
+ return false unless value.instance_of? Hash
117
+
118
+ (
119
+ APIHelper.valid_type?(value['brand'],
120
+ ->(val) { BaseOnlineDataBrand.validate(val) }) and
121
+ APIHelper.valid_type?(value['call_method'],
122
+ ->(val) { BaseOnlineDataCallMethod.validate(val) })
123
+ )
124
+ end
125
+
126
+ # Provides a human-readable string representation of the object.
127
+ def to_s
128
+ class_name = self.class.name.split('::').last
129
+ "<#{class_name} brand: #{@brand}, call_method: #{@call_method}, os_type: #{@os_type},"\
130
+ " user_identifier: #{@user_identifier}, user_identifier_source: #{@user_identifier_source},"\
131
+ " additional_properties: #{@additional_properties}>"
132
+ end
133
+
134
+ # Provides a debugging-friendly string with detailed object information.
135
+ def inspect
136
+ class_name = self.class.name.split('::').last
137
+ "<#{class_name} brand: #{@brand.inspect}, call_method: #{@call_method.inspect}, os_type:"\
138
+ " #{@os_type.inspect}, user_identifier: #{@user_identifier.inspect}, user_identifier_source:"\
139
+ " #{@user_identifier_source.inspect}, additional_properties: #{@additional_properties}>"
140
+ end
141
+ end
142
+ end
@@ -0,0 +1,104 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module UnivapayClientSdk
7
+ # Token Create Phone Number schema.
8
+ class TokenCreatePhoneNumber < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Country code as string (e.g., '1' or '81').
13
+ # @return [String]
14
+ attr_accessor :country_code
15
+
16
+ # Local phone number.
17
+ # @return [String]
18
+ attr_accessor :local_number
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['country_code'] = 'country_code'
24
+ @_hash['local_number'] = 'local_number'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ []
31
+ end
32
+
33
+ # An array for nullable fields
34
+ def self.nullables
35
+ []
36
+ end
37
+
38
+ def initialize(country_code:, local_number:, additional_properties: nil)
39
+ # Add additional model properties to the instance
40
+ additional_properties = {} if additional_properties.nil?
41
+
42
+ @country_code = country_code
43
+ @local_number = local_number
44
+ @additional_properties = additional_properties
45
+ end
46
+
47
+ # Creates an instance of the object from a hash.
48
+ def self.from_hash(hash)
49
+ return nil unless hash
50
+
51
+ # Extract variables from the hash.
52
+ country_code = hash.key?('country_code') ? hash['country_code'] : nil
53
+ local_number = hash.key?('local_number') ? hash['local_number'] : nil
54
+
55
+ # Create a new hash for additional properties, removing known properties.
56
+ new_hash = hash.reject { |k, _| names.value?(k) }
57
+
58
+ additional_properties = APIHelper.get_additional_properties(
59
+ new_hash, proc { |value| value }
60
+ )
61
+
62
+ # Create object from extracted values.
63
+ TokenCreatePhoneNumber.new(country_code: country_code,
64
+ local_number: local_number,
65
+ additional_properties: additional_properties)
66
+ end
67
+
68
+ # Validates an instance of the object from a given value.
69
+ # @param [TokenCreatePhoneNumber | Hash] The value against the validation is performed.
70
+ def self.validate(value)
71
+ if value.instance_of? self
72
+ return (
73
+ APIHelper.valid_type?(value.country_code,
74
+ ->(val) { val.instance_of? String }) and
75
+ APIHelper.valid_type?(value.local_number,
76
+ ->(val) { val.instance_of? String })
77
+ )
78
+ end
79
+
80
+ return false unless value.instance_of? Hash
81
+
82
+ (
83
+ APIHelper.valid_type?(value['country_code'],
84
+ ->(val) { val.instance_of? String }) and
85
+ APIHelper.valid_type?(value['local_number'],
86
+ ->(val) { val.instance_of? String })
87
+ )
88
+ end
89
+
90
+ # Provides a human-readable string representation of the object.
91
+ def to_s
92
+ class_name = self.class.name.split('::').last
93
+ "<#{class_name} country_code: #{@country_code}, local_number: #{@local_number},"\
94
+ " additional_properties: #{@additional_properties}>"
95
+ end
96
+
97
+ # Provides a debugging-friendly string with detailed object information.
98
+ def inspect
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} country_code: #{@country_code.inspect}, local_number:"\
101
+ " #{@local_number.inspect}, additional_properties: #{@additional_properties}>"
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,59 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module UnivapayClientSdk
7
+ # Event type discriminator — `token_created`, `token_updated`,
8
+ # `token_three_d_s_updated`, `token_cvv_auth_updated`,
9
+ # `token_cvv_auth_check_updated`, `token_replaced`, or
10
+ # `recurring_token_deleted`.
11
+ class TokenEvent
12
+ TOKEN_EVENT = [
13
+ # TODO: Write general description for TOKEN_CREATED
14
+ TOKEN_CREATED = 'token_created'.freeze,
15
+
16
+ # TODO: Write general description for TOKEN_UPDATED
17
+ TOKEN_UPDATED = 'token_updated'.freeze,
18
+
19
+ # TODO: Write general description for TOKEN_THREE_D_S_UPDATED
20
+ TOKEN_THREE_D_S_UPDATED = 'token_three_d_s_updated'.freeze,
21
+
22
+ # TODO: Write general description for TOKEN_CVV_AUTH_UPDATED
23
+ TOKEN_CVV_AUTH_UPDATED = 'token_cvv_auth_updated'.freeze,
24
+
25
+ # TODO: Write general description for TOKEN_CVV_AUTH_CHECK_UPDATED
26
+ TOKEN_CVV_AUTH_CHECK_UPDATED = 'token_cvv_auth_check_updated'.freeze,
27
+
28
+ # TODO: Write general description for TOKEN_REPLACED
29
+ TOKEN_REPLACED = 'token_replaced'.freeze,
30
+
31
+ # TODO: Write general description for RECURRING_TOKEN_DELETED
32
+ RECURRING_TOKEN_DELETED = 'recurring_token_deleted'.freeze
33
+ ].freeze
34
+
35
+ def self.validate(value)
36
+ return false if value.nil?
37
+
38
+ TOKEN_EVENT.include?(value)
39
+ end
40
+
41
+ def self.from_value(value, default_value = TOKEN_CREATED)
42
+ return default_value if value.nil?
43
+
44
+ str = value.to_s.strip
45
+
46
+ case str.downcase
47
+ when 'token_created' then TOKEN_CREATED
48
+ when 'token_updated' then TOKEN_UPDATED
49
+ when 'token_three_d_s_updated' then TOKEN_THREE_D_S_UPDATED
50
+ when 'token_cvv_auth_updated' then TOKEN_CVV_AUTH_UPDATED
51
+ when 'token_cvv_auth_check_updated' then TOKEN_CVV_AUTH_CHECK_UPDATED
52
+ when 'token_replaced' then TOKEN_REPLACED
53
+ when 'recurring_token_deleted' then RECURRING_TOKEN_DELETED
54
+ else
55
+ default_value
56
+ end
57
+ end
58
+ end
59
+ end