ps-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 (418) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +231 -0
  4. data/bin/console +15 -0
  5. data/lib/paysecure_api_documentation_live/api_helper.rb +10 -0
  6. data/lib/paysecure_api_documentation_live/apis/ap_is_api.rb +2969 -0
  7. data/lib/paysecure_api_documentation_live/apis/api.rb +91 -0
  8. data/lib/paysecure_api_documentation_live/apis/base_api.rb +67 -0
  9. data/lib/paysecure_api_documentation_live/apis/cashier_ap_is_api.rb +466 -0
  10. data/lib/paysecure_api_documentation_live/apis/get_balance_api.rb +136 -0
  11. data/lib/paysecure_api_documentation_live/apis/get_balance_api_v2_orchestration_api.rb +40 -0
  12. data/lib/paysecure_api_documentation_live/apis/global_collection_api.rb +381 -0
  13. data/lib/paysecure_api_documentation_live/apis/m_paypal_wallet_api.rb +126 -0
  14. data/lib/paysecure_api_documentation_live/apis/m_virtual_cards_payout_api.rb +182 -0
  15. data/lib/paysecure_api_documentation_live/apis/pay_in_api.rb +1764 -0
  16. data/lib/paysecure_api_documentation_live/apis/pay_out_api.rb +844 -0
  17. data/lib/paysecure_api_documentation_live/apis/payin_api.rb +265 -0
  18. data/lib/paysecure_api_documentation_live/apis/payout_api.rb +196 -0
  19. data/lib/paysecure_api_documentation_live/apis/payout_manual_review_api.rb +175 -0
  20. data/lib/paysecure_api_documentation_live/apis/refund_api.rb +38 -0
  21. data/lib/paysecure_api_documentation_live/apis/transaction_reporting_api.rb +148 -0
  22. data/lib/paysecure_api_documentation_live/apis/trust_score_api.rb +347 -0
  23. data/lib/paysecure_api_documentation_live/client.rb +163 -0
  24. data/lib/paysecure_api_documentation_live/configuration.rb +181 -0
  25. data/lib/paysecure_api_documentation_live/exceptions/api_exception.rb +21 -0
  26. data/lib/paysecure_api_documentation_live/exceptions/cancel_exception.rb +363 -0
  27. data/lib/paysecure_api_documentation_live/exceptions/capture_exception.rb +377 -0
  28. data/lib/paysecure_api_documentation_live/exceptions/empty_refund_amt_exception.rb +51 -0
  29. data/lib/paysecure_api_documentation_live/exceptions/error1_exception.rb +51 -0
  30. data/lib/paysecure_api_documentation_live/exceptions/existing_customer_exception.rb +51 -0
  31. data/lib/paysecure_api_documentation_live/exceptions/failure_exception.rb +51 -0
  32. data/lib/paysecure_api_documentation_live/exceptions/invalid_customer_exception.rb +51 -0
  33. data/lib/paysecure_api_documentation_live/exceptions/invalid_purchase_id_exception.rb +51 -0
  34. data/lib/paysecure_api_documentation_live/exceptions/invalid_session_exception.rb +51 -0
  35. data/lib/paysecure_api_documentation_live/exceptions/m400_bad_request_exception.rb +51 -0
  36. data/lib/paysecure_api_documentation_live/exceptions/m401_unauthorized_exception.rb +51 -0
  37. data/lib/paysecure_api_documentation_live/exceptions/payment_error_exception.rb +51 -0
  38. data/lib/paysecure_api_documentation_live/exceptions/payment_methods_error_exception.rb +55 -0
  39. data/lib/paysecure_api_documentation_live/exceptions/refund_amt_exceeds_purchase_amt_exception.rb +51 -0
  40. data/lib/paysecure_api_documentation_live/exceptions/refund_amt_is0_or_ve_exception.rb +51 -0
  41. data/lib/paysecure_api_documentation_live/exceptions/refund_error_exception.rb +51 -0
  42. data/lib/paysecure_api_documentation_live/exceptions/refund_exceeds_remaining_balance_after_a_partial_refund_exception.rb +51 -0
  43. data/lib/paysecure_api_documentation_live/exceptions/refund_on_an_already_refunded_purchase_exception.rb +51 -0
  44. data/lib/paysecure_api_documentation_live/exceptions/refund_on_failed_or_pending_transactions_exception.rb +51 -0
  45. data/lib/paysecure_api_documentation_live/exceptions/success33_exception.rb +363 -0
  46. data/lib/paysecure_api_documentation_live/exceptions/success36_exception.rb +147 -0
  47. data/lib/paysecure_api_documentation_live/exceptions/success42_exception.rb +46 -0
  48. data/lib/paysecure_api_documentation_live/exceptions/success44_exception.rb +46 -0
  49. data/lib/paysecure_api_documentation_live/exceptions/success51_exception.rb +86 -0
  50. data/lib/paysecure_api_documentation_live/exceptions/transaction_already_refunded_exception.rb +51 -0
  51. data/lib/paysecure_api_documentation_live/exceptions/trust_score_error_exception.rb +51 -0
  52. data/lib/paysecure_api_documentation_live/exceptions/whitelist_upload_failure_exception.rb +57 -0
  53. data/lib/paysecure_api_documentation_live/http/api_response.rb +19 -0
  54. data/lib/paysecure_api_documentation_live/http/auth/oauth_2.rb +53 -0
  55. data/lib/paysecure_api_documentation_live/http/http_call_back.rb +10 -0
  56. data/lib/paysecure_api_documentation_live/http/http_method_enum.rb +10 -0
  57. data/lib/paysecure_api_documentation_live/http/http_request.rb +10 -0
  58. data/lib/paysecure_api_documentation_live/http/http_response.rb +10 -0
  59. data/lib/paysecure_api_documentation_live/http/proxy_settings.rb +22 -0
  60. data/lib/paysecure_api_documentation_live/logging/configuration/api_logging_configuration.rb +186 -0
  61. data/lib/paysecure_api_documentation_live/logging/sdk_logger.rb +17 -0
  62. data/lib/paysecure_api_documentation_live/models/action_status.rb +459 -0
  63. data/lib/paysecure_api_documentation_live/models/aft.rb +239 -0
  64. data/lib/paysecure_api_documentation_live/models/aggregated_balance.rb +104 -0
  65. data/lib/paysecure_api_documentation_live/models/all.rb +82 -0
  66. data/lib/paysecure_api_documentation_live/models/applepay_decrypted_payload.rb +142 -0
  67. data/lib/paysecure_api_documentation_live/models/applepay_param.rb +74 -0
  68. data/lib/paysecure_api_documentation_live/models/applepay_param1.rb +76 -0
  69. data/lib/paysecure_api_documentation_live/models/applepay_token.rb +100 -0
  70. data/lib/paysecure_api_documentation_live/models/approve_payout_with_remarks_request.rb +73 -0
  71. data/lib/paysecure_api_documentation_live/models/attempt.rb +147 -0
  72. data/lib/paysecure_api_documentation_live/models/attempt1.rb +138 -0
  73. data/lib/paysecure_api_documentation_live/models/attempt2.rb +142 -0
  74. data/lib/paysecure_api_documentation_live/models/attempt26.rb +147 -0
  75. data/lib/paysecure_api_documentation_live/models/attempt27.rb +138 -0
  76. data/lib/paysecure_api_documentation_live/models/attempt28.rb +147 -0
  77. data/lib/paysecure_api_documentation_live/models/attempt4.rb +138 -0
  78. data/lib/paysecure_api_documentation_live/models/attempt5.rb +138 -0
  79. data/lib/paysecure_api_documentation_live/models/balance.rb +104 -0
  80. data/lib/paysecure_api_documentation_live/models/balance1.rb +95 -0
  81. data/lib/paysecure_api_documentation_live/models/bank_account.rb +82 -0
  82. data/lib/paysecure_api_documentation_live/models/base_model.rb +110 -0
  83. data/lib/paysecure_api_documentation_live/models/beneficiary_detail.rb +110 -0
  84. data/lib/paysecure_api_documentation_live/models/beneficiary_detail1.rb +95 -0
  85. data/lib/paysecure_api_documentation_live/models/beneficiary_detail2.rb +96 -0
  86. data/lib/paysecure_api_documentation_live/models/beneficiary_detail3.rb +95 -0
  87. data/lib/paysecure_api_documentation_live/models/beneficiary_detail4.rb +134 -0
  88. data/lib/paysecure_api_documentation_live/models/beneficiary_detail5.rb +72 -0
  89. data/lib/paysecure_api_documentation_live/models/beneficiary_detail6.rb +82 -0
  90. data/lib/paysecure_api_documentation_live/models/bulk_update_invoice_no.rb +100 -0
  91. data/lib/paysecure_api_documentation_live/models/bulk_update_invoice_no_request.rb +82 -0
  92. data/lib/paysecure_api_documentation_live/models/by_country.rb +72 -0
  93. data/lib/paysecure_api_documentation_live/models/capture_request.rb +75 -0
  94. data/lib/paysecure_api_documentation_live/models/capture_txn.rb +318 -0
  95. data/lib/paysecure_api_documentation_live/models/check_transaction_allowed_request.rb +82 -0
  96. data/lib/paysecure_api_documentation_live/models/check_white_list_doesn_t_exists.rb +73 -0
  97. data/lib/paysecure_api_documentation_live/models/check_white_list_exists.rb +73 -0
  98. data/lib/paysecure_api_documentation_live/models/check_white_list_request.rb +82 -0
  99. data/lib/paysecure_api_documentation_live/models/checking_balance_partial_success.rb +119 -0
  100. data/lib/paysecure_api_documentation_live/models/checking_balance_payout_error.rb +82 -0
  101. data/lib/paysecure_api_documentation_live/models/checking_balance_payout_error2.rb +111 -0
  102. data/lib/paysecure_api_documentation_live/models/checking_balance_payout_success.rb +99 -0
  103. data/lib/paysecure_api_documentation_live/models/checking_balance_payout_success2.rb +119 -0
  104. data/lib/paysecure_api_documentation_live/models/checking_balance_request.rb +74 -0
  105. data/lib/paysecure_api_documentation_live/models/client.rb +146 -0
  106. data/lib/paysecure_api_documentation_live/models/client1.rb +154 -0
  107. data/lib/paysecure_api_documentation_live/models/client10.rb +180 -0
  108. data/lib/paysecure_api_documentation_live/models/client100.rb +146 -0
  109. data/lib/paysecure_api_documentation_live/models/client103.rb +154 -0
  110. data/lib/paysecure_api_documentation_live/models/client104.rb +192 -0
  111. data/lib/paysecure_api_documentation_live/models/client12.rb +216 -0
  112. data/lib/paysecure_api_documentation_live/models/client13.rb +109 -0
  113. data/lib/paysecure_api_documentation_live/models/client15.rb +180 -0
  114. data/lib/paysecure_api_documentation_live/models/client17.rb +100 -0
  115. data/lib/paysecure_api_documentation_live/models/client2.rb +268 -0
  116. data/lib/paysecure_api_documentation_live/models/client24.rb +154 -0
  117. data/lib/paysecure_api_documentation_live/models/client26.rb +90 -0
  118. data/lib/paysecure_api_documentation_live/models/client29.rb +164 -0
  119. data/lib/paysecure_api_documentation_live/models/client35.rb +162 -0
  120. data/lib/paysecure_api_documentation_live/models/client37.rb +109 -0
  121. data/lib/paysecure_api_documentation_live/models/client4.rb +172 -0
  122. data/lib/paysecure_api_documentation_live/models/client41.rb +146 -0
  123. data/lib/paysecure_api_documentation_live/models/client45.rb +117 -0
  124. data/lib/paysecure_api_documentation_live/models/client46.rb +126 -0
  125. data/lib/paysecure_api_documentation_live/models/client52.rb +162 -0
  126. data/lib/paysecure_api_documentation_live/models/client57.rb +73 -0
  127. data/lib/paysecure_api_documentation_live/models/client6.rb +250 -0
  128. data/lib/paysecure_api_documentation_live/models/client65.rb +127 -0
  129. data/lib/paysecure_api_documentation_live/models/client66.rb +162 -0
  130. data/lib/paysecure_api_documentation_live/models/client67.rb +109 -0
  131. data/lib/paysecure_api_documentation_live/models/client68.rb +117 -0
  132. data/lib/paysecure_api_documentation_live/models/client7.rb +154 -0
  133. data/lib/paysecure_api_documentation_live/models/client70.rb +162 -0
  134. data/lib/paysecure_api_documentation_live/models/client75.rb +180 -0
  135. data/lib/paysecure_api_documentation_live/models/client8.rb +135 -0
  136. data/lib/paysecure_api_documentation_live/models/client80.rb +146 -0
  137. data/lib/paysecure_api_documentation_live/models/client86.rb +127 -0
  138. data/lib/paysecure_api_documentation_live/models/client88.rb +162 -0
  139. data/lib/paysecure_api_documentation_live/models/client9.rb +190 -0
  140. data/lib/paysecure_api_documentation_live/models/content.rb +83 -0
  141. data/lib/paysecure_api_documentation_live/models/country_names.rb +72 -0
  142. data/lib/paysecure_api_documentation_live/models/create_brand_id.rb +100 -0
  143. data/lib/paysecure_api_documentation_live/models/create_brand_id_request.rb +72 -0
  144. data/lib/paysecure_api_documentation_live/models/create_customer_request.rb +165 -0
  145. data/lib/paysecure_api_documentation_live/models/create_customer_request1.rb +182 -0
  146. data/lib/paysecure_api_documentation_live/models/create_merchant_api.rb +100 -0
  147. data/lib/paysecure_api_documentation_live/models/create_merchant_api_request.rb +348 -0
  148. data/lib/paysecure_api_documentation_live/models/create_merchant_api_token.rb +100 -0
  149. data/lib/paysecure_api_documentation_live/models/create_merchant_api_token_request.rb +82 -0
  150. data/lib/paysecure_api_documentation_live/models/create_pay_out_request.rb +140 -0
  151. data/lib/paysecure_api_documentation_live/models/create_pay_out_request1.rb +130 -0
  152. data/lib/paysecure_api_documentation_live/models/create_pay_out_request3.rb +170 -0
  153. data/lib/paysecure_api_documentation_live/models/create_pay_out_request4.rb +130 -0
  154. data/lib/paysecure_api_documentation_live/models/create_pay_out_request5.rb +139 -0
  155. data/lib/paysecure_api_documentation_live/models/create_pay_out_request6.rb +181 -0
  156. data/lib/paysecure_api_documentation_live/models/create_pay_out_request7.rb +140 -0
  157. data/lib/paysecure_api_documentation_live/models/create_payout_error.rb +82 -0
  158. data/lib/paysecure_api_documentation_live/models/create_payout_success.rb +630 -0
  159. data/lib/paysecure_api_documentation_live/models/create_payout_success1.rb +237 -0
  160. data/lib/paysecure_api_documentation_live/models/create_payout_success2.rb +229 -0
  161. data/lib/paysecure_api_documentation_live/models/create_purchase.rb +82 -0
  162. data/lib/paysecure_api_documentation_live/models/create_purchase_cit_request.rb +179 -0
  163. data/lib/paysecure_api_documentation_live/models/create_purchase_mit_request.rb +170 -0
  164. data/lib/paysecure_api_documentation_live/models/create_purchase_request.rb +141 -0
  165. data/lib/paysecure_api_documentation_live/models/create_purchase_request1.rb +153 -0
  166. data/lib/paysecure_api_documentation_live/models/create_purchase_request2.rb +161 -0
  167. data/lib/paysecure_api_documentation_live/models/create_session_cit_request.rb +188 -0
  168. data/lib/paysecure_api_documentation_live/models/customer_request.rb +182 -0
  169. data/lib/paysecure_api_documentation_live/models/customer_request1.rb +163 -0
  170. data/lib/paysecure_api_documentation_live/models/data.rb +154 -0
  171. data/lib/paysecure_api_documentation_live/models/data11.rb +91 -0
  172. data/lib/paysecure_api_documentation_live/models/data12.rb +91 -0
  173. data/lib/paysecure_api_documentation_live/models/data13.rb +92 -0
  174. data/lib/paysecure_api_documentation_live/models/data14.rb +99 -0
  175. data/lib/paysecure_api_documentation_live/models/data16.rb +109 -0
  176. data/lib/paysecure_api_documentation_live/models/data18.rb +84 -0
  177. data/lib/paysecure_api_documentation_live/models/data2.rb +242 -0
  178. data/lib/paysecure_api_documentation_live/models/data4.rb +91 -0
  179. data/lib/paysecure_api_documentation_live/models/data5.rb +90 -0
  180. data/lib/paysecure_api_documentation_live/models/data7.rb +74 -0
  181. data/lib/paysecure_api_documentation_live/models/data8.rb +91 -0
  182. data/lib/paysecure_api_documentation_live/models/data9.rb +348 -0
  183. data/lib/paysecure_api_documentation_live/models/datum.rb +82 -0
  184. data/lib/paysecure_api_documentation_live/models/delete_brand_id.rb +100 -0
  185. data/lib/paysecure_api_documentation_live/models/delete_merchant_api.rb +100 -0
  186. data/lib/paysecure_api_documentation_live/models/delete_merchant_token.rb +100 -0
  187. data/lib/paysecure_api_documentation_live/models/empty_refund_amt1.rb +82 -0
  188. data/lib/paysecure_api_documentation_live/models/error.rb +82 -0
  189. data/lib/paysecure_api_documentation_live/models/error3.rb +247 -0
  190. data/lib/paysecure_api_documentation_live/models/error7.rb +95 -0
  191. data/lib/paysecure_api_documentation_live/models/extra.rb +139 -0
  192. data/lib/paysecure_api_documentation_live/models/extra10.rb +82 -0
  193. data/lib/paysecure_api_documentation_live/models/extra5.rb +148 -0
  194. data/lib/paysecure_api_documentation_live/models/extra52.rb +148 -0
  195. data/lib/paysecure_api_documentation_live/models/extra57.rb +153 -0
  196. data/lib/paysecure_api_documentation_live/models/extra8.rb +82 -0
  197. data/lib/paysecure_api_documentation_live/models/extra_param.rb +102 -0
  198. data/lib/paysecure_api_documentation_live/models/extra_param1.rb +74 -0
  199. data/lib/paysecure_api_documentation_live/models/extra_param10.rb +100 -0
  200. data/lib/paysecure_api_documentation_live/models/extra_param13.rb +74 -0
  201. data/lib/paysecure_api_documentation_live/models/extra_param2.rb +75 -0
  202. data/lib/paysecure_api_documentation_live/models/extra_param20.rb +112 -0
  203. data/lib/paysecure_api_documentation_live/models/extra_param21.rb +86 -0
  204. data/lib/paysecure_api_documentation_live/models/extra_param25.rb +75 -0
  205. data/lib/paysecure_api_documentation_live/models/extra_param26.rb +72 -0
  206. data/lib/paysecure_api_documentation_live/models/extra_param3.rb +75 -0
  207. data/lib/paysecure_api_documentation_live/models/extra_param4.rb +74 -0
  208. data/lib/paysecure_api_documentation_live/models/extra_param5.rb +74 -0
  209. data/lib/paysecure_api_documentation_live/models/extra_param6.rb +75 -0
  210. data/lib/paysecure_api_documentation_live/models/extra_param7.rb +91 -0
  211. data/lib/paysecure_api_documentation_live/models/extra_param8.rb +91 -0
  212. data/lib/paysecure_api_documentation_live/models/extra_param9.rb +91 -0
  213. data/lib/paysecure_api_documentation_live/models/failure7.rb +243 -0
  214. data/lib/paysecure_api_documentation_live/models/fee.rb +118 -0
  215. data/lib/paysecure_api_documentation_live/models/gateway.rb +111 -0
  216. data/lib/paysecure_api_documentation_live/models/gateway1.rb +134 -0
  217. data/lib/paysecure_api_documentation_live/models/gateway2.rb +100 -0
  218. data/lib/paysecure_api_documentation_live/models/get_error_status.rb +82 -0
  219. data/lib/paysecure_api_documentation_live/models/get_global_accounts.rb +109 -0
  220. data/lib/paysecure_api_documentation_live/models/get_merchants.rb +100 -0
  221. data/lib/paysecure_api_documentation_live/models/get_missing_invoice_transactions.rb +100 -0
  222. data/lib/paysecure_api_documentation_live/models/get_settlement_data.rb +90 -0
  223. data/lib/paysecure_api_documentation_live/models/get_single_merchant.rb +100 -0
  224. data/lib/paysecure_api_documentation_live/models/get_status.rb +221 -0
  225. data/lib/paysecure_api_documentation_live/models/get_status_error.rb +82 -0
  226. data/lib/paysecure_api_documentation_live/models/get_success_status.rb +248 -0
  227. data/lib/paysecure_api_documentation_live/models/get_success_status1.rb +248 -0
  228. data/lib/paysecure_api_documentation_live/models/get_success_status2.rb +249 -0
  229. data/lib/paysecure_api_documentation_live/models/get_success_status3.rb +249 -0
  230. data/lib/paysecure_api_documentation_live/models/googlepay_decrypted_payload.rb +115 -0
  231. data/lib/paysecure_api_documentation_live/models/googlepay_param.rb +86 -0
  232. data/lib/paysecure_api_documentation_live/models/googlepay_param1.rb +87 -0
  233. data/lib/paysecure_api_documentation_live/models/header.rb +94 -0
  234. data/lib/paysecure_api_documentation_live/models/invalid_purchase_id1.rb +82 -0
  235. data/lib/paysecure_api_documentation_live/models/issuer_details.rb +159 -0
  236. data/lib/paysecure_api_documentation_live/models/issuer_details1.rb +168 -0
  237. data/lib/paysecure_api_documentation_live/models/issuer_details11.rb +101 -0
  238. data/lib/paysecure_api_documentation_live/models/m202_success.rb +563 -0
  239. data/lib/paysecure_api_documentation_live/models/mandate.rb +130 -0
  240. data/lib/paysecure_api_documentation_live/models/mandate2.rb +144 -0
  241. data/lib/paysecure_api_documentation_live/models/mandate4.rb +202 -0
  242. data/lib/paysecure_api_documentation_live/models/merchant.rb +348 -0
  243. data/lib/paysecure_api_documentation_live/models/metadata.rb +97 -0
  244. data/lib/paysecure_api_documentation_live/models/names.rb +265 -0
  245. data/lib/paysecure_api_documentation_live/models/new_request.rb +247 -0
  246. data/lib/paysecure_api_documentation_live/models/new_request_request.rb +139 -0
  247. data/lib/paysecure_api_documentation_live/models/open_banking_eu_uk.rb +515 -0
  248. data/lib/paysecure_api_documentation_live/models/optional_input.rb +795 -0
  249. data/lib/paysecure_api_documentation_live/models/pagination.rb +136 -0
  250. data/lib/paysecure_api_documentation_live/models/partial_refund_api_request.rb +82 -0
  251. data/lib/paysecure_api_documentation_live/models/partial_refund_status_api_request.rb +74 -0
  252. data/lib/paysecure_api_documentation_live/models/pause_mandate.rb +111 -0
  253. data/lib/paysecure_api_documentation_live/models/pause_mandate_request.rb +103 -0
  254. data/lib/paysecure_api_documentation_live/models/pay_in_details.rb +100 -0
  255. data/lib/paysecure_api_documentation_live/models/pay_in_details10.rb +109 -0
  256. data/lib/paysecure_api_documentation_live/models/pay_in_details2.rb +293 -0
  257. data/lib/paysecure_api_documentation_live/models/pay_in_details3.rb +93 -0
  258. data/lib/paysecure_api_documentation_live/models/pay_in_details4.rb +96 -0
  259. data/lib/paysecure_api_documentation_live/models/pay_in_details6.rb +83 -0
  260. data/lib/paysecure_api_documentation_live/models/pay_in_details7.rb +90 -0
  261. data/lib/paysecure_api_documentation_live/models/pay_out_details.rb +100 -0
  262. data/lib/paysecure_api_documentation_live/models/pay_out_details1.rb +92 -0
  263. data/lib/paysecure_api_documentation_live/models/pay_out_details3.rb +74 -0
  264. data/lib/paysecure_api_documentation_live/models/pay_out_request.rb +179 -0
  265. data/lib/paysecure_api_documentation_live/models/pay_out_request1.rb +180 -0
  266. data/lib/paysecure_api_documentation_live/models/pay_out_request3.rb +179 -0
  267. data/lib/paysecure_api_documentation_live/models/payin_api_request.rb +153 -0
  268. data/lib/paysecure_api_documentation_live/models/payment.rb +169 -0
  269. data/lib/paysecure_api_documentation_live/models/payment17.rb +169 -0
  270. data/lib/paysecure_api_documentation_live/models/payment3.rb +169 -0
  271. data/lib/paysecure_api_documentation_live/models/payment4.rb +169 -0
  272. data/lib/paysecure_api_documentation_live/models/payment_data.rb +85 -0
  273. data/lib/paysecure_api_documentation_live/models/payment_method_details.rb +120 -0
  274. data/lib/paysecure_api_documentation_live/models/payment_method_success.rb +111 -0
  275. data/lib/paysecure_api_documentation_live/models/payout_api_request.rb +170 -0
  276. data/lib/paysecure_api_documentation_live/models/payout_api_request1.rb +130 -0
  277. data/lib/paysecure_api_documentation_live/models/payout_request2.rb +161 -0
  278. data/lib/paysecure_api_documentation_live/models/payout_session.rb +118 -0
  279. data/lib/paysecure_api_documentation_live/models/payout_session_request.rb +197 -0
  280. data/lib/paysecure_api_documentation_live/models/payout_session_with_crypto_conversion.rb +118 -0
  281. data/lib/paysecure_api_documentation_live/models/pix_payload.rb +93 -0
  282. data/lib/paysecure_api_documentation_live/models/product.rb +82 -0
  283. data/lib/paysecure_api_documentation_live/models/product1.rb +109 -0
  284. data/lib/paysecure_api_documentation_live/models/product16.rb +73 -0
  285. data/lib/paysecure_api_documentation_live/models/product17.rb +73 -0
  286. data/lib/paysecure_api_documentation_live/models/product2.rb +109 -0
  287. data/lib/paysecure_api_documentation_live/models/product48.rb +82 -0
  288. data/lib/paysecure_api_documentation_live/models/product49.rb +109 -0
  289. data/lib/paysecure_api_documentation_live/models/product7.rb +82 -0
  290. data/lib/paysecure_api_documentation_live/models/purchase.rb +91 -0
  291. data/lib/paysecure_api_documentation_live/models/purchase1.rb +184 -0
  292. data/lib/paysecure_api_documentation_live/models/purchase10.rb +91 -0
  293. data/lib/paysecure_api_documentation_live/models/purchase16.rb +128 -0
  294. data/lib/paysecure_api_documentation_live/models/purchase17.rb +128 -0
  295. data/lib/paysecure_api_documentation_live/models/purchase2.rb +164 -0
  296. data/lib/paysecure_api_documentation_live/models/purchase21.rb +164 -0
  297. data/lib/paysecure_api_documentation_live/models/purchase24.rb +174 -0
  298. data/lib/paysecure_api_documentation_live/models/purchase26.rb +184 -0
  299. data/lib/paysecure_api_documentation_live/models/purchase45.rb +175 -0
  300. data/lib/paysecure_api_documentation_live/models/purchase47.rb +183 -0
  301. data/lib/paysecure_api_documentation_live/models/purchase48.rb +91 -0
  302. data/lib/paysecure_api_documentation_live/models/purchase49.rb +183 -0
  303. data/lib/paysecure_api_documentation_live/models/purchase52.rb +82 -0
  304. data/lib/paysecure_api_documentation_live/models/purchase55.rb +99 -0
  305. data/lib/paysecure_api_documentation_live/models/purchase56.rb +175 -0
  306. data/lib/paysecure_api_documentation_live/models/purchase62.rb +174 -0
  307. data/lib/paysecure_api_documentation_live/models/purchase7.rb +100 -0
  308. data/lib/paysecure_api_documentation_live/models/purchase73.rb +361 -0
  309. data/lib/paysecure_api_documentation_live/models/purchase8.rb +184 -0
  310. data/lib/paysecure_api_documentation_live/models/purchase9.rb +165 -0
  311. data/lib/paysecure_api_documentation_live/models/purchase_error.rb +82 -0
  312. data/lib/paysecure_api_documentation_live/models/purchase_request.rb +161 -0
  313. data/lib/paysecure_api_documentation_live/models/purchase_request1.rb +162 -0
  314. data/lib/paysecure_api_documentation_live/models/purchase_request2.rb +162 -0
  315. data/lib/paysecure_api_documentation_live/models/purchase_request3.rb +142 -0
  316. data/lib/paysecure_api_documentation_live/models/purchase_request4.rb +170 -0
  317. data/lib/paysecure_api_documentation_live/models/purchase_session_request.rb +189 -0
  318. data/lib/paysecure_api_documentation_live/models/purchase_success.rb +497 -0
  319. data/lib/paysecure_api_documentation_live/models/purchase_success1.rb +479 -0
  320. data/lib/paysecure_api_documentation_live/models/purchase_success2.rb +462 -0
  321. data/lib/paysecure_api_documentation_live/models/purchase_success3.rb +471 -0
  322. data/lib/paysecure_api_documentation_live/models/purchase_success4.rb +527 -0
  323. data/lib/paysecure_api_documentation_live/models/purchase_sucess.rb +471 -0
  324. data/lib/paysecure_api_documentation_live/models/purchases1.rb +479 -0
  325. data/lib/paysecure_api_documentation_live/models/purchases_decrypted_flow_request.rb +161 -0
  326. data/lib/paysecure_api_documentation_live/models/purchases_decrypted_flow_request1.rb +140 -0
  327. data/lib/paysecure_api_documentation_live/models/purchases_encrypted_flow_request.rb +161 -0
  328. data/lib/paysecure_api_documentation_live/models/purchases_encrypted_flow_request1.rb +140 -0
  329. data/lib/paysecure_api_documentation_live/models/purchases_error.rb +378 -0
  330. data/lib/paysecure_api_documentation_live/models/purchases_request.rb +153 -0
  331. data/lib/paysecure_api_documentation_live/models/purchases_request11.rb +161 -0
  332. data/lib/paysecure_api_documentation_live/models/purchases_request2.rb +161 -0
  333. data/lib/paysecure_api_documentation_live/models/purchases_request3.rb +153 -0
  334. data/lib/paysecure_api_documentation_live/models/purchases_request4.rb +161 -0
  335. data/lib/paysecure_api_documentation_live/models/purchases_request5.rb +153 -0
  336. data/lib/paysecure_api_documentation_live/models/purchases_request6.rb +153 -0
  337. data/lib/paysecure_api_documentation_live/models/purchases_request8.rb +161 -0
  338. data/lib/paysecure_api_documentation_live/models/purchases_request9.rb +171 -0
  339. data/lib/paysecure_api_documentation_live/models/purchases_success.rb +397 -0
  340. data/lib/paysecure_api_documentation_live/models/purchases_success1.rb +497 -0
  341. data/lib/paysecure_api_documentation_live/models/purchases_success2.rb +480 -0
  342. data/lib/paysecure_api_documentation_live/models/purchases_success5.rb +470 -0
  343. data/lib/paysecure_api_documentation_live/models/refund_amt_exceeds_purchase_amt1.rb +82 -0
  344. data/lib/paysecure_api_documentation_live/models/refund_amt_is0_or_ve1.rb +82 -0
  345. data/lib/paysecure_api_documentation_live/models/refund_exceeds_remaining_balance_after_a_partial_refund1.rb +82 -0
  346. data/lib/paysecure_api_documentation_live/models/refund_on_an_already_refunded_purchase1.rb +82 -0
  347. data/lib/paysecure_api_documentation_live/models/refund_on_failed_or_pending_transactions1.rb +82 -0
  348. data/lib/paysecure_api_documentation_live/models/refund_pending.rb +388 -0
  349. data/lib/paysecure_api_documentation_live/models/refund_pending1.rb +388 -0
  350. data/lib/paysecure_api_documentation_live/models/refund_success.rb +388 -0
  351. data/lib/paysecure_api_documentation_live/models/refund_success1.rb +388 -0
  352. data/lib/paysecure_api_documentation_live/models/reject_payout_with_remarks_request.rb +73 -0
  353. data/lib/paysecure_api_documentation_live/models/request_global_account.rb +90 -0
  354. data/lib/paysecure_api_documentation_live/models/request_global_account_request.rb +82 -0
  355. data/lib/paysecure_api_documentation_live/models/requiredinput.rb +90 -0
  356. data/lib/paysecure_api_documentation_live/models/revoke_mandate_request.rb +82 -0
  357. data/lib/paysecure_api_documentation_live/models/routing_param.rb +83 -0
  358. data/lib/paysecure_api_documentation_live/models/s2_s_api_request.rb +202 -0
  359. data/lib/paysecure_api_documentation_live/models/s2_s_payment_request.rb +184 -0
  360. data/lib/paysecure_api_documentation_live/models/s2_srequest.rb +202 -0
  361. data/lib/paysecure_api_documentation_live/models/session_with_crypto_conversion.rb +118 -0
  362. data/lib/paysecure_api_documentation_live/models/settlement.rb +109 -0
  363. data/lib/paysecure_api_documentation_live/models/status_history.rb +82 -0
  364. data/lib/paysecure_api_documentation_live/models/status_history8.rb +112 -0
  365. data/lib/paysecure_api_documentation_live/models/success.rb +535 -0
  366. data/lib/paysecure_api_documentation_live/models/success1.rb +90 -0
  367. data/lib/paysecure_api_documentation_live/models/success10.rb +470 -0
  368. data/lib/paysecure_api_documentation_live/models/success11.rb +470 -0
  369. data/lib/paysecure_api_documentation_live/models/success12.rb +268 -0
  370. data/lib/paysecure_api_documentation_live/models/success13.rb +526 -0
  371. data/lib/paysecure_api_documentation_live/models/success14.rb +118 -0
  372. data/lib/paysecure_api_documentation_live/models/success16.rb +450 -0
  373. data/lib/paysecure_api_documentation_live/models/success17.rb +461 -0
  374. data/lib/paysecure_api_documentation_live/models/success18.rb +247 -0
  375. data/lib/paysecure_api_documentation_live/models/success19.rb +228 -0
  376. data/lib/paysecure_api_documentation_live/models/success2.rb +369 -0
  377. data/lib/paysecure_api_documentation_live/models/success21.rb +256 -0
  378. data/lib/paysecure_api_documentation_live/models/success22.rb +462 -0
  379. data/lib/paysecure_api_documentation_live/models/success23.rb +252 -0
  380. data/lib/paysecure_api_documentation_live/models/success24.rb +99 -0
  381. data/lib/paysecure_api_documentation_live/models/success29.rb +221 -0
  382. data/lib/paysecure_api_documentation_live/models/success3.rb +462 -0
  383. data/lib/paysecure_api_documentation_live/models/success32.rb +129 -0
  384. data/lib/paysecure_api_documentation_live/models/success38.rb +552 -0
  385. data/lib/paysecure_api_documentation_live/models/success39.rb +100 -0
  386. data/lib/paysecure_api_documentation_live/models/success40.rb +82 -0
  387. data/lib/paysecure_api_documentation_live/models/success41.rb +553 -0
  388. data/lib/paysecure_api_documentation_live/models/success46.rb +85 -0
  389. data/lib/paysecure_api_documentation_live/models/success47.rb +527 -0
  390. data/lib/paysecure_api_documentation_live/models/success49.rb +73 -0
  391. data/lib/paysecure_api_documentation_live/models/success5.rb +229 -0
  392. data/lib/paysecure_api_documentation_live/models/success6.rb +100 -0
  393. data/lib/paysecure_api_documentation_live/models/success7.rb +453 -0
  394. data/lib/paysecure_api_documentation_live/models/success8.rb +243 -0
  395. data/lib/paysecure_api_documentation_live/models/to_address.rb +90 -0
  396. data/lib/paysecure_api_documentation_live/models/to_address1.rb +90 -0
  397. data/lib/paysecure_api_documentation_live/models/transaction.rb +101 -0
  398. data/lib/paysecure_api_documentation_live/models/transaction_already_refunded1.rb +82 -0
  399. data/lib/paysecure_api_documentation_live/models/transaction_data.rb +110 -0
  400. data/lib/paysecure_api_documentation_live/models/transaction_data1.rb +119 -0
  401. data/lib/paysecure_api_documentation_live/models/transaction_data2.rb +119 -0
  402. data/lib/paysecure_api_documentation_live/models/transaction_data3.rb +119 -0
  403. data/lib/paysecure_api_documentation_live/models/transaction_data37.rb +119 -0
  404. data/lib/paysecure_api_documentation_live/models/transaction_data40.rb +119 -0
  405. data/lib/paysecure_api_documentation_live/models/transaction_data41.rb +119 -0
  406. data/lib/paysecure_api_documentation_live/models/transaction_data6.rb +119 -0
  407. data/lib/paysecure_api_documentation_live/models/transaction_data7.rb +119 -0
  408. data/lib/paysecure_api_documentation_live/models/trust_score_detailed_request.rb +82 -0
  409. data/lib/paysecure_api_documentation_live/models/trust_score_exists.rb +145 -0
  410. data/lib/paysecure_api_documentation_live/models/trust_score_exists1.rb +75 -0
  411. data/lib/paysecure_api_documentation_live/models/update_merchant.rb +100 -0
  412. data/lib/paysecure_api_documentation_live/models/update_merchant_request.rb +302 -0
  413. data/lib/paysecure_api_documentation_live/models/whitelist_upload_success.rb +92 -0
  414. data/lib/paysecure_api_documentation_live/utilities/date_time_helper.rb +11 -0
  415. data/lib/paysecure_api_documentation_live/utilities/file_wrapper.rb +28 -0
  416. data/lib/paysecure_api_documentation_live/utilities/union_type_lookup.rb +50 -0
  417. data/lib/paysecure_api_documentation_live.rb +528 -0
  418. metadata +501 -0
@@ -0,0 +1,91 @@
1
+ # paysecure_api_documentation_live
2
+ #
3
+ # This file was automatically generated
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module PaysecureApiDocumentationLive
7
+ # Api
8
+ class Api < BaseApi
9
+ # ## Refund Scenarios
10
+ # ### Partial Refund
11
+ # Purchase Amount: 10
12
+ # Refund Amount: 8
13
+ # Result:
14
+ # - Refunded Amount: 8
15
+ #
16
+ # - Remaining Refundable Amount: 2
17
+ #
18
+ # - Transaction Status: PARTIALLY_REFUNDED
19
+ #
20
+ # Full Refund Using Partial Refund API
21
+ # Purchase Amount: 10
22
+ # Refund Amount: 10
23
+ # Result:
24
+ # - Refunded Amount: 10
25
+ #
26
+ # - Remaining Refundable Amount: 0
27
+ #
28
+ # - Transaction Status: PARTIAL REFUNDED
29
+ #
30
+ # ### Multiple Partial Refunds
31
+ # Purchase Amount: 10
32
+ # - Refund #1: 3
33
+ #
34
+ # - Refund #2: 2
35
+ #
36
+ # - Refund #3: 5
37
+ #
38
+ # Result:
39
+ # - Total Refunded Amount: 10
40
+ #
41
+ # - Remaining Refundable Amount: 0
42
+ #
43
+ # Final Transaction Status: PARTIAL REFUNDED
44
+ # @param [String] accept Required parameter: TODO: type description here
45
+ # @param [PartialRefundApiRequest] body Required parameter: TODO: type
46
+ # description here
47
+ # @return [ApiResponse] Complete http response with raw body and status code.
48
+ def partial_refund_api(accept,
49
+ body)
50
+ @api_call
51
+ .request(new_request_builder(HttpMethodEnum::POST,
52
+ '/api/v1/purchases/purchaseid/refund',
53
+ Server::SERVER_3)
54
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
55
+ .header_param(new_parameter(accept, key: 'Accept')
56
+ .is_required(true))
57
+ .body_param(new_parameter(body)
58
+ .is_required(true))
59
+ .body_serializer(proc do |param| param.to_json unless param.nil? end))
60
+ .response(new_response_handler
61
+ .is_response_void(true)
62
+ .is_api_response(true)
63
+ .local_error('401',
64
+ 'Unauthorized',
65
+ Success51Exception))
66
+ .execute
67
+ end
68
+
69
+ # TODO: type endpoint description here
70
+ # @param [PartialRefundStatusApiRequest] body Required parameter: TODO: type
71
+ # description here
72
+ # @return [ApiResponse] Complete http response with raw body and status code.
73
+ def partial_refund_status_api(body)
74
+ @api_call
75
+ .request(new_request_builder(HttpMethodEnum::POST,
76
+ '/api/v1/refundStatus/purchaseid',
77
+ Server::SERVER_3)
78
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
79
+ .body_param(new_parameter(body)
80
+ .is_required(true))
81
+ .body_serializer(proc do |param| param.to_json unless param.nil? end))
82
+ .response(new_response_handler
83
+ .is_response_void(true)
84
+ .is_api_response(true)
85
+ .local_error('401',
86
+ 'Unauthorized',
87
+ Success51Exception))
88
+ .execute
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,67 @@
1
+ # paysecure_api_documentation_live
2
+ #
3
+ # This file was automatically generated
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module PaysecureApiDocumentationLive
7
+ # BaseApi.
8
+ class BaseApi
9
+ include CoreLibrary
10
+ attr_accessor :config, :http_call_back
11
+
12
+ def self.user_agent
13
+ 'Ruby-SDK/0.0.1 (OS: {os-info}, Engine: {engine}/{engine-version})'
14
+ end
15
+
16
+ def self.user_agent_parameters
17
+ {
18
+ '{engine}' => { 'value' => RUBY_ENGINE, 'encode' => false },
19
+ '{engine-version}' => { 'value' => RUBY_ENGINE_VERSION, 'encode' => false },
20
+ '{os-info}' => { 'value' => RUBY_PLATFORM, 'encode' => false }
21
+ }
22
+ end
23
+
24
+ GLOBAL_ERRORS = {
25
+ 'default' => ErrorCase.new
26
+ .error_message('HTTP response not OK.')
27
+ .exception_type(APIException)
28
+ }.freeze
29
+
30
+ # Initialization constructor.
31
+ # @param [GlobalConfiguration] global_configuration The instance of GlobalConfiguration.
32
+ def initialize(global_configuration)
33
+ @global_configuration = global_configuration
34
+ @config = @global_configuration.client_configuration
35
+ @http_call_back = @config.http_callback
36
+ @api_call = ApiCall.new(@global_configuration)
37
+ end
38
+
39
+ # Creates a new instance of the request builder.
40
+ # @param [String] http_method The HTTP method to use in the request.
41
+ # @param [String] path The endpoint path to use in the request.
42
+ # @param [String] server The server to extract the base uri for the request.
43
+ # @return [RequestBuilder] The instance of RequestBuilder.
44
+ def new_request_builder(http_method, path, server)
45
+ RequestBuilder.new
46
+ .http_method(http_method)
47
+ .path(path)
48
+ .server(server)
49
+ end
50
+
51
+ # Creates a new instance of the response handler.
52
+ # @return [ResponseHandler] The instance of ResponseHandler.
53
+ def new_response_handler
54
+ ResponseHandler.new
55
+ end
56
+
57
+ # Creates a new instance of the parameter.
58
+ # @param [String|optional] key The key of the parameter.
59
+ # @param [Object] value The value of the parameter.
60
+ # @return [Parameter] The instance of Parameter.
61
+ def new_parameter(value, key: nil)
62
+ Parameter.new
63
+ .key(key)
64
+ .value(value)
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,466 @@
1
+ # paysecure_api_documentation_live
2
+ #
3
+ # This file was automatically generated
4
+ # by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module PaysecureApiDocumentationLive
7
+ # CashierApIsApi
8
+ class CashierApIsApi < BaseApi
9
+ # **OVERIEW**
10
+ # The **createCustomer API** allows merchants to create a customer profile
11
+ # on PaySecure when a user visits their website, facilitating a seamless
12
+ # payment experience by pre-filling the customer's details, on the PaySecure
13
+ # Cashier. The API takes in customer information and returns a unique
14
+ # customerID that can be passed in purchase payload, eliminating the need
15
+ # for customers to manually enter their details during transactions.
16
+ # | Parameter | Type | **Required** | Description | Example |
17
+ # | --- | --- | --- | --- | --- |
18
+ # | merchantCustomerId | String | Yes | unique customer ID provided by
19
+ # merchant. This can be email, mobile or an alphanumeric string |
20
+ # [rahultestcustomer@paysecure.net](https://mailto:rahultestcustomer@paysecu
21
+ # re.net) |
22
+ # | fullName | String | Yes | Full name of the customer. | Rahul Agarwal |
23
+ # | emailId | String | Yes | Email address of the customer. |
24
+ # [test@paysecure.net](https://mailto:test@paysecure.net) |
25
+ # | dateOfBirth | String | Optional | Customer's date of birth in YYYY-MM-DD
26
+ # format. | 1995-12-27 |
27
+ # | phoneNo | String | Yes | Customer's phone number. Preferred with the
28
+ # country code | +91 797639082 |
29
+ # | city | String | Optional | City of the customer. | Jaipur |
30
+ # | stateCode | String | Yes | State code of the customer. | RJ |
31
+ # | zipCode | String | Optional | Postal code of the customer's location. |
32
+ # 302018 |
33
+ # | address | String | Optional | Full address of the customer. | House
34
+ # Number 53, Vaishali Nagar, Jaipur |
35
+ # | country | String | Yes | Country code (ISO 3166-1 alpha-2). | IN |
36
+ # | custRegDate | Sting | Optional | Customer registration date on merchant
37
+ # site in YYYY-MM-DD format. | 2023-12-27 |
38
+ # | successTxn | String | Optional | Number of successful transactions
39
+ # customer has carried on merchant site. | 32 |
40
+ # ### **User Flow**
41
+ # 1. **Customer visits merchant's website**: The customer selects the
42
+ # product or service and proceeds to checkout page.
43
+ #
44
+ # 2. **Merchant calls the** **`createCustomer`** **API**: The merchant sends
45
+ # a `POST` request to the Paysecure API with the customer's details.
46
+ #
47
+ # 3. **Customer ID generation**: Paysecure processes the request and
48
+ # generates a unique `customerId` which is returned in the response.
49
+ #
50
+ # 4. **Payment Process**: The merchant uses the `customerId` for subsequent
51
+ # session creation, ensuring the customer doesn’t need to re-enter their
52
+ # details for future payments.
53
+ #
54
+ # ---
55
+ # ### **Benefits**
56
+ # - **Seamless user experience**: The customer does not have to enter their
57
+ # details manually for every purchase.
58
+ #
59
+ # - **Faster Checkout**: The merchant can use the `customerId` for faster
60
+ # payment processing.
61
+ #
62
+ # - **Data Security**: Customer details are stored securely and can be
63
+ # reused across transactions, reducing the chances of errors.
64
+ #
65
+ # ### Implementing createCustomer on merchant site:
66
+ # The `createCustomer` can be implemented on merchant site in one of two
67
+ # ways, depending on merchant’s integration flow:
68
+ # **At Checkout:**
69
+ # When a customer initiates the checkout process, your system should invoke
70
+ # the `createCustomer` API, before actually starting the session.
71
+ # - **Call** **`createCustomer`**: This API call generates a unique customer
72
+ # ID.
73
+ #
74
+ # - **Use of Customer ID:** Pass the returned customer ID in Session API,
75
+ # when creating a payment session.
76
+ #
77
+ # **Upon Customer Login:**
78
+ # Alternatively, merchants may choose to call `createCustomer` at the time
79
+ # of customer login on their site.
80
+ # - **Persistent Customer Profiles:** This approach can help build or
81
+ # maintain a persistent customer profile, ensuring the customer ID is
82
+ # available for any subsequent payment sessions without needing to call
83
+ # `createCustomer` again.
84
+ #
85
+ # - **Integration Flexibility:** This is useful for merchants who want to
86
+ # initialize customer data early in the customer journey rather than during
87
+ # checkout.
88
+ #
89
+ # The method you choose depends on your business requirements and how your
90
+ # system is architected. Regardless of when you call it, the resulting
91
+ # customer ID must be passed to the `createSession` API to initiate a
92
+ # payment session.
93
+ # @param [String] brand_id Required parameter: TODO: type description here
94
+ # @param [CustomerRequest] body Required parameter: TODO: type description
95
+ # here
96
+ # @return [ApiResponse] Complete http response with raw body and status code.
97
+ def customer(brand_id,
98
+ body)
99
+ @api_call
100
+ .request(new_request_builder(HttpMethodEnum::POST,
101
+ '/api/v1/customer',
102
+ Server::SERVER_3)
103
+ .header_param(new_parameter(brand_id, key: 'BrandId')
104
+ .is_required(true))
105
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
106
+ .body_param(new_parameter(body)
107
+ .is_required(true))
108
+ .header_param(new_parameter('application/json', key: 'accept'))
109
+ .body_serializer(proc do |param| param.to_json unless param.nil? end))
110
+ .response(new_response_handler
111
+ .deserializer(APIHelper.method(:custom_type_deserializer))
112
+ .deserialize_into(Success19.method(:from_hash))
113
+ .is_api_response(true)
114
+ .local_error('400',
115
+ 'Bad Request',
116
+ FailureException)
117
+ .local_error('401',
118
+ 'Unauthorized',
119
+ ExistingCustomerException))
120
+ .execute
121
+ end
122
+
123
+ # This endpoint makes an HTTP GET request to retrieve customer information
124
+ # from the Paysecure API.
125
+ # ### Request
126
+ # The request does not include any query parameters, but it uses a raw
127
+ # request body with the following parameter "merchantCustomerId", which will
128
+ # be the customer id on the merchant's side.
129
+ # ### Response
130
+ # The response of this request can be documented as a JSON schema.
131
+ # @param [String] brand_id Required parameter: TODO: type description here
132
+ # @param [String] accept Required parameter: TODO: type description here
133
+ # @return [ApiResponse] Complete http response with raw body and status code.
134
+ def customer1(brand_id,
135
+ accept)
136
+ @api_call
137
+ .request(new_request_builder(HttpMethodEnum::GET,
138
+ '/customer',
139
+ Server::SERVER_2)
140
+ .header_param(new_parameter(brand_id, key: 'BrandId')
141
+ .is_required(true))
142
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
143
+ .header_param(new_parameter(accept, key: 'Accept')
144
+ .is_required(true)))
145
+ .response(new_response_handler
146
+ .deserializer(APIHelper.method(:custom_type_deserializer))
147
+ .deserialize_into(Success19.method(:from_hash))
148
+ .is_api_response(true)
149
+ .local_error('400',
150
+ 'Bad Request',
151
+ InvalidCustomerException))
152
+ .execute
153
+ end
154
+
155
+ # Whenever a customer or the merchant updates customer details on the
156
+ # merchant site, a PATCH request must be made to synchronize these changes
157
+ # with Paysecure.
158
+ # This API endpoint allows you to update the customer details using an HTTP
159
+ # PATCH request. The request should be sent to
160
+ # [https://api.paysecure.net/api/v1/{customerId}/patchCustomer](https://api.
161
+ # paysecure.net/api/v1/%7BcustomerId%7D/patchCustomer).
162
+ # ### Request Body
163
+ # The request body should be in raw format and include the following
164
+ # parameters:
165
+ # - `fullName` (string): The full name of the customer.
166
+ #
167
+ # - `emailId` (string): The email address of the customer.
168
+ #
169
+ # - `dateOfBirth` (string): The date of birth of the customer.
170
+ #
171
+ # - `phoneNo` (string): The phone number of the customer.
172
+ #
173
+ # - `city` (string): The city of the customer.
174
+ #
175
+ # - `stateCode` (string): The state code of the customer.
176
+ #
177
+ # - `zipCode` (string): The zip code of the customer.
178
+ #
179
+ # - `address` (string): The address of the customer.
180
+ #
181
+ # - `country` (string): The country of the customer.
182
+ #
183
+ # - `createdOn` (string): Time when the customer was created.
184
+ #
185
+ # - `custRegDate` (string): Customer registration date (Non-Mandatory).
186
+ #
187
+ # - `successTxn` (string): Success transaction details (Non-Mandatory).
188
+ #
189
+ # - `lastActivity` (string): Time of the last activity.
190
+ #
191
+ # - `lastUpdated` (string): Time when the last patch was called.
192
+ #
193
+ # - `extraParam` (object): Additional parameters including `param1`,
194
+ # `param2`, `param3`, `param4` with their respective values.
195
+ #
196
+ # ### Response
197
+ # The response will contain the updated customer details or a success
198
+ # message upon successful update.
199
+ # @param [String] brand_id Required parameter: TODO: type description here
200
+ # @param [String] accept Required parameter: TODO: type description here
201
+ # @param [CustomerRequest1] body Required parameter: TODO: type description
202
+ # here
203
+ # @param [String] paysecure_customer_id Required parameter: TODO: type
204
+ # description here
205
+ # @return [ApiResponse] Complete http response with raw body and status code.
206
+ def customer2(brand_id,
207
+ accept,
208
+ body,
209
+ paysecure_customer_id)
210
+ @api_call
211
+ .request(new_request_builder(HttpMethodEnum::PATCH,
212
+ '/api/v1/{PaysecureCustomerId}/patchCustomer',
213
+ Server::SERVER_3)
214
+ .header_param(new_parameter(brand_id, key: 'BrandId')
215
+ .is_required(true))
216
+ .header_param(new_parameter(accept, key: 'Accept')
217
+ .is_required(true))
218
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
219
+ .body_param(new_parameter(body)
220
+ .is_required(true))
221
+ .template_param(new_parameter(paysecure_customer_id, key: 'PaysecureCustomerId')
222
+ .is_required(true)
223
+ .should_encode(true))
224
+ .body_serializer(proc do |param| param.to_json unless param.nil? end))
225
+ .response(new_response_handler
226
+ .deserializer(APIHelper.method(:custom_type_deserializer))
227
+ .deserialize_into(Success19.method(:from_hash))
228
+ .is_api_response(true))
229
+ .execute
230
+ end
231
+
232
+ # **OVERIEW**
233
+ # The `createSession` API is designed to initiate a payment session for a
234
+ # customer after their profile has been created via the **createCustomer**
235
+ # API. The session is automatically generated at the backend on the
236
+ # merchant’s checkout URL. This session allows the customer to continue with
237
+ # their transaction without having to manually interact with the session
238
+ # URL, and ensures the session remains active until the payment is completed
239
+ # or the session expires.
240
+ # This API improves the user experience by reducing transaction failures and
241
+ # enhancing the overall payment process, thus reducing transaction churn
242
+ # rates.
243
+ # ### Mandatory Parameters
244
+ # | Parameter | Type | Description | Example |
245
+ # | --- | --- | --- | --- |
246
+ # | customerId | String | The unique ID of the customer (generated from
247
+ # createCustomer). | 6731a609b6bb5a43ad66c4a6 |
248
+ # #### Show Crypto Conversion
249
+ # Additionally, there are some default extra parameters that you can pass
250
+ # for allowing Crypto Conversion on Paysecure's cashier itself.
251
+ # | | **Type** | **Description** | **Example** |
252
+ # | --- | --- | --- | --- |
253
+ # | extraParam.showCryptoConversion | String | This optional parameter
254
+ # allows customer to see crypto value equivelant to the Fiat amount the
255
+ # customer is planning to pay. | Yes |
256
+ # | extraParam.cryptoCurrencies | String | Pass here the allowed crypto
257
+ # tokens on the cashier, where customer can see the the conversion value |
258
+ # \[\\"BTC\\",\\"ETH\\",\\"USDT\\",\\"XRP\\",\\"LTC\\",\\"DOGE\\",\\"ETC\\",
259
+ # \\"BNB\\",\\"USDC\\",\\"SOL\\",\\"ADA\\",\\"BCH\\",\\"DASH\\",\\"BTG\\",\\
260
+ # "ZEC\\",\\"DGB\\",\\"EOS\\",\\"XLM\\",\\"TRX\\",\\"QTUM\\",\\"POL\\",\\"SH
261
+ # IB\\",\\"LINK\\",\\"DAI\\",\\"TON\\",\\"AVAX\\",\\"FDUSD\\",\\"ARB\\",\\"O
262
+ # P\\"\] |
263
+ # ### **Usage Flow**
264
+ # 1. **Customer completes the** **`createCustomer`** **API**: Once the
265
+ # customer is created via the `createCustomer` API, the merchant proceeds to
266
+ # call the `createSession` API to generate a session.
267
+ #
268
+ # 2. **Merchant sends** **`createSession`** **request**: The merchant sends
269
+ # a `POST` request to the `createSession` API with the customer’s
270
+ # `customerId` and the merchant’s `brandId`.
271
+ #
272
+ # 3. **Session created automatically on the checkout URL**: PaySecure
273
+ # creates the session and associates it with the merchant’s checkout page.
274
+ # This session remains active on the backend, allowing the customer to
275
+ # continue the payment process without interruption.
276
+ #
277
+ # 4. **Customer proceeds to checkout**: The customer is redirected to the
278
+ # checkout page as part of the merchant's payment flow, where the session is
279
+ # automatically validated. The session remains active for a set period,
280
+ # allowing the customer to complete the payment without needing to manually
281
+ # interact with the session URL.
282
+ #
283
+ # 5. **Session Expiry**: The session expires after the set expiration time
284
+ # (`expiryOn`), ensuring the payment process is completed within the defined
285
+ # window. Default is 15 mins from the creation time.
286
+ #
287
+ # ---
288
+ # ### **Benefits**
289
+ # - **Seamless Checkout**: The session URL is automatically generated and
290
+ # active at the backend, ensuring a smoother and uninterrupted customer
291
+ # experience.
292
+ #
293
+ # - **Reduced Transaction Failures**: By ensuring the session remains active
294
+ # during the payment process, the chances of transaction failures due to
295
+ # session timeouts are minimized.
296
+ #
297
+ # - **Improved User Experience**: The customer does not need to click on a
298
+ # session URL or navigate away from the page, leading to faster and more
299
+ # secure payment processing.
300
+ # @param [String] brand_id Required parameter: TODO: type description here
301
+ # @param [String] accept Required parameter: TODO: type description here
302
+ # @param [PurchaseSessionRequest] body Required parameter: TODO: type
303
+ # description here
304
+ # @return [ApiResponse] Complete http response with raw body and status code.
305
+ def purchase_session(brand_id,
306
+ accept,
307
+ body)
308
+ @api_call
309
+ .request(new_request_builder(HttpMethodEnum::POST,
310
+ '/api/v1/createSession',
311
+ Server::SERVER_3)
312
+ .header_param(new_parameter(brand_id, key: 'BrandId')
313
+ .is_required(true))
314
+ .header_param(new_parameter(accept, key: 'Accept')
315
+ .is_required(true))
316
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
317
+ .body_param(new_parameter(body)
318
+ .is_required(true))
319
+ .body_serializer(proc do |param| param.to_json unless param.nil? end))
320
+ .response(new_response_handler
321
+ .deserializer(APIHelper.method(:custom_type_deserializer))
322
+ .deserialize_into(Success14.method(:from_hash))
323
+ .is_api_response(true)
324
+ .local_error('400',
325
+ 'Bad Request',
326
+ InvalidSessionException))
327
+ .execute
328
+ end
329
+
330
+ # This API is used to initiate a payout session for a customer. By passing
331
+ # the `customerId` (generated via the `createCustomer` API) and specifying
332
+ # `"type": "payout"`, a payout session is started.
333
+ # A `sessionURL` is returned in the response, which can be used to redirect
334
+ # the customer to the payout cashier. The customer can then select the
335
+ # payout method, pass required parameters, and the payout will be processed.
336
+ # #### Parameters:
337
+ # | **Parameter** | **Type** | **Description** |
338
+ # | --- | --- | --- |
339
+ # | **customerId** | string | The unique ID of the customer for whom the
340
+ # payout session is created. This ID is generated by the `createCustomer`
341
+ # API. |
342
+ # | **currency** | string | The currency of the payout session (e.g., USD).
343
+ # |
344
+ # | **products** | array | A list of products associated with the payout
345
+ # (e.g., name and price). |
346
+ # | **totalAmount** | string | The total payout amount (optional. calculated
347
+ # dynamically if value is not passed). |
348
+ # | **tax_amount** | string | The tax amount to be applied (optional). |
349
+ # | **tax_percent** | string | The tax percentage to be applied (optional).
350
+ # |
351
+ # | **type** | string | Should be set to "payout" to initiate a payout
352
+ # session. |
353
+ # | **success_redirect** | string | The URL where the customer will be
354
+ # redirected after a successful payout. |
355
+ # | **pending_redirect** | string | The URL where the customer will be
356
+ # redirected after a pending payout. |
357
+ # | **failure_redirect** | string | The URL where the customer will be
358
+ # redirected after a failed payout attempt. |
359
+ # | **success_callback** | string | The callback URL for successful payout.
360
+ # |
361
+ # | **failure_callback** | string | The callback URL for failed payout. |
362
+ # | **extraParam** | object | Contains additional parameters for the payout
363
+ # session. |
364
+ # | **extraParam.showCryptoConversion** | string | Set to "yes" to display
365
+ # cryptocurrency conversion. |
366
+ # | **extraParam.cryptoCurrencies** | string | A list of accepted
367
+ # cryptocurrencies (e.g., BTC, ETH, USDT). |
368
+ # #### Request Headers:
369
+ # - **BrandId**: Your unique brand ID (required).
370
+ #
371
+ # - **Content-Type**: application/json (required).
372
+ #
373
+ # #### Response:
374
+ # The API will return a JSON object containing the `sessionURL` that can be
375
+ # used to redirect the customer to the payout cashier.
376
+ # ``` json
377
+ # {
378
+ # "sessionUrl":
379
+ # "https://api.paysecure.net/payoutSession/68341ad35f895955355d5452/",
380
+ # "brandId": "brand_id_value",
381
+ # "customerId": "67c9983fba18400ab6cceb8f",
382
+ # "sessionId": "68341ad35f895955355d5452",
383
+ # "expiryOn": 1748246103,
384
+ # "createdOn": 1748245203
385
+ # }
386
+ # ```
387
+ # @param [String] brand_id Required parameter: TODO: type description here
388
+ # @param [String] accept Required parameter: TODO: type description here
389
+ # @param [PayoutSessionRequest] body Required parameter: TODO: type
390
+ # description here
391
+ # @return [ApiResponse] Complete http response with raw body and status code.
392
+ def payout_session(brand_id,
393
+ accept,
394
+ body)
395
+ @api_call
396
+ .request(new_request_builder(HttpMethodEnum::POST,
397
+ '/api/v1/createSession',
398
+ Server::SERVER_3)
399
+ .header_param(new_parameter(brand_id, key: 'BrandId')
400
+ .is_required(true))
401
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
402
+ .header_param(new_parameter(accept, key: 'Accept')
403
+ .is_required(true))
404
+ .body_param(new_parameter(body)
405
+ .is_required(true))
406
+ .body_serializer(proc do |param| param.to_json unless param.nil? end))
407
+ .response(new_response_handler
408
+ .deserializer(APIHelper.method(:custom_type_deserializer))
409
+ .deserialize_into(PayoutSession.method(:from_hash))
410
+ .is_api_response(true))
411
+ .execute
412
+ end
413
+
414
+ # This endpoint retrieves the details of a session identified by the
415
+ # provided session ID.
416
+ # > Note that this API only respond once the SessionURL, received in the
417
+ # response for session API, is clicked.
418
+ #
419
+ # > Once the SessionURL is clicked and the user has selected a payment
420
+ # method and click on "Pay" button, a purchase is created on our backend. If
421
+ # you call this API before that, you will get an error.
422
+ # @return [ApiResponse] Complete http response with raw body and status code.
423
+ def check_status_payin
424
+ @api_call
425
+ .request(new_request_builder(HttpMethodEnum::GET,
426
+ '/api/v1/purchases/{Session ID}',
427
+ Server::SERVER_3)
428
+ .header_param(new_parameter('application/json', key: 'accept')))
429
+ .response(new_response_handler
430
+ .deserializer(APIHelper.method(:custom_type_deserializer))
431
+ .deserialize_into(M202Success.method(:from_hash))
432
+ .is_api_response(true)
433
+ .local_error('400',
434
+ 'Bad Request',
435
+ M400BadRequestException)
436
+ .local_error('401',
437
+ 'Unauthorized',
438
+ M401UnauthorizedException))
439
+ .execute
440
+ end
441
+
442
+ # This API tells you about all the details of a Payout, including its
443
+ # history
444
+ # ### Mandatory
445
+ # you need to pass the payoutId or session id in the API URL
446
+ # ### Possible Value of Status
447
+ # | **Status** | **Notes** |
448
+ # | --- | --- |
449
+ # | paid | Transaction Successful |
450
+ # | payout_in_process | payout is under Processing. |
451
+ # | error | Transaction has Failed. |
452
+ # @return [ApiResponse] Complete http response with raw body and status code.
453
+ def check_status_payout
454
+ @api_call
455
+ .request(new_request_builder(HttpMethodEnum::GET,
456
+ '/api/v1/getpayout/{Session ID}',
457
+ Server::SERVER_3)
458
+ .header_param(new_parameter('application/json', key: 'accept')))
459
+ .response(new_response_handler
460
+ .deserializer(APIHelper.method(:custom_type_deserializer))
461
+ .deserialize_into(Success29.method(:from_hash))
462
+ .is_api_response(true))
463
+ .execute
464
+ end
465
+ end
466
+ end