univapay-apimatic-sdk 0.0.1

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 (272) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +224 -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 +903 -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 +116 -0
  16. data/lib/univapay_client_sdk/configuration.rb +178 -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_finished_handler.rb +37 -0
  21. data/lib/univapay_client_sdk/events/webhooks/charge_updated_handler.rb +37 -0
  22. data/lib/univapay_client_sdk/events/webhooks/customs_handler.rb +37 -0
  23. data/lib/univapay_client_sdk/events/webhooks/recurring_token_deleted_handler.rb +37 -0
  24. data/lib/univapay_client_sdk/events/webhooks/refund_handler.rb +37 -0
  25. data/lib/univapay_client_sdk/events/webhooks/subscription_canceled_handler.rb +37 -0
  26. data/lib/univapay_client_sdk/events/webhooks/subscription_completed_handler.rb +37 -0
  27. data/lib/univapay_client_sdk/events/webhooks/subscription_created_handler.rb +37 -0
  28. data/lib/univapay_client_sdk/events/webhooks/subscription_failure_handler.rb +37 -0
  29. data/lib/univapay_client_sdk/events/webhooks/subscription_payment_handler.rb +37 -0
  30. data/lib/univapay_client_sdk/events/webhooks/subscription_suspended_handler.rb +37 -0
  31. data/lib/univapay_client_sdk/events/webhooks/token_created_handler.rb +37 -0
  32. data/lib/univapay_client_sdk/events/webhooks/token_cvv_auth_check_updated_handler.rb +37 -0
  33. data/lib/univapay_client_sdk/events/webhooks/token_cvv_auth_updated_handler.rb +37 -0
  34. data/lib/univapay_client_sdk/events/webhooks/token_replaced_handler.rb +37 -0
  35. data/lib/univapay_client_sdk/events/webhooks/token_three_ds_updated_handler.rb +37 -0
  36. data/lib/univapay_client_sdk/events/webhooks/token_updated_handler.rb +37 -0
  37. data/lib/univapay_client_sdk/exceptions/api_error_exception.rb +199 -0
  38. data/lib/univapay_client_sdk/exceptions/api_exception.rb +21 -0
  39. data/lib/univapay_client_sdk/http/api_response.rb +19 -0
  40. data/lib/univapay_client_sdk/http/auth/oauth_2.rb +53 -0
  41. data/lib/univapay_client_sdk/http/http_call_back.rb +10 -0
  42. data/lib/univapay_client_sdk/http/http_method_enum.rb +10 -0
  43. data/lib/univapay_client_sdk/http/http_request.rb +10 -0
  44. data/lib/univapay_client_sdk/http/http_response.rb +10 -0
  45. data/lib/univapay_client_sdk/http/proxy_settings.rb +22 -0
  46. data/lib/univapay_client_sdk/logging/configuration/api_logging_configuration.rb +186 -0
  47. data/lib/univapay_client_sdk/logging/sdk_logger.rb +17 -0
  48. data/lib/univapay_client_sdk/models/api_error_detail.rb +87 -0
  49. data/lib/univapay_client_sdk/models/api_error_status.rb +26 -0
  50. data/lib/univapay_client_sdk/models/bank_transfer_event.rb +27 -0
  51. data/lib/univapay_client_sdk/models/bank_transfer_ledger.rb +199 -0
  52. data/lib/univapay_client_sdk/models/bank_transfer_ledger_bank_ledger_type.rb +36 -0
  53. data/lib/univapay_client_sdk/models/bank_transfer_ledger_list.rb +104 -0
  54. data/lib/univapay_client_sdk/models/bank_transfer_ledger_mode.rb +36 -0
  55. data/lib/univapay_client_sdk/models/bank_transfer_payment_status.rb +44 -0
  56. data/lib/univapay_client_sdk/models/bank_transfer_status_data.rb +229 -0
  57. data/lib/univapay_client_sdk/models/bank_transfer_status_webhook_callback.rb +134 -0
  58. data/lib/univapay_client_sdk/models/bank_transfer_status_webhook_callback_extension.rb +75 -0
  59. data/lib/univapay_client_sdk/models/base_bank_transfer_data.rb +100 -0
  60. data/lib/univapay_client_sdk/models/base_konbini_data.rb +99 -0
  61. data/lib/univapay_client_sdk/models/base_konbini_data_convenience_store.rb +60 -0
  62. data/lib/univapay_client_sdk/models/base_model.rb +110 -0
  63. data/lib/univapay_client_sdk/models/base_online_data.rb +123 -0
  64. data/lib/univapay_client_sdk/models/base_online_data_brand.rb +48 -0
  65. data/lib/univapay_client_sdk/models/base_online_data_call_method.rb +52 -0
  66. data/lib/univapay_client_sdk/models/base_online_data_os_type.rb +36 -0
  67. data/lib/univapay_client_sdk/models/base_online_data_user_identifier_source.rb +36 -0
  68. data/lib/univapay_client_sdk/models/cancel.rb +183 -0
  69. data/lib/univapay_client_sdk/models/cancel_create_request.rb +77 -0
  70. data/lib/univapay_client_sdk/models/cancel_event.rb +26 -0
  71. data/lib/univapay_client_sdk/models/cancel_list.rb +94 -0
  72. data/lib/univapay_client_sdk/models/cancel_status.rb +44 -0
  73. data/lib/univapay_client_sdk/models/cancel_update_request.rb +76 -0
  74. data/lib/univapay_client_sdk/models/cancel_webhook_callback.rb +132 -0
  75. data/lib/univapay_client_sdk/models/cancel_webhook_callback_extension.rb +74 -0
  76. data/lib/univapay_client_sdk/models/card_processor_installment_config.rb +89 -0
  77. data/lib/univapay_client_sdk/models/charge.rb +411 -0
  78. data/lib/univapay_client_sdk/models/charge_capture_request.rb +84 -0
  79. data/lib/univapay_client_sdk/models/charge_create_request.rb +179 -0
  80. data/lib/univapay_client_sdk/models/charge_create_request_client_metadata.rb +76 -0
  81. data/lib/univapay_client_sdk/models/charge_create_request_redirect.rb +75 -0
  82. data/lib/univapay_client_sdk/models/charge_create_request_three_ds.rb +88 -0
  83. data/lib/univapay_client_sdk/models/charge_create_request_three_ds_mode.rb +44 -0
  84. data/lib/univapay_client_sdk/models/charge_finished_webhook_callback.rb +131 -0
  85. data/lib/univapay_client_sdk/models/charge_list.rb +104 -0
  86. data/lib/univapay_client_sdk/models/charge_mode.rb +36 -0
  87. data/lib/univapay_client_sdk/models/charge_redirect.rb +96 -0
  88. data/lib/univapay_client_sdk/models/charge_status.rb +56 -0
  89. data/lib/univapay_client_sdk/models/charge_three_ds.rb +97 -0
  90. data/lib/univapay_client_sdk/models/charge_transaction_token_type.rb +40 -0
  91. data/lib/univapay_client_sdk/models/charge_update_request.rb +75 -0
  92. data/lib/univapay_client_sdk/models/charge_updated_webhook_callback.rb +131 -0
  93. data/lib/univapay_client_sdk/models/cursor_direction_query.rb +36 -0
  94. data/lib/univapay_client_sdk/models/customs_declaration_create_request.rb +106 -0
  95. data/lib/univapay_client_sdk/models/customs_declaration_event.rb +27 -0
  96. data/lib/univapay_client_sdk/models/customs_declaration_patch_request.rb +77 -0
  97. data/lib/univapay_client_sdk/models/customs_declaration_webhook_callback.rb +135 -0
  98. data/lib/univapay_client_sdk/models/customs_declaration_webhook_callback_extension.rb +76 -0
  99. data/lib/univapay_client_sdk/models/customs_declaration_webhook_data.rb +232 -0
  100. data/lib/univapay_client_sdk/models/customs_declaration_webhook_declaration.rb +121 -0
  101. data/lib/univapay_client_sdk/models/customs_declaration_webhook_error.rb +127 -0
  102. data/lib/univapay_client_sdk/models/customs_declaration_webhook_other_error.rb +120 -0
  103. data/lib/univapay_client_sdk/models/customs_declaration_webhook_result.rb +125 -0
  104. data/lib/univapay_client_sdk/models/customs_declaration_webhook_status.rb +44 -0
  105. data/lib/univapay_client_sdk/models/generic_metadata.rb +111 -0
  106. data/lib/univapay_client_sdk/models/installment_fixed_cycles.rb +70 -0
  107. data/lib/univapay_client_sdk/models/installment_plan_type.rb +36 -0
  108. data/lib/univapay_client_sdk/models/issuer_token.rb +177 -0
  109. data/lib/univapay_client_sdk/models/issuer_token_call_method.rb +51 -0
  110. data/lib/univapay_client_sdk/models/issuer_token_payload.rb +105 -0
  111. data/lib/univapay_client_sdk/models/issuer_token_payment_type.rb +36 -0
  112. data/lib/univapay_client_sdk/models/merchant.rb +179 -0
  113. data/lib/univapay_client_sdk/models/merchant_webhook_bank_transfer_configuration.rb +342 -0
  114. data/lib/univapay_client_sdk/models/merchant_webhook_card_brand_percent_fees.rb +167 -0
  115. data/lib/univapay_client_sdk/models/merchant_webhook_card_configuration.rb +301 -0
  116. data/lib/univapay_client_sdk/models/merchant_webhook_checkout_configuration.rb +87 -0
  117. data/lib/univapay_client_sdk/models/merchant_webhook_checkout_toggle.rb +77 -0
  118. data/lib/univapay_client_sdk/models/merchant_webhook_configuration.rb +505 -0
  119. data/lib/univapay_client_sdk/models/merchant_webhook_convenience_configuration.rb +88 -0
  120. data/lib/univapay_client_sdk/models/merchant_webhook_customer_management_configuration.rb +99 -0
  121. data/lib/univapay_client_sdk/models/merchant_webhook_installment_plan_configuration.rb +139 -0
  122. data/lib/univapay_client_sdk/models/merchant_webhook_limit_charge_by_card_configuration.rb +88 -0
  123. data/lib/univapay_client_sdk/models/merchant_webhook_limit_refund_by_sales_configuration.rb +100 -0
  124. data/lib/univapay_client_sdk/models/merchant_webhook_money_amount.rb +85 -0
  125. data/lib/univapay_client_sdk/models/merchant_webhook_online_configuration.rb +77 -0
  126. data/lib/univapay_client_sdk/models/merchant_webhook_paidy_configuration.rb +77 -0
  127. data/lib/univapay_client_sdk/models/merchant_webhook_qr_merchant_configuration.rb +77 -0
  128. data/lib/univapay_client_sdk/models/merchant_webhook_qr_scan_configuration.rb +93 -0
  129. data/lib/univapay_client_sdk/models/merchant_webhook_recurring_cvv_confirmation_config.rb +97 -0
  130. data/lib/univapay_client_sdk/models/merchant_webhook_recurring_token_configuration.rb +109 -0
  131. data/lib/univapay_client_sdk/models/merchant_webhook_security_configuration.rb +234 -0
  132. data/lib/univapay_client_sdk/models/merchant_webhook_subscription_configuration.rb +138 -0
  133. data/lib/univapay_client_sdk/models/merchant_webhook_subscription_plan_configuration.rb +138 -0
  134. data/lib/univapay_client_sdk/models/merchant_webhook_transfer_schedule_configuration.rb +159 -0
  135. data/lib/univapay_client_sdk/models/merchant_webhook_user_transactions_configuration.rb +349 -0
  136. data/lib/univapay_client_sdk/models/mode_query.rb +36 -0
  137. data/lib/univapay_client_sdk/models/payment_error.rb +178 -0
  138. data/lib/univapay_client_sdk/models/plan_settings_type.rb +36 -0
  139. data/lib/univapay_client_sdk/models/recurring_token_deleted_webhook_callback.rb +132 -0
  140. data/lib/univapay_client_sdk/models/refund.rb +240 -0
  141. data/lib/univapay_client_sdk/models/refund_create_request.rb +118 -0
  142. data/lib/univapay_client_sdk/models/refund_event.rb +26 -0
  143. data/lib/univapay_client_sdk/models/refund_list.rb +104 -0
  144. data/lib/univapay_client_sdk/models/refund_reason_request.rb +42 -0
  145. data/lib/univapay_client_sdk/models/refund_reason_response.rb +62 -0
  146. data/lib/univapay_client_sdk/models/refund_status.rb +47 -0
  147. data/lib/univapay_client_sdk/models/refund_update_request.rb +99 -0
  148. data/lib/univapay_client_sdk/models/refund_webhook_callback.rb +132 -0
  149. data/lib/univapay_client_sdk/models/refund_webhook_callback_extension.rb +74 -0
  150. data/lib/univapay_client_sdk/models/restrict_ip_after_failed_charge_config.rb +99 -0
  151. data/lib/univapay_client_sdk/models/store.rb +119 -0
  152. data/lib/univapay_client_sdk/models/store_list.rb +104 -0
  153. data/lib/univapay_client_sdk/models/store_list_item.rb +114 -0
  154. data/lib/univapay_client_sdk/models/subscription.rb +310 -0
  155. data/lib/univapay_client_sdk/models/subscription_canceled_webhook_callback.rb +132 -0
  156. data/lib/univapay_client_sdk/models/subscription_completed_webhook_callback.rb +132 -0
  157. data/lib/univapay_client_sdk/models/subscription_create_request.rb +216 -0
  158. data/lib/univapay_client_sdk/models/subscription_created_webhook_callback.rb +132 -0
  159. data/lib/univapay_client_sdk/models/subscription_failure_webhook_callback.rb +132 -0
  160. data/lib/univapay_client_sdk/models/subscription_installment_plan.rb +86 -0
  161. data/lib/univapay_client_sdk/models/subscription_list.rb +104 -0
  162. data/lib/univapay_client_sdk/models/subscription_list_item.rb +352 -0
  163. data/lib/univapay_client_sdk/models/subscription_next_payment.rb +222 -0
  164. data/lib/univapay_client_sdk/models/subscription_patch_payment_request.rb +117 -0
  165. data/lib/univapay_client_sdk/models/subscription_patch_token_request.rb +79 -0
  166. data/lib/univapay_client_sdk/models/subscription_payment.rb +185 -0
  167. data/lib/univapay_client_sdk/models/subscription_payment_list.rb +94 -0
  168. data/lib/univapay_client_sdk/models/subscription_payment_webhook_callback.rb +132 -0
  169. data/lib/univapay_client_sdk/models/subscription_period.rb +56 -0
  170. data/lib/univapay_client_sdk/models/subscription_plan_settings.rb +98 -0
  171. data/lib/univapay_client_sdk/models/subscription_schedule_settings.rb +132 -0
  172. data/lib/univapay_client_sdk/models/subscription_status.rb +56 -0
  173. data/lib/univapay_client_sdk/models/subscription_suspend_request.rb +79 -0
  174. data/lib/univapay_client_sdk/models/subscription_suspended_webhook_callback.rb +132 -0
  175. data/lib/univapay_client_sdk/models/subscription_terminate_with_status.rb +36 -0
  176. data/lib/univapay_client_sdk/models/subscription_termination_mode.rb +36 -0
  177. data/lib/univapay_client_sdk/models/subscription_update_next_payment.rb +104 -0
  178. data/lib/univapay_client_sdk/models/subscription_update_request.rb +134 -0
  179. data/lib/univapay_client_sdk/models/subscription_update_schedule_settings.rb +110 -0
  180. data/lib/univapay_client_sdk/models/subscription_update_status.rb +37 -0
  181. data/lib/univapay_client_sdk/models/subscription_user_data.rb +134 -0
  182. data/lib/univapay_client_sdk/models/suspend_schedule_settings.rb +78 -0
  183. data/lib/univapay_client_sdk/models/three_ds_issuer_token.rb +116 -0
  184. data/lib/univapay_client_sdk/models/three_ds_issuer_token_call_method.rb +26 -0
  185. data/lib/univapay_client_sdk/models/three_ds_issuer_token_payment_type.rb +26 -0
  186. data/lib/univapay_client_sdk/models/token_create_bank_transfer_data.rb +122 -0
  187. data/lib/univapay_client_sdk/models/token_create_card_data.rb +231 -0
  188. data/lib/univapay_client_sdk/models/token_create_card_data_cvv_authorize.rb +95 -0
  189. data/lib/univapay_client_sdk/models/token_create_card_data_three_ds.rb +97 -0
  190. data/lib/univapay_client_sdk/models/token_create_konbini_data.rb +147 -0
  191. data/lib/univapay_client_sdk/models/token_create_online_data.rb +142 -0
  192. data/lib/univapay_client_sdk/models/token_create_phone_number.rb +104 -0
  193. data/lib/univapay_client_sdk/models/token_created_webhook_callback.rb +131 -0
  194. data/lib/univapay_client_sdk/models/token_cvv_auth_check_updated_webhook_callback.rb +132 -0
  195. data/lib/univapay_client_sdk/models/token_cvv_auth_updated_webhook_callback.rb +132 -0
  196. data/lib/univapay_client_sdk/models/token_replaced_webhook_callback.rb +131 -0
  197. data/lib/univapay_client_sdk/models/token_response_bank_transfer_data.rb +181 -0
  198. data/lib/univapay_client_sdk/models/token_response_card_data.rb +129 -0
  199. data/lib/univapay_client_sdk/models/token_response_card_data_billing.rb +153 -0
  200. data/lib/univapay_client_sdk/models/token_response_card_data_card.rb +187 -0
  201. data/lib/univapay_client_sdk/models/token_response_card_data_cvv_authorize.rb +132 -0
  202. data/lib/univapay_client_sdk/models/token_response_card_data_cvv_authorize_check.rb +118 -0
  203. data/lib/univapay_client_sdk/models/token_response_card_data_three_ds.rb +142 -0
  204. data/lib/univapay_client_sdk/models/token_response_card_data_three_ds_status.rb +48 -0
  205. data/lib/univapay_client_sdk/models/token_response_konbini_data.rb +135 -0
  206. data/lib/univapay_client_sdk/models/token_response_online_data.rb +158 -0
  207. data/lib/univapay_client_sdk/models/token_response_phone_number.rb +96 -0
  208. data/lib/univapay_client_sdk/models/token_three_ds_updated_webhook_callback.rb +132 -0
  209. data/lib/univapay_client_sdk/models/token_updated_webhook_callback.rb +131 -0
  210. data/lib/univapay_client_sdk/models/transaction_token.rb +250 -0
  211. data/lib/univapay_client_sdk/models/transaction_token_create_request.rb +161 -0
  212. data/lib/univapay_client_sdk/models/transaction_token_create_request_metadata.rb +124 -0
  213. data/lib/univapay_client_sdk/models/transaction_token_create_request_payment_type.rb +44 -0
  214. data/lib/univapay_client_sdk/models/transaction_token_create_request_type.rb +40 -0
  215. data/lib/univapay_client_sdk/models/transaction_token_list.rb +104 -0
  216. data/lib/univapay_client_sdk/models/transaction_token_list_item.rb +204 -0
  217. data/lib/univapay_client_sdk/models/transaction_token_list_item_user_data.rb +96 -0
  218. data/lib/univapay_client_sdk/models/transaction_token_mode.rb +36 -0
  219. data/lib/univapay_client_sdk/models/transaction_token_payment_type.rb +48 -0
  220. data/lib/univapay_client_sdk/models/transaction_token_type.rb +40 -0
  221. data/lib/univapay_client_sdk/models/transaction_token_update_request.rb +95 -0
  222. data/lib/univapay_client_sdk/models/transaction_token_update_request_data.rb +184 -0
  223. data/lib/univapay_client_sdk/models/transaction_token_update_request_data_phone_number.rb +86 -0
  224. data/lib/univapay_client_sdk/models/webhook.rb +191 -0
  225. data/lib/univapay_client_sdk/models/webhook_callback_envelope.rb +98 -0
  226. data/lib/univapay_client_sdk/models/webhook_create_request.rb +97 -0
  227. data/lib/univapay_client_sdk/models/webhook_event.rb +166 -0
  228. data/lib/univapay_client_sdk/models/webhook_event_list.rb +94 -0
  229. data/lib/univapay_client_sdk/models/webhook_list.rb +94 -0
  230. data/lib/univapay_client_sdk/models/webhook_trigger.rb +104 -0
  231. data/lib/univapay_client_sdk/models/webhook_update_request.rb +108 -0
  232. data/lib/univapay_client_sdk/utilities/date_time_helper.rb +11 -0
  233. data/lib/univapay_client_sdk/utilities/file_wrapper.rb +28 -0
  234. data/lib/univapay_client_sdk/utilities/union_type_lookup.rb +242 -0
  235. data/lib/univapay_client_sdk.rb +322 -0
  236. data/test/apis/api_test_base.rb +23 -0
  237. data/test/apis/test_cancels_api.rb +162 -0
  238. data/test/apis/test_charges_api.rb +564 -0
  239. data/test/apis/test_merchants_api.rb +50 -0
  240. data/test/apis/test_refunds_api.rb +172 -0
  241. data/test/apis/test_stores_api.rb +86 -0
  242. data/test/apis/test_subscriptions_api.rb +579 -0
  243. data/test/apis/test_transaction_tokens_api.rb +305 -0
  244. data/test/apis/test_webhooks_api.rb +245 -0
  245. data/test/events/webhooks/test_bank_transfer_handler.rb +95 -0
  246. data/test/events/webhooks/test_cancel_handler.rb +90 -0
  247. data/test/events/webhooks/test_charge_finished_handler.rb +95 -0
  248. data/test/events/webhooks/test_charge_updated_handler.rb +95 -0
  249. data/test/events/webhooks/test_customs_handler.rb +100 -0
  250. data/test/events/webhooks/test_recurring_token_deleted_handler.rb +92 -0
  251. data/test/events/webhooks/test_refund_handler.rb +95 -0
  252. data/test/events/webhooks/test_subscription_canceled_handler.rb +101 -0
  253. data/test/events/webhooks/test_subscription_completed_handler.rb +101 -0
  254. data/test/events/webhooks/test_subscription_created_handler.rb +101 -0
  255. data/test/events/webhooks/test_subscription_failure_handler.rb +101 -0
  256. data/test/events/webhooks/test_subscription_payment_handler.rb +101 -0
  257. data/test/events/webhooks/test_subscription_suspended_handler.rb +101 -0
  258. data/test/events/webhooks/test_token_created_handler.rb +92 -0
  259. data/test/events/webhooks/test_token_cvv_auth_check_updated_handler.rb +92 -0
  260. data/test/events/webhooks/test_token_cvv_auth_updated_handler.rb +92 -0
  261. data/test/events/webhooks/test_token_replaced_handler.rb +92 -0
  262. data/test/events/webhooks/test_token_three_ds_updated_handler.rb +92 -0
  263. data/test/events/webhooks/test_token_updated_handler.rb +92 -0
  264. data/test/framework_integrations/rails_app_test_helper.rb +14 -0
  265. data/test/framework_integrations/webhooks/apps/hanami_charge_updated_app.rb +61 -0
  266. data/test/framework_integrations/webhooks/apps/rails_charge_updated_app.rb +24 -0
  267. data/test/framework_integrations/webhooks/apps/sinatra_charge_updated_app.rb +27 -0
  268. data/test/framework_integrations/webhooks/test/test_hanami_charge_updated_app.rb +57 -0
  269. data/test/framework_integrations/webhooks/test/test_rails_charge_updated_app.rb +57 -0
  270. data/test/framework_integrations/webhooks/test/test_sinatra_charge_updated_app.rb +58 -0
  271. data/test/http_response_catcher.rb +19 -0
  272. metadata +397 -0
@@ -0,0 +1,138 @@
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
+ # Subscription feature configuration.
8
+ class MerchantWebhookSubscriptionConfiguration < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Enables subscription payments.
13
+ # @return [TrueClass | FalseClass]
14
+ attr_accessor :enabled
15
+
16
+ # Number of failed charges allowed before cancellation.
17
+ # @return [Integer]
18
+ attr_accessor :failed_charges_to_cancel
19
+
20
+ # Suspends the subscription when its latest charge is canceled.
21
+ # @return [TrueClass | FalseClass]
22
+ attr_accessor :suspend_on_cancel
23
+
24
+ # Allows merchants to update scheduled subscription amounts.
25
+ # @return [TrueClass | FalseClass]
26
+ attr_accessor :allow_merchant_amount_patch
27
+
28
+ # Allows merchants to update scheduled subscription due dates.
29
+ # @return [TrueClass | FalseClass]
30
+ attr_accessor :allow_merchant_due_date_patch
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['enabled'] = 'enabled'
36
+ @_hash['failed_charges_to_cancel'] = 'failed_charges_to_cancel'
37
+ @_hash['suspend_on_cancel'] = 'suspend_on_cancel'
38
+ @_hash['allow_merchant_amount_patch'] = 'allow_merchant_amount_patch'
39
+ @_hash['allow_merchant_due_date_patch'] =
40
+ 'allow_merchant_due_date_patch'
41
+ @_hash
42
+ end
43
+
44
+ # An array for optional fields
45
+ def self.optionals
46
+ %w[
47
+ enabled
48
+ failed_charges_to_cancel
49
+ suspend_on_cancel
50
+ allow_merchant_amount_patch
51
+ allow_merchant_due_date_patch
52
+ ]
53
+ end
54
+
55
+ # An array for nullable fields
56
+ def self.nullables
57
+ %w[
58
+ enabled
59
+ failed_charges_to_cancel
60
+ suspend_on_cancel
61
+ allow_merchant_amount_patch
62
+ allow_merchant_due_date_patch
63
+ ]
64
+ end
65
+
66
+ def initialize(enabled: SKIP, failed_charges_to_cancel: SKIP,
67
+ suspend_on_cancel: SKIP, allow_merchant_amount_patch: SKIP,
68
+ allow_merchant_due_date_patch: SKIP,
69
+ additional_properties: nil)
70
+ # Add additional model properties to the instance
71
+ additional_properties = {} if additional_properties.nil?
72
+
73
+ @enabled = enabled unless enabled == SKIP
74
+ @failed_charges_to_cancel = failed_charges_to_cancel unless failed_charges_to_cancel == SKIP
75
+ @suspend_on_cancel = suspend_on_cancel unless suspend_on_cancel == SKIP
76
+ unless allow_merchant_amount_patch == SKIP
77
+ @allow_merchant_amount_patch =
78
+ allow_merchant_amount_patch
79
+ end
80
+ unless allow_merchant_due_date_patch == SKIP
81
+ @allow_merchant_due_date_patch =
82
+ allow_merchant_due_date_patch
83
+ end
84
+ @additional_properties = additional_properties
85
+ end
86
+
87
+ # Creates an instance of the object from a hash.
88
+ def self.from_hash(hash)
89
+ return nil unless hash
90
+
91
+ # Extract variables from the hash.
92
+ enabled = hash.key?('enabled') ? hash['enabled'] : SKIP
93
+ failed_charges_to_cancel =
94
+ hash.key?('failed_charges_to_cancel') ? hash['failed_charges_to_cancel'] : SKIP
95
+ suspend_on_cancel =
96
+ hash.key?('suspend_on_cancel') ? hash['suspend_on_cancel'] : SKIP
97
+ allow_merchant_amount_patch =
98
+ hash.key?('allow_merchant_amount_patch') ? hash['allow_merchant_amount_patch'] : SKIP
99
+ allow_merchant_due_date_patch =
100
+ hash.key?('allow_merchant_due_date_patch') ? hash['allow_merchant_due_date_patch'] : SKIP
101
+
102
+ # Create a new hash for additional properties, removing known properties.
103
+ new_hash = hash.reject { |k, _| names.value?(k) }
104
+
105
+ additional_properties = APIHelper.get_additional_properties(
106
+ new_hash, proc { |value| value }
107
+ )
108
+
109
+ # Create object from extracted values.
110
+ MerchantWebhookSubscriptionConfiguration.new(enabled: enabled,
111
+ failed_charges_to_cancel: failed_charges_to_cancel,
112
+ suspend_on_cancel: suspend_on_cancel,
113
+ allow_merchant_amount_patch: allow_merchant_amount_patch,
114
+ allow_merchant_due_date_patch: allow_merchant_due_date_patch,
115
+ additional_properties: additional_properties)
116
+ end
117
+
118
+ # Provides a human-readable string representation of the object.
119
+ def to_s
120
+ class_name = self.class.name.split('::').last
121
+ "<#{class_name} enabled: #{@enabled}, failed_charges_to_cancel:"\
122
+ " #{@failed_charges_to_cancel}, suspend_on_cancel: #{@suspend_on_cancel},"\
123
+ " allow_merchant_amount_patch: #{@allow_merchant_amount_patch},"\
124
+ " allow_merchant_due_date_patch: #{@allow_merchant_due_date_patch}, additional_properties:"\
125
+ " #{@additional_properties}>"
126
+ end
127
+
128
+ # Provides a debugging-friendly string with detailed object information.
129
+ def inspect
130
+ class_name = self.class.name.split('::').last
131
+ "<#{class_name} enabled: #{@enabled.inspect}, failed_charges_to_cancel:"\
132
+ " #{@failed_charges_to_cancel.inspect}, suspend_on_cancel: #{@suspend_on_cancel.inspect},"\
133
+ " allow_merchant_amount_patch: #{@allow_merchant_amount_patch.inspect},"\
134
+ " allow_merchant_due_date_patch: #{@allow_merchant_due_date_patch.inspect},"\
135
+ " additional_properties: #{@additional_properties}>"
136
+ end
137
+ end
138
+ end
@@ -0,0 +1,138 @@
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
+ # Subscription plan configuration.
8
+ class MerchantWebhookSubscriptionPlanConfiguration < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Enables limited-cycle subscription plans.
13
+ # @return [TrueClass | FalseClass]
14
+ attr_accessor :enabled
15
+
16
+ # Allows plans limited by a fixed number of cycles.
17
+ # @return [TrueClass | FalseClass]
18
+ attr_accessor :fixed_cycle
19
+
20
+ # Allows plans limited by a total target amount.
21
+ # @return [TrueClass | FalseClass]
22
+ attr_accessor :fixed_cycle_amount
23
+
24
+ # Payment types that can use subscription plans.
25
+ # @return [Array[String]]
26
+ attr_accessor :supported_payment_types
27
+
28
+ # Monetary amount object serialized by backend config models.
29
+ # @return [MerchantWebhookMoneyAmount]
30
+ attr_accessor :min_charge_amount
31
+
32
+ # Maximum payout delay allowed for subscription plan settlements.
33
+ # @return [String]
34
+ attr_accessor :max_payout_period
35
+
36
+ # A mapping from model property names to API property names.
37
+ def self.names
38
+ @_hash = {} if @_hash.nil?
39
+ @_hash['enabled'] = 'enabled'
40
+ @_hash['fixed_cycle'] = 'fixed_cycle'
41
+ @_hash['fixed_cycle_amount'] = 'fixed_cycle_amount'
42
+ @_hash['supported_payment_types'] = 'supported_payment_types'
43
+ @_hash['min_charge_amount'] = 'min_charge_amount'
44
+ @_hash['max_payout_period'] = 'max_payout_period'
45
+ @_hash
46
+ end
47
+
48
+ # An array for optional fields
49
+ def self.optionals
50
+ %w[
51
+ enabled
52
+ fixed_cycle
53
+ fixed_cycle_amount
54
+ supported_payment_types
55
+ min_charge_amount
56
+ max_payout_period
57
+ ]
58
+ end
59
+
60
+ # An array for nullable fields
61
+ def self.nullables
62
+ %w[
63
+ enabled
64
+ fixed_cycle
65
+ fixed_cycle_amount
66
+ supported_payment_types
67
+ max_payout_period
68
+ ]
69
+ end
70
+
71
+ def initialize(enabled: SKIP, fixed_cycle: SKIP, fixed_cycle_amount: SKIP,
72
+ supported_payment_types: SKIP, min_charge_amount: SKIP,
73
+ max_payout_period: SKIP, additional_properties: nil)
74
+ # Add additional model properties to the instance
75
+ additional_properties = {} if additional_properties.nil?
76
+
77
+ @enabled = enabled unless enabled == SKIP
78
+ @fixed_cycle = fixed_cycle unless fixed_cycle == SKIP
79
+ @fixed_cycle_amount = fixed_cycle_amount unless fixed_cycle_amount == SKIP
80
+ @supported_payment_types = supported_payment_types unless supported_payment_types == SKIP
81
+ @min_charge_amount = min_charge_amount unless min_charge_amount == SKIP
82
+ @max_payout_period = max_payout_period unless max_payout_period == SKIP
83
+ @additional_properties = additional_properties
84
+ end
85
+
86
+ # Creates an instance of the object from a hash.
87
+ def self.from_hash(hash)
88
+ return nil unless hash
89
+
90
+ # Extract variables from the hash.
91
+ enabled = hash.key?('enabled') ? hash['enabled'] : SKIP
92
+ fixed_cycle = hash.key?('fixed_cycle') ? hash['fixed_cycle'] : SKIP
93
+ fixed_cycle_amount =
94
+ hash.key?('fixed_cycle_amount') ? hash['fixed_cycle_amount'] : SKIP
95
+ supported_payment_types =
96
+ hash.key?('supported_payment_types') ? hash['supported_payment_types'] : SKIP
97
+ min_charge_amount = MerchantWebhookMoneyAmount.from_hash(hash['min_charge_amount']) if
98
+ hash['min_charge_amount']
99
+ max_payout_period =
100
+ hash.key?('max_payout_period') ? hash['max_payout_period'] : SKIP
101
+
102
+ # Create a new hash for additional properties, removing known properties.
103
+ new_hash = hash.reject { |k, _| names.value?(k) }
104
+
105
+ additional_properties = APIHelper.get_additional_properties(
106
+ new_hash, proc { |value| value }
107
+ )
108
+
109
+ # Create object from extracted values.
110
+ MerchantWebhookSubscriptionPlanConfiguration.new(enabled: enabled,
111
+ fixed_cycle: fixed_cycle,
112
+ fixed_cycle_amount: fixed_cycle_amount,
113
+ supported_payment_types: supported_payment_types,
114
+ min_charge_amount: min_charge_amount,
115
+ max_payout_period: max_payout_period,
116
+ additional_properties: additional_properties)
117
+ end
118
+
119
+ # Provides a human-readable string representation of the object.
120
+ def to_s
121
+ class_name = self.class.name.split('::').last
122
+ "<#{class_name} enabled: #{@enabled}, fixed_cycle: #{@fixed_cycle}, fixed_cycle_amount:"\
123
+ " #{@fixed_cycle_amount}, supported_payment_types: #{@supported_payment_types},"\
124
+ " min_charge_amount: #{@min_charge_amount}, max_payout_period: #{@max_payout_period},"\
125
+ " additional_properties: #{@additional_properties}>"
126
+ end
127
+
128
+ # Provides a debugging-friendly string with detailed object information.
129
+ def inspect
130
+ class_name = self.class.name.split('::').last
131
+ "<#{class_name} enabled: #{@enabled.inspect}, fixed_cycle: #{@fixed_cycle.inspect},"\
132
+ " fixed_cycle_amount: #{@fixed_cycle_amount.inspect}, supported_payment_types:"\
133
+ " #{@supported_payment_types.inspect}, min_charge_amount: #{@min_charge_amount.inspect},"\
134
+ " max_payout_period: #{@max_payout_period.inspect}, additional_properties:"\
135
+ " #{@additional_properties}>"
136
+ end
137
+ end
138
+ end
@@ -0,0 +1,159 @@
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
+ # Transfer schedule configuration inherited by the merchant.
8
+ class MerchantWebhookTransferScheduleConfiguration < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # ISO-8601 period before charges become payable.
13
+ # @return [String]
14
+ attr_accessor :wait_period
15
+
16
+ # Transfer period selected for payouts.
17
+ # @return [String]
18
+ attr_accessor :period
19
+
20
+ # Whether the first transfer period must be fully completed.
21
+ # @return [TrueClass | FalseClass]
22
+ attr_accessor :full_period_required
23
+
24
+ # Payout day of week when using weekly schedules.
25
+ # @return [String]
26
+ attr_accessor :day_of_week
27
+
28
+ # Week of month used by monthly schedules.
29
+ # @return [Integer]
30
+ attr_accessor :week_of_month
31
+
32
+ # Day of month used by monthly schedules.
33
+ # @return [Integer]
34
+ attr_accessor :day_of_month
35
+
36
+ # Weekly closing day for balance aggregation.
37
+ # @return [String]
38
+ attr_accessor :weekly_closing_day
39
+
40
+ # Weekly payout day.
41
+ # @return [String]
42
+ attr_accessor :weekly_payout_day
43
+
44
+ # A mapping from model property names to API property names.
45
+ def self.names
46
+ @_hash = {} if @_hash.nil?
47
+ @_hash['wait_period'] = 'wait_period'
48
+ @_hash['period'] = 'period'
49
+ @_hash['full_period_required'] = 'full_period_required'
50
+ @_hash['day_of_week'] = 'day_of_week'
51
+ @_hash['week_of_month'] = 'week_of_month'
52
+ @_hash['day_of_month'] = 'day_of_month'
53
+ @_hash['weekly_closing_day'] = 'weekly_closing_day'
54
+ @_hash['weekly_payout_day'] = 'weekly_payout_day'
55
+ @_hash
56
+ end
57
+
58
+ # An array for optional fields
59
+ def self.optionals
60
+ %w[
61
+ wait_period
62
+ period
63
+ full_period_required
64
+ day_of_week
65
+ week_of_month
66
+ day_of_month
67
+ weekly_closing_day
68
+ weekly_payout_day
69
+ ]
70
+ end
71
+
72
+ # An array for nullable fields
73
+ def self.nullables
74
+ %w[
75
+ full_period_required
76
+ day_of_week
77
+ week_of_month
78
+ day_of_month
79
+ weekly_closing_day
80
+ weekly_payout_day
81
+ ]
82
+ end
83
+
84
+ def initialize(wait_period: SKIP, period: SKIP, full_period_required: SKIP,
85
+ day_of_week: SKIP, week_of_month: SKIP, day_of_month: SKIP,
86
+ weekly_closing_day: SKIP, weekly_payout_day: SKIP,
87
+ additional_properties: nil)
88
+ # Add additional model properties to the instance
89
+ additional_properties = {} if additional_properties.nil?
90
+
91
+ @wait_period = wait_period unless wait_period == SKIP
92
+ @period = period unless period == SKIP
93
+ @full_period_required = full_period_required unless full_period_required == SKIP
94
+ @day_of_week = day_of_week unless day_of_week == SKIP
95
+ @week_of_month = week_of_month unless week_of_month == SKIP
96
+ @day_of_month = day_of_month unless day_of_month == SKIP
97
+ @weekly_closing_day = weekly_closing_day unless weekly_closing_day == SKIP
98
+ @weekly_payout_day = weekly_payout_day unless weekly_payout_day == SKIP
99
+ @additional_properties = additional_properties
100
+ end
101
+
102
+ # Creates an instance of the object from a hash.
103
+ def self.from_hash(hash)
104
+ return nil unless hash
105
+
106
+ # Extract variables from the hash.
107
+ wait_period = hash.key?('wait_period') ? hash['wait_period'] : SKIP
108
+ period = hash.key?('period') ? hash['period'] : SKIP
109
+ full_period_required =
110
+ hash.key?('full_period_required') ? hash['full_period_required'] : SKIP
111
+ day_of_week = hash.key?('day_of_week') ? hash['day_of_week'] : SKIP
112
+ week_of_month = hash.key?('week_of_month') ? hash['week_of_month'] : SKIP
113
+ day_of_month = hash.key?('day_of_month') ? hash['day_of_month'] : SKIP
114
+ weekly_closing_day =
115
+ hash.key?('weekly_closing_day') ? hash['weekly_closing_day'] : SKIP
116
+ weekly_payout_day =
117
+ hash.key?('weekly_payout_day') ? hash['weekly_payout_day'] : SKIP
118
+
119
+ # Create a new hash for additional properties, removing known properties.
120
+ new_hash = hash.reject { |k, _| names.value?(k) }
121
+
122
+ additional_properties = APIHelper.get_additional_properties(
123
+ new_hash, proc { |value| value }
124
+ )
125
+
126
+ # Create object from extracted values.
127
+ MerchantWebhookTransferScheduleConfiguration.new(wait_period: wait_period,
128
+ period: period,
129
+ full_period_required: full_period_required,
130
+ day_of_week: day_of_week,
131
+ week_of_month: week_of_month,
132
+ day_of_month: day_of_month,
133
+ weekly_closing_day: weekly_closing_day,
134
+ weekly_payout_day: weekly_payout_day,
135
+ additional_properties: additional_properties)
136
+ end
137
+
138
+ # Provides a human-readable string representation of the object.
139
+ def to_s
140
+ class_name = self.class.name.split('::').last
141
+ "<#{class_name} wait_period: #{@wait_period}, period: #{@period}, full_period_required:"\
142
+ " #{@full_period_required}, day_of_week: #{@day_of_week}, week_of_month: #{@week_of_month},"\
143
+ " day_of_month: #{@day_of_month}, weekly_closing_day: #{@weekly_closing_day},"\
144
+ " weekly_payout_day: #{@weekly_payout_day}, additional_properties:"\
145
+ " #{@additional_properties}>"
146
+ end
147
+
148
+ # Provides a debugging-friendly string with detailed object information.
149
+ def inspect
150
+ class_name = self.class.name.split('::').last
151
+ "<#{class_name} wait_period: #{@wait_period.inspect}, period: #{@period.inspect},"\
152
+ " full_period_required: #{@full_period_required.inspect}, day_of_week:"\
153
+ " #{@day_of_week.inspect}, week_of_month: #{@week_of_month.inspect}, day_of_month:"\
154
+ " #{@day_of_month.inspect}, weekly_closing_day: #{@weekly_closing_day.inspect},"\
155
+ " weekly_payout_day: #{@weekly_payout_day.inspect}, additional_properties:"\
156
+ " #{@additional_properties}>"
157
+ end
158
+ end
159
+ end