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,90 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+
7
+ require 'json'
8
+ require 'rack'
9
+ require 'stringio'
10
+ require 'minitest/autorun'
11
+ require 'minitest/hell'
12
+ require 'minitest/pride'
13
+ require 'minitest/proveit'
14
+ require 'univapay_client_sdk'
15
+ class TestCancelHandler < Minitest::Test
16
+ parallelize_me!
17
+ include UnivapayClientSdk
18
+ include CoreLibrary
19
+
20
+ def setup
21
+ @handler = CancelHandler.new
22
+ end
23
+
24
+ def json_bytes(obj)
25
+ JSON.generate(obj).encode('utf-8')
26
+ end
27
+
28
+ def make_request(body_obj, add_signature_header: true)
29
+ raw = json_bytes(body_obj)
30
+ env = {
31
+ 'REQUEST_METHOD' => 'POST',
32
+ 'PATH_INFO' => '/webhooks',
33
+ 'rack.input' => StringIO.new(raw),
34
+ 'CONTENT_TYPE' => 'application/json'
35
+ }
36
+ Rack::Request.new(env)
37
+ end
38
+
39
+
40
+ def test_cancel_finished_from_cancel_handler
41
+ # Tests the `cancelFinished` event from cancelHandler.
42
+ # arrange
43
+ event_payload = {
44
+ :id => "11ef0000-0000-4000-8000-000000000001",
45
+ :event => "cancel_finished",
46
+ :data => {
47
+ :id => "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
48
+ :charge_id => "6efb4e5c-690a-40f3-a4f1-0e19c5f84e98",
49
+ :store_id => "76cf4a64-02bc-4cb3-9a28-74622e5928a1",
50
+ :status => "successful",
51
+ :error => nil,
52
+ :metadata => {
53
+ :order_id => "order_12345"
54
+ },
55
+ :mode => "live",
56
+ :created_on => "2026-04-09T07:35:50.000000Z",
57
+ :updated_on => "2026-04-09T07:36:00.000000Z",
58
+ :exampleAdditionalProperty => {
59
+ :key1 => "val1",
60
+ :key2 => "val2"
61
+ }
62
+ },
63
+ :created_on => "2026-04-09T07:35:50.000000Z",
64
+ :exampleAdditionalProperty => {
65
+ :key1 => "val1",
66
+ :key2 => "val2"
67
+ }
68
+ }
69
+ rack_req = make_request(event_payload)
70
+
71
+ # act
72
+ event = @handler.parse_event(rack_req)
73
+
74
+ # assert
75
+ assert event.is_a?(CancelWebhookCallback) && event.event == 'cancel_finished'
76
+ end
77
+
78
+ def test_unknown_event
79
+ # arrange
80
+ event_payload = 45.0
81
+ rake_req = make_request(event_payload)
82
+
83
+ # act
84
+ event = @handler.parse_event(rake_req)
85
+
86
+ # assert
87
+ assert event.is_a?(UnknownEvent)
88
+ end
89
+
90
+ end
@@ -0,0 +1,95 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+
7
+ require 'json'
8
+ require 'rack'
9
+ require 'stringio'
10
+ require 'minitest/autorun'
11
+ require 'minitest/hell'
12
+ require 'minitest/pride'
13
+ require 'minitest/proveit'
14
+ require 'univapay_client_sdk'
15
+ class TestChargeFinishedHandler < Minitest::Test
16
+ parallelize_me!
17
+ include UnivapayClientSdk
18
+ include CoreLibrary
19
+
20
+ def setup
21
+ @handler = ChargeFinishedHandler.new
22
+ end
23
+
24
+ def json_bytes(obj)
25
+ JSON.generate(obj).encode('utf-8')
26
+ end
27
+
28
+ def make_request(body_obj, add_signature_header: true)
29
+ raw = json_bytes(body_obj)
30
+ env = {
31
+ 'REQUEST_METHOD' => 'POST',
32
+ 'PATH_INFO' => '/webhooks',
33
+ 'rack.input' => StringIO.new(raw),
34
+ 'CONTENT_TYPE' => 'application/json'
35
+ }
36
+ Rack::Request.new(env)
37
+ end
38
+
39
+
40
+ def test_charge_finished_from_charge_finished_handler
41
+ # Tests the `chargeFinished` event from chargeFinishedHandler.
42
+ # arrange
43
+ event_payload = {
44
+ :id => "11ef0000-0000-4000-8000-000000000001",
45
+ :event => "charge_finished",
46
+ :data => {
47
+ :id => "6efb4e5c-690a-40f3-a4f1-0e19c5f84e98",
48
+ :store_id => "11edf541-c42d-653c-8c3d-dfe0a55f95c0",
49
+ :transaction_token_id => "11ef32a7-3a71-8662-803f-1bc27702eeec",
50
+ :transaction_token_type => "recurring",
51
+ :subscription_id => "11ef335e-9aa5-c54a-8313-7f9847da313a",
52
+ :requested_amount => 1250,
53
+ :requested_currency => "USD",
54
+ :requested_amount_formatted => 12.5,
55
+ :charged_amount => 1250,
56
+ :charged_currency => "USD",
57
+ :charged_amount_formatted => 12.5,
58
+ :only_direct_currency => false,
59
+ :status => "successful",
60
+ :error => nil,
61
+ :mode => "test",
62
+ :created_on => "2024-06-26T01:51:30.000000Z",
63
+ :exampleAdditionalProperty => {
64
+ :key1 => "val1",
65
+ :key2 => "val2"
66
+ }
67
+ },
68
+ :created_on => "2026-04-09T07:35:50.000000Z",
69
+ :exampleAdditionalProperty => {
70
+ :key1 => "val1",
71
+ :key2 => "val2"
72
+ }
73
+ }
74
+ rack_req = make_request(event_payload)
75
+
76
+ # act
77
+ event = @handler.parse_event(rack_req)
78
+
79
+ # assert
80
+ assert event.is_a?(ChargeFinishedWebhookCallback) && event.event == 'charge_finished'
81
+ end
82
+
83
+ def test_unknown_event
84
+ # arrange
85
+ event_payload = 45.0
86
+ rake_req = make_request(event_payload)
87
+
88
+ # act
89
+ event = @handler.parse_event(rake_req)
90
+
91
+ # assert
92
+ assert event.is_a?(UnknownEvent)
93
+ end
94
+
95
+ end
@@ -0,0 +1,95 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+
7
+ require 'json'
8
+ require 'rack'
9
+ require 'stringio'
10
+ require 'minitest/autorun'
11
+ require 'minitest/hell'
12
+ require 'minitest/pride'
13
+ require 'minitest/proveit'
14
+ require 'univapay_client_sdk'
15
+ class TestChargeUpdatedHandler < Minitest::Test
16
+ parallelize_me!
17
+ include UnivapayClientSdk
18
+ include CoreLibrary
19
+
20
+ def setup
21
+ @handler = ChargeUpdatedHandler.new
22
+ end
23
+
24
+ def json_bytes(obj)
25
+ JSON.generate(obj).encode('utf-8')
26
+ end
27
+
28
+ def make_request(body_obj, add_signature_header: true)
29
+ raw = json_bytes(body_obj)
30
+ env = {
31
+ 'REQUEST_METHOD' => 'POST',
32
+ 'PATH_INFO' => '/webhooks',
33
+ 'rack.input' => StringIO.new(raw),
34
+ 'CONTENT_TYPE' => 'application/json'
35
+ }
36
+ Rack::Request.new(env)
37
+ end
38
+
39
+
40
+ def test_charge_updated_from_charge_updated_handler
41
+ # Tests the `chargeUpdated` event from chargeUpdatedHandler.
42
+ # arrange
43
+ event_payload = {
44
+ :id => "11ef0000-0000-4000-8000-000000000001",
45
+ :event => "charge_updated",
46
+ :data => {
47
+ :id => "6efb4e5c-690a-40f3-a4f1-0e19c5f84e98",
48
+ :store_id => "11edf541-c42d-653c-8c3d-dfe0a55f95c0",
49
+ :transaction_token_id => "11ef32a7-3a71-8662-803f-1bc27702eeec",
50
+ :transaction_token_type => "recurring",
51
+ :subscription_id => "11ef335e-9aa5-c54a-8313-7f9847da313a",
52
+ :requested_amount => 1250,
53
+ :requested_currency => "USD",
54
+ :requested_amount_formatted => 12.5,
55
+ :charged_amount => 1250,
56
+ :charged_currency => "USD",
57
+ :charged_amount_formatted => 12.5,
58
+ :only_direct_currency => false,
59
+ :status => "successful",
60
+ :error => nil,
61
+ :mode => "test",
62
+ :created_on => "2024-06-26T01:51:30.000000Z",
63
+ :exampleAdditionalProperty => {
64
+ :key1 => "val1",
65
+ :key2 => "val2"
66
+ }
67
+ },
68
+ :created_on => "2026-04-09T07:35:50.000000Z",
69
+ :exampleAdditionalProperty => {
70
+ :key1 => "val1",
71
+ :key2 => "val2"
72
+ }
73
+ }
74
+ rack_req = make_request(event_payload)
75
+
76
+ # act
77
+ event = @handler.parse_event(rack_req)
78
+
79
+ # assert
80
+ assert event.is_a?(ChargeUpdatedWebhookCallback) && event.event == 'charge_updated'
81
+ end
82
+
83
+ def test_unknown_event
84
+ # arrange
85
+ event_payload = 45.0
86
+ rake_req = make_request(event_payload)
87
+
88
+ # act
89
+ event = @handler.parse_event(rake_req)
90
+
91
+ # assert
92
+ assert event.is_a?(UnknownEvent)
93
+ end
94
+
95
+ end
@@ -0,0 +1,100 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+
7
+ require 'json'
8
+ require 'rack'
9
+ require 'stringio'
10
+ require 'minitest/autorun'
11
+ require 'minitest/hell'
12
+ require 'minitest/pride'
13
+ require 'minitest/proveit'
14
+ require 'univapay_client_sdk'
15
+ class TestCustomsHandler < Minitest::Test
16
+ parallelize_me!
17
+ include UnivapayClientSdk
18
+ include CoreLibrary
19
+
20
+ def setup
21
+ @handler = CustomsHandler.new
22
+ end
23
+
24
+ def json_bytes(obj)
25
+ JSON.generate(obj).encode('utf-8')
26
+ end
27
+
28
+ def make_request(body_obj, add_signature_header: true)
29
+ raw = json_bytes(body_obj)
30
+ env = {
31
+ 'REQUEST_METHOD' => 'POST',
32
+ 'PATH_INFO' => '/webhooks',
33
+ 'rack.input' => StringIO.new(raw),
34
+ 'CONTENT_TYPE' => 'application/json'
35
+ }
36
+ Rack::Request.new(env)
37
+ end
38
+
39
+
40
+ def test_customs_declaration_finished_from_customs_handler
41
+ # Tests the `customsDeclarationFinished` event from customsHandler.
42
+ # arrange
43
+ event_payload = {
44
+ :id => "11ef0000-0000-4000-8000-000000000001",
45
+ :event => "customs_declaration_finished",
46
+ :data => {
47
+ :id => "11ef0000-0000-4000-8000-000000000040",
48
+ :charge_id => "11ef0000-0000-4000-8000-000000000001",
49
+ :merchant_id => "11ef0000-0000-4000-8000-000000000020",
50
+ :store_id => "11ef0000-0000-4000-8000-000000000022",
51
+ :mode => "test",
52
+ :gateway => "wechat_online",
53
+ :declaration => {
54
+ :customs => "TOKYO",
55
+ :merchant_customs_no => "1234567890",
56
+ :certificate_id => "AB1234567",
57
+ :certificate_name => "TARO YAMADA"
58
+ },
59
+ :declaration_result => {
60
+ :approving_authority => "TOKYO",
61
+ :trade_id => "wx_trade_12345",
62
+ :transaction_id => "wx_txn_12345",
63
+ :charge_transaction_id => "wx_charge_12345"
64
+ },
65
+ :status => "successful",
66
+ :created_on => "2026-04-09T07:35:50.000000Z",
67
+ :platform_id => "00000550-0000-0000-0000-000000000000",
68
+ :exampleAdditionalProperty => {
69
+ :key1 => "val1",
70
+ :key2 => "val2"
71
+ }
72
+ },
73
+ :created_on => "2026-04-09T07:35:50.000000Z",
74
+ :exampleAdditionalProperty => {
75
+ :key1 => "val1",
76
+ :key2 => "val2"
77
+ }
78
+ }
79
+ rack_req = make_request(event_payload)
80
+
81
+ # act
82
+ event = @handler.parse_event(rack_req)
83
+
84
+ # assert
85
+ assert event.is_a?(CustomsDeclarationWebhookCallback) && event.event == 'customs_declaration_finished'
86
+ end
87
+
88
+ def test_unknown_event
89
+ # arrange
90
+ event_payload = 45.0
91
+ rake_req = make_request(event_payload)
92
+
93
+ # act
94
+ event = @handler.parse_event(rake_req)
95
+
96
+ # assert
97
+ assert event.is_a?(UnknownEvent)
98
+ end
99
+
100
+ end
@@ -0,0 +1,92 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+
7
+ require 'json'
8
+ require 'rack'
9
+ require 'stringio'
10
+ require 'minitest/autorun'
11
+ require 'minitest/hell'
12
+ require 'minitest/pride'
13
+ require 'minitest/proveit'
14
+ require 'univapay_client_sdk'
15
+ class TestRecurringTokenDeletedHandler < Minitest::Test
16
+ parallelize_me!
17
+ include UnivapayClientSdk
18
+ include CoreLibrary
19
+
20
+ def setup
21
+ @handler = RecurringTokenDeletedHandler.new
22
+ end
23
+
24
+ def json_bytes(obj)
25
+ JSON.generate(obj).encode('utf-8')
26
+ end
27
+
28
+ def make_request(body_obj, add_signature_header: true)
29
+ raw = json_bytes(body_obj)
30
+ env = {
31
+ 'REQUEST_METHOD' => 'POST',
32
+ 'PATH_INFO' => '/webhooks',
33
+ 'rack.input' => StringIO.new(raw),
34
+ 'CONTENT_TYPE' => 'application/json'
35
+ }
36
+ Rack::Request.new(env)
37
+ end
38
+
39
+
40
+ def test_recurring_token_deleted_from_recurring_token_deleted_handler
41
+ # Tests the `recurringTokenDeleted` event from recurringTokenDeletedHandler.
42
+ # arrange
43
+ event_payload = {
44
+ :id => "11ef0000-0000-4000-8000-000000000001",
45
+ :event => "recurring_token_deleted",
46
+ :data => {
47
+ :id => "6426bbd2-17bd-41bf-883b-1fe970db48ee",
48
+ :store_id => "fc264608-9a9e-495e-844e-a08129a81af4",
49
+ :email => "test@univapay.com",
50
+ :payment_type => "card",
51
+ :active => true,
52
+ :mode => "live",
53
+ :type => "recurring",
54
+ :confirmed => true,
55
+ :metadata => {
56
+ :customer_id => "cust_12345"
57
+ },
58
+ :created_on => "2026-04-09T07:35:50.000000Z",
59
+ :updated_on => "2026-04-09T07:35:50.000000Z",
60
+ :exampleAdditionalProperty => {
61
+ :key1 => "val1",
62
+ :key2 => "val2"
63
+ }
64
+ },
65
+ :created_on => "2026-04-09T07:35:50.000000Z",
66
+ :exampleAdditionalProperty => {
67
+ :key1 => "val1",
68
+ :key2 => "val2"
69
+ }
70
+ }
71
+ rack_req = make_request(event_payload)
72
+
73
+ # act
74
+ event = @handler.parse_event(rack_req)
75
+
76
+ # assert
77
+ assert event.is_a?(RecurringTokenDeletedWebhookCallback) && event.event == 'recurring_token_deleted'
78
+ end
79
+
80
+ def test_unknown_event
81
+ # arrange
82
+ event_payload = 45.0
83
+ rake_req = make_request(event_payload)
84
+
85
+ # act
86
+ event = @handler.parse_event(rake_req)
87
+
88
+ # assert
89
+ assert event.is_a?(UnknownEvent)
90
+ end
91
+
92
+ end
@@ -0,0 +1,95 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+
7
+ require 'json'
8
+ require 'rack'
9
+ require 'stringio'
10
+ require 'minitest/autorun'
11
+ require 'minitest/hell'
12
+ require 'minitest/pride'
13
+ require 'minitest/proveit'
14
+ require 'univapay_client_sdk'
15
+ class TestRefundHandler < Minitest::Test
16
+ parallelize_me!
17
+ include UnivapayClientSdk
18
+ include CoreLibrary
19
+
20
+ def setup
21
+ @handler = RefundHandler.new
22
+ end
23
+
24
+ def json_bytes(obj)
25
+ JSON.generate(obj).encode('utf-8')
26
+ end
27
+
28
+ def make_request(body_obj, add_signature_header: true)
29
+ raw = json_bytes(body_obj)
30
+ env = {
31
+ 'REQUEST_METHOD' => 'POST',
32
+ 'PATH_INFO' => '/webhooks',
33
+ 'rack.input' => StringIO.new(raw),
34
+ 'CONTENT_TYPE' => 'application/json'
35
+ }
36
+ Rack::Request.new(env)
37
+ end
38
+
39
+
40
+ def test_refund_finished_from_refund_handler
41
+ # Tests the `refundFinished` event from refundHandler.
42
+ # arrange
43
+ event_payload = {
44
+ :id => "11ef0000-0000-4000-8000-000000000001",
45
+ :event => "refund_finished",
46
+ :data => {
47
+ :id => "b4d9fea9-c9b3-4e76-a25d-b61f7e4821b6",
48
+ :store_id => "76cf4a64-02bc-4cb3-9a28-74622e5928a1",
49
+ :charge_id => "6efb4e5c-690a-40f3-a4f1-0e19c5f84e98",
50
+ :status => "successful",
51
+ :amount => 1000,
52
+ :currency => "JPY",
53
+ :amount_formatted => 1000,
54
+ :reason => "customer_request",
55
+ :message => "Customer returned item",
56
+ :error => nil,
57
+ :metadata => {
58
+ :order_id => "order_12345"
59
+ },
60
+ :mode => "live",
61
+ :created_on => "2026-04-09T07:35:50.000000Z",
62
+ :updated_on => "2026-04-09T07:36:00.000000Z",
63
+ :exampleAdditionalProperty => {
64
+ :key1 => "val1",
65
+ :key2 => "val2"
66
+ }
67
+ },
68
+ :created_on => "2026-04-09T07:35:50.000000Z",
69
+ :exampleAdditionalProperty => {
70
+ :key1 => "val1",
71
+ :key2 => "val2"
72
+ }
73
+ }
74
+ rack_req = make_request(event_payload)
75
+
76
+ # act
77
+ event = @handler.parse_event(rack_req)
78
+
79
+ # assert
80
+ assert event.is_a?(RefundWebhookCallback) && event.event == 'refund_finished'
81
+ end
82
+
83
+ def test_unknown_event
84
+ # arrange
85
+ event_payload = 45.0
86
+ rake_req = make_request(event_payload)
87
+
88
+ # act
89
+ event = @handler.parse_event(rake_req)
90
+
91
+ # assert
92
+ assert event.is_a?(UnknownEvent)
93
+ end
94
+
95
+ end
@@ -0,0 +1,101 @@
1
+ # univapay_client_sdk
2
+ #
3
+ # This file was automatically generated for Univapay
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+
7
+ require 'json'
8
+ require 'rack'
9
+ require 'stringio'
10
+ require 'minitest/autorun'
11
+ require 'minitest/hell'
12
+ require 'minitest/pride'
13
+ require 'minitest/proveit'
14
+ require 'univapay_client_sdk'
15
+ class TestSubscriptionCanceledHandler < Minitest::Test
16
+ parallelize_me!
17
+ include UnivapayClientSdk
18
+ include CoreLibrary
19
+
20
+ def setup
21
+ @handler = SubscriptionCanceledHandler.new
22
+ end
23
+
24
+ def json_bytes(obj)
25
+ JSON.generate(obj).encode('utf-8')
26
+ end
27
+
28
+ def make_request(body_obj, add_signature_header: true)
29
+ raw = json_bytes(body_obj)
30
+ env = {
31
+ 'REQUEST_METHOD' => 'POST',
32
+ 'PATH_INFO' => '/webhooks',
33
+ 'rack.input' => StringIO.new(raw),
34
+ 'CONTENT_TYPE' => 'application/json'
35
+ }
36
+ Rack::Request.new(env)
37
+ end
38
+
39
+
40
+ def test_subscription_canceled_from_subscription_canceled_handler
41
+ # Tests the `subscriptionCanceled` event from subscriptionCanceledHandler.
42
+ # arrange
43
+ event_payload = {
44
+ :id => "11ef0000-0000-4000-8000-000000000001",
45
+ :event => "subscription_canceled",
46
+ :data => {
47
+ :id => "11ef335e-9aa5-c54a-8313-7f9847da313a",
48
+ :store_id => "11edf541-c42d-653c-8c3d-dfe0a55f95c0",
49
+ :transaction_token_id => "11ef32a7-3a71-8662-803f-1bc27702eeec",
50
+ :amount => 1250,
51
+ :currency => "USD",
52
+ :amount_formatted => 12.5,
53
+ :schedule_settings => {
54
+ :start_on => "2024-07-01",
55
+ :zone_id => "Asia/Tokyo",
56
+ :preserve_end_of_month => false,
57
+ :retry_interval => "P7D",
58
+ :termination_mode => "on_next_payment"
59
+ },
60
+ :only_direct_currency => false,
61
+ :first_charge_authorization_only => false,
62
+ :status => "current",
63
+ :metadata => {
64
+ :order_id => "12345"
65
+ },
66
+ :mode => "test",
67
+ :created_on => "2024-06-26T01:51:28.627023Z",
68
+ :period => "monthly",
69
+ :exampleAdditionalProperty => {
70
+ :key1 => "val1",
71
+ :key2 => "val2"
72
+ }
73
+ },
74
+ :created_on => "2026-04-09T07:35:50.000000Z",
75
+ :exampleAdditionalProperty => {
76
+ :key1 => "val1",
77
+ :key2 => "val2"
78
+ }
79
+ }
80
+ rack_req = make_request(event_payload)
81
+
82
+ # act
83
+ event = @handler.parse_event(rack_req)
84
+
85
+ # assert
86
+ assert event.is_a?(SubscriptionCanceledWebhookCallback) && event.event == 'subscription_canceled'
87
+ end
88
+
89
+ def test_unknown_event
90
+ # arrange
91
+ event_payload = 45.0
92
+ rake_req = make_request(event_payload)
93
+
94
+ # act
95
+ event = @handler.parse_event(rake_req)
96
+
97
+ # assert
98
+ assert event.is_a?(UnknownEvent)
99
+ end
100
+
101
+ end