inttegro 5.0.0 → 6.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 (696) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -0
  3. data/README.md +39 -3
  4. data/Rakefile +2 -0
  5. data/lib/inttegro/app/application.rb +69 -0
  6. data/lib/inttegro/app/base.rb +11 -0
  7. data/lib/inttegro/app/create_request.rb +65 -0
  8. data/lib/inttegro/app/create_request_relationship_policy.rb +45 -0
  9. data/lib/inttegro/app/create_response.rb +28 -0
  10. data/lib/inttegro/app/credential_owner.rb +28 -0
  11. data/lib/inttegro/app/looked_up.rb +69 -0
  12. data/lib/inttegro/app/lookup_response.rb +28 -0
  13. data/lib/inttegro/app/management_role.rb +27 -0
  14. data/lib/inttegro/app/relationship.rb +114 -0
  15. data/lib/inttegro/app/relationship_kind.rb +25 -0
  16. data/lib/inttegro/app/relationship_policy.rb +43 -0
  17. data/lib/inttegro/app/relationship_status.rb +34 -0
  18. data/lib/inttegro/app/secret_key.rb +48 -0
  19. data/lib/inttegro/app/update_request.rb +48 -0
  20. data/lib/inttegro/app/update_response.rb +28 -0
  21. data/lib/inttegro/app/updated.rb +62 -0
  22. data/lib/inttegro/balance/base.rb +17 -0
  23. data/lib/inttegro/balance/currency_snapshot.rb +58 -0
  24. data/lib/inttegro/balance/currency_snapshot_refund.rb +27 -0
  25. data/lib/inttegro/balance/currency_snapshot_reserved.rb +27 -0
  26. data/lib/inttegro/balance/lookup_request.rb +21 -0
  27. data/lib/inttegro/balance/snapshot.rb +28 -0
  28. data/lib/inttegro/balance/snapshot_response.rb +28 -0
  29. data/lib/inttegro/balance/value.rb +27 -0
  30. data/lib/inttegro/balance_transaction/amount.rb +34 -0
  31. data/lib/inttegro/balance_transaction/balance_transaction.rb +107 -0
  32. data/lib/inttegro/balance_transaction/base.rb +11 -0
  33. data/lib/inttegro/balance_transaction/lookup_request.rb +27 -0
  34. data/lib/inttegro/balance_transaction/page.rb +42 -0
  35. data/lib/inttegro/balance_transaction/page_request.rb +34 -0
  36. data/lib/inttegro/balance_transaction/page_response.rb +28 -0
  37. data/lib/inttegro/balance_transaction/payout_configuration.rb +35 -0
  38. data/lib/inttegro/balance_transaction/payout_configuration_destination.rb +27 -0
  39. data/lib/inttegro/balance_transaction/questions.rb +48 -0
  40. data/lib/inttegro/balance_transaction/response.rb +30 -0
  41. data/lib/inttegro/balance_transaction/type.rb +27 -0
  42. data/lib/inttegro/bank_account/base.rb +17 -0
  43. data/lib/inttegro/bank_account/created.rb +63 -0
  44. data/lib/inttegro/bank_account/ghana_bank_account.rb +63 -0
  45. data/lib/inttegro/bank_account/type.rb +24 -0
  46. data/lib/inttegro/bank_account/updated.rb +63 -0
  47. data/lib/inttegro/broadcast/base.rb +17 -0
  48. data/lib/inttegro/broadcast/cancel_detail.rb +120 -0
  49. data/lib/inttegro/broadcast/cancel_request.rb +27 -0
  50. data/lib/inttegro/broadcast/cancel_response.rb +28 -0
  51. data/lib/inttegro/broadcast/creation_detail.rb +91 -0
  52. data/lib/inttegro/broadcast/detail.rb +113 -0
  53. data/lib/inttegro/broadcast/error.rb +41 -0
  54. data/lib/inttegro/broadcast/lookup_request.rb +27 -0
  55. data/lib/inttegro/broadcast/lookup_response.rb +28 -0
  56. data/lib/inttegro/broadcast/request.rb +68 -0
  57. data/lib/inttegro/broadcast/request_request_meta.rb +27 -0
  58. data/lib/inttegro/broadcast/response.rb +28 -0
  59. data/lib/inttegro/checkout/base.rb +17 -0
  60. data/lib/inttegro/checkout/billing_details.rb +42 -0
  61. data/lib/inttegro/checkout/confirm_payment_request.rb +48 -0
  62. data/lib/inttegro/checkout/invoice_view.rb +79 -0
  63. data/lib/inttegro/checkout/invoice_view_beneficiary.rb +97 -0
  64. data/lib/inttegro/checkout/invoice_view_format.rb +44 -0
  65. data/lib/inttegro/checkout/invoice_view_format_pdf.rb +27 -0
  66. data/lib/inttegro/checkout/invoice_view_format_receipt.rb +27 -0
  67. data/lib/inttegro/checkout/invoice_view_format_web.rb +27 -0
  68. data/lib/inttegro/checkout/invoice_view_status.rb +39 -0
  69. data/lib/inttegro/checkout/mobile_money_data.rb +42 -0
  70. data/lib/inttegro/checkout/mobile_money_data_network.rb +34 -0
  71. data/lib/inttegro/checkout/order.rb +154 -0
  72. data/lib/inttegro/checkout/order_checkout_settings.rb +34 -0
  73. data/lib/inttegro/checkout/order_created_from.rb +41 -0
  74. data/lib/inttegro/checkout/order_customer.rb +71 -0
  75. data/lib/inttegro/checkout/order_customer_billing_address.rb +21 -0
  76. data/lib/inttegro/checkout/order_customer_shipping_address.rb +21 -0
  77. data/lib/inttegro/checkout/order_line_item_group.rb +36 -0
  78. data/lib/inttegro/checkout/order_payment.rb +160 -0
  79. data/lib/inttegro/checkout/order_payment_billing_details.rb +21 -0
  80. data/lib/inttegro/checkout/order_payment_latest_attempt.rb +21 -0
  81. data/lib/inttegro/checkout/order_payment_latest_error.rb +21 -0
  82. data/lib/inttegro/checkout/order_payment_next_action.rb +21 -0
  83. data/lib/inttegro/checkout/order_payment_payment_method.rb +21 -0
  84. data/lib/inttegro/checkout/order_reference_request.rb +27 -0
  85. data/lib/inttegro/checkout/order_response.rb +38 -0
  86. data/lib/inttegro/checkout/order_status.rb +42 -0
  87. data/lib/inttegro/checkout/pay_request.rb +53 -0
  88. data/lib/inttegro/checkout/pay_request_payment_method_data.rb +47 -0
  89. data/lib/inttegro/checkout/pay_request_payment_method_data_type.rb +25 -0
  90. data/lib/inttegro/checkout/payment_address.rb +76 -0
  91. data/lib/inttegro/checkout/payment_method_data.rb +45 -0
  92. data/lib/inttegro/checkout/payment_method_data_billing_details.rb +43 -0
  93. data/lib/inttegro/checkout/payment_method_data_type.rb +25 -0
  94. data/lib/inttegro/chime/base.rb +11 -0
  95. data/lib/inttegro/chime/chime.rb +99 -0
  96. data/lib/inttegro/chime/email_event.rb +118 -0
  97. data/lib/inttegro/chime/email_mailbox.rb +34 -0
  98. data/lib/inttegro/chime/email_message.rb +79 -0
  99. data/lib/inttegro/chime/email_message_input.rb +63 -0
  100. data/lib/inttegro/chime/email_safety_result.rb +78 -0
  101. data/lib/inttegro/chime/email_scanned_link.rb +56 -0
  102. data/lib/inttegro/chime/email_schema_kind.rb +30 -0
  103. data/lib/inttegro/chime/email_schema_markup.rb +36 -0
  104. data/lib/inttegro/chime/inline_recipient.rb +18 -0
  105. data/lib/inttegro/chime/inline_recipient_variant1.rb +43 -0
  106. data/lib/inttegro/chime/inline_recipient_variant1_phone.rb +27 -0
  107. data/lib/inttegro/chime/inline_recipient_variant1_type.rb +25 -0
  108. data/lib/inttegro/chime/inline_recipient_variant2.rb +43 -0
  109. data/lib/inttegro/chime/inline_recipient_variant2_email.rb +27 -0
  110. data/lib/inttegro/chime/inline_recipient_variant2_type.rb +25 -0
  111. data/lib/inttegro/chime/lookup_request.rb +27 -0
  112. data/lib/inttegro/chime/page.rb +42 -0
  113. data/lib/inttegro/chime/page_request.rb +49 -0
  114. data/lib/inttegro/chime/page_response.rb +28 -0
  115. data/lib/inttegro/chime/recipient.rb +18 -0
  116. data/lib/inttegro/chime/recipient_detail.rb +51 -0
  117. data/lib/inttegro/chime/recipient_detail_email.rb +27 -0
  118. data/lib/inttegro/chime/recipient_detail_phone.rb +27 -0
  119. data/lib/inttegro/chime/recipient_type.rb +27 -0
  120. data/lib/inttegro/chime/response.rb +28 -0
  121. data/lib/inttegro/chime/saved_customer_recipient.rb +35 -0
  122. data/lib/inttegro/chime/send_request.rb +82 -0
  123. data/lib/inttegro/chime/send_request_request_meta.rb +27 -0
  124. data/lib/inttegro/chime/transmission.rb +162 -0
  125. data/lib/inttegro/chime/transport.rb +27 -0
  126. data/lib/inttegro/customer/address.rb +76 -0
  127. data/lib/inttegro/customer/address_input.rb +76 -0
  128. data/lib/inttegro/customer/balance_value.rb +35 -0
  129. data/lib/inttegro/customer/base.rb +11 -0
  130. data/lib/inttegro/customer/create_request.rb +78 -0
  131. data/lib/inttegro/customer/customer.rb +119 -0
  132. data/lib/inttegro/customer/data.rb +56 -0
  133. data/lib/inttegro/customer/lookup_request.rb +27 -0
  134. data/lib/inttegro/customer/page.rb +42 -0
  135. data/lib/inttegro/customer/page_request.rb +34 -0
  136. data/lib/inttegro/customer/page_response.rb +28 -0
  137. data/lib/inttegro/customer/response.rb +37 -0
  138. data/lib/inttegro/customer/update_request.rb +92 -0
  139. data/lib/inttegro/enums.rb +4 -2
  140. data/lib/inttegro/file/actor.rb +48 -0
  141. data/lib/inttegro/file/actor_input.rb +48 -0
  142. data/lib/inttegro/file/api_error.rb +69 -0
  143. data/lib/inttegro/file/base.rb +11 -0
  144. data/lib/inttegro/file/contents_delivery_mode.rb +27 -0
  145. data/lib/inttegro/file/contents_request.rb +43 -0
  146. data/lib/inttegro/file/create_request.rb +48 -0
  147. data/lib/inttegro/file/delete_request.rb +27 -0
  148. data/lib/inttegro/file/delivery.rb +42 -0
  149. data/lib/inttegro/file/disposition.rb +27 -0
  150. data/lib/inttegro/file/file.rb +176 -0
  151. data/lib/inttegro/file/latest_error.rb +48 -0
  152. data/lib/inttegro/file/lookup_request.rb +27 -0
  153. data/lib/inttegro/file/media.rb +90 -0
  154. data/lib/inttegro/file/page.rb +42 -0
  155. data/lib/inttegro/file/page_request.rb +63 -0
  156. data/lib/inttegro/file/page_response.rb +28 -0
  157. data/lib/inttegro/file/party.rb +48 -0
  158. data/lib/inttegro/file/public_storage.rb +35 -0
  159. data/lib/inttegro/file/resource.rb +41 -0
  160. data/lib/inttegro/file/response.rb +29 -0
  161. data/lib/inttegro/file/scan_status.rb +33 -0
  162. data/lib/inttegro/file/service_health_response.rb +48 -0
  163. data/lib/inttegro/file/service_ready_response.rb +55 -0
  164. data/lib/inttegro/file/source.rb +42 -0
  165. data/lib/inttegro/file/source_type.rb +30 -0
  166. data/lib/inttegro/file/status.rb +36 -0
  167. data/lib/inttegro/file/storage_encoding.rb +27 -0
  168. data/lib/inttegro/file/upload_receipt.rb +70 -0
  169. data/lib/inttegro/file_link/access.rb +55 -0
  170. data/lib/inttegro/file_link/access_request.rb +48 -0
  171. data/lib/inttegro/file_link/actor.rb +48 -0
  172. data/lib/inttegro/file_link/base.rb +11 -0
  173. data/lib/inttegro/file_link/create_request.rb +66 -0
  174. data/lib/inttegro/file_link/creation.rb +35 -0
  175. data/lib/inttegro/file_link/delivery.rb +49 -0
  176. data/lib/inttegro/file_link/delivery_mode.rb +30 -0
  177. data/lib/inttegro/file_link/file_link.rb +136 -0
  178. data/lib/inttegro/file_link/kind.rb +24 -0
  179. data/lib/inttegro/file_link/lookup_request.rb +27 -0
  180. data/lib/inttegro/file_link/page.rb +42 -0
  181. data/lib/inttegro/file_link/page_request.rb +49 -0
  182. data/lib/inttegro/file_link/page_response.rb +28 -0
  183. data/lib/inttegro/file_link/response.rb +28 -0
  184. data/lib/inttegro/file_link/revoke_request.rb +35 -0
  185. data/lib/inttegro/file_link/status.rb +33 -0
  186. data/lib/inttegro/file_reference/base.rb +17 -0
  187. data/lib/inttegro/file_reference/input.rb +55 -0
  188. data/lib/inttegro/file_reference/reconcile_request.rb +42 -0
  189. data/lib/inttegro/file_reference/reconciliation.rb +27 -0
  190. data/lib/inttegro/financial_account/address.rb +76 -0
  191. data/lib/inttegro/financial_account/bank.rb +36 -0
  192. data/lib/inttegro/financial_account/bank_request.rb +97 -0
  193. data/lib/inttegro/financial_account/bank_request_bank_account.rb +36 -0
  194. data/lib/inttegro/financial_account/bank_request_bank_account_ghana_bank_account.rb +50 -0
  195. data/lib/inttegro/financial_account/bank_request_type.rb +25 -0
  196. data/lib/inttegro/financial_account/base.rb +11 -0
  197. data/lib/inttegro/financial_account/compact.rb +70 -0
  198. data/lib/inttegro/financial_account/connect_response.rb +28 -0
  199. data/lib/inttegro/financial_account/connected.rb +158 -0
  200. data/lib/inttegro/financial_account/create_request.rb +19 -0
  201. data/lib/inttegro/financial_account/create_response.rb +28 -0
  202. data/lib/inttegro/financial_account/created.rb +149 -0
  203. data/lib/inttegro/financial_account/created_address.rb +90 -0
  204. data/lib/inttegro/financial_account/created_bank.rb +43 -0
  205. data/lib/inttegro/financial_account/created_owner.rb +35 -0
  206. data/lib/inttegro/financial_account/details.rb +125 -0
  207. data/lib/inttegro/financial_account/disable_pull_response.rb +28 -0
  208. data/lib/inttegro/financial_account/disable_push_response.rb +28 -0
  209. data/lib/inttegro/financial_account/disable_request.rb +35 -0
  210. data/lib/inttegro/financial_account/disconnect_response.rb +28 -0
  211. data/lib/inttegro/financial_account/dosh_request.rb +97 -0
  212. data/lib/inttegro/financial_account/dosh_request_type.rb +25 -0
  213. data/lib/inttegro/financial_account/enable_pull_request.rb +41 -0
  214. data/lib/inttegro/financial_account/enable_pull_response.rb +28 -0
  215. data/lib/inttegro/financial_account/enable_push_response.rb +28 -0
  216. data/lib/inttegro/financial_account/financial_account.rb +163 -0
  217. data/lib/inttegro/financial_account/financial_account_page_request.rb +34 -0
  218. data/lib/inttegro/financial_account/id_request.rb +27 -0
  219. data/lib/inttegro/financial_account/lookup_response.rb +28 -0
  220. data/lib/inttegro/financial_account/mandate.rb +48 -0
  221. data/lib/inttegro/financial_account/owner.rb +35 -0
  222. data/lib/inttegro/financial_account/owner_input.rb +35 -0
  223. data/lib/inttegro/financial_account/owner_input_address.rb +76 -0
  224. data/lib/inttegro/financial_account/owner_update_input.rb +35 -0
  225. data/lib/inttegro/financial_account/owner_update_input_address.rb +76 -0
  226. data/lib/inttegro/financial_account/page.rb +42 -0
  227. data/lib/inttegro/financial_account/page_financial_accounts_request.rb +34 -0
  228. data/lib/inttegro/financial_account/page_response.rb +37 -0
  229. data/lib/inttegro/financial_account/page_response_inline.rb +28 -0
  230. data/lib/inttegro/financial_account/pull_configuration.rb +35 -0
  231. data/lib/inttegro/financial_account/push_configuration.rb +27 -0
  232. data/lib/inttegro/financial_account/reconnect_response.rb +28 -0
  233. data/lib/inttegro/financial_account/request_base.rb +88 -0
  234. data/lib/inttegro/financial_account/request_base_pull_configuration.rb +27 -0
  235. data/lib/inttegro/financial_account/request_base_push_configuration.rb +27 -0
  236. data/lib/inttegro/financial_account/type.rb +30 -0
  237. data/lib/inttegro/financial_account/update_request.rb +64 -0
  238. data/lib/inttegro/financial_account/update_response.rb +28 -0
  239. data/lib/inttegro/financial_account/updated.rb +165 -0
  240. data/lib/inttegro/financial_account/updated_address.rb +83 -0
  241. data/lib/inttegro/financial_account/updated_bank.rb +43 -0
  242. data/lib/inttegro/financial_account/updated_owner.rb +35 -0
  243. data/lib/inttegro/financial_account/updated_wallet.rb +43 -0
  244. data/lib/inttegro/financial_account/verification.rb +42 -0
  245. data/lib/inttegro/financial_account/verification_request.rb +41 -0
  246. data/lib/inttegro/financial_account/wallet.rb +43 -0
  247. data/lib/inttegro/financial_account/wallet_mobile_money.rb +35 -0
  248. data/lib/inttegro/financial_account/wallet_request.rb +96 -0
  249. data/lib/inttegro/financial_account/wallet_request_type.rb +25 -0
  250. data/lib/inttegro/financial_account/wallet_request_wallet.rb +36 -0
  251. data/lib/inttegro/financial_account/wallet_request_wallet_mobile_money.rb +35 -0
  252. data/lib/inttegro/financial_account/wire_page.rb +42 -0
  253. data/lib/inttegro/financial_account/wire_page_accounts_item.rb +85 -0
  254. data/lib/inttegro/generated/enums.rb +80 -642
  255. data/lib/inttegro/generated/models.rb +545 -3867
  256. data/lib/inttegro/generated/operations.rb +236 -236
  257. data/lib/inttegro/message_template/attachment_ids.rb +17 -0
  258. data/lib/inttegro/message_template/base.rb +11 -0
  259. data/lib/inttegro/message_template/channel.rb +27 -0
  260. data/lib/inttegro/message_template/create_email_request.rb +81 -0
  261. data/lib/inttegro/message_template/create_email_request_channel.rb +25 -0
  262. data/lib/inttegro/message_template/create_fields.rb +64 -0
  263. data/lib/inttegro/message_template/create_request.rb +18 -0
  264. data/lib/inttegro/message_template/create_sms_request.rb +72 -0
  265. data/lib/inttegro/message_template/create_sms_request_channel.rb +25 -0
  266. data/lib/inttegro/message_template/email_content.rb +56 -0
  267. data/lib/inttegro/message_template/envelope.rb +28 -0
  268. data/lib/inttegro/message_template/id_request.rb +27 -0
  269. data/lib/inttegro/message_template/mailbox.rb +34 -0
  270. data/lib/inttegro/message_template/message_template.rb +158 -0
  271. data/lib/inttegro/message_template/page.rb +42 -0
  272. data/lib/inttegro/message_template/page_envelope.rb +28 -0
  273. data/lib/inttegro/message_template/page_request.rb +64 -0
  274. data/lib/inttegro/message_template/preview.rb +36 -0
  275. data/lib/inttegro/message_template/reference.rb +35 -0
  276. data/lib/inttegro/message_template/render_preview_request.rb +28 -0
  277. data/lib/inttegro/message_template/rendered.rb +53 -0
  278. data/lib/inttegro/message_template/rendered_email.rb +71 -0
  279. data/lib/inttegro/message_template/rendered_sms.rb +27 -0
  280. data/lib/inttegro/message_template/safety_result.rb +78 -0
  281. data/lib/inttegro/message_template/scanned_link.rb +55 -0
  282. data/lib/inttegro/message_template/sms_content.rb +27 -0
  283. data/lib/inttegro/message_template/status.rb +30 -0
  284. data/lib/inttegro/message_template/update_request.rb +96 -0
  285. data/lib/inttegro/message_template/variable.rb +64 -0
  286. data/lib/inttegro/message_template/variable_input.rb +64 -0
  287. data/lib/inttegro/message_template/variable_item.rb +56 -0
  288. data/lib/inttegro/message_template/variable_item_input.rb +56 -0
  289. data/lib/inttegro/message_template/variable_item_type.rb +49 -0
  290. data/lib/inttegro/message_template/variable_type.rb +52 -0
  291. data/lib/inttegro/message_template/variables.rb +21 -0
  292. data/lib/inttegro/model_serialization.rb +85 -0
  293. data/lib/inttegro/models.rb +12 -156
  294. data/lib/inttegro/money/amount.rb +36 -0
  295. data/lib/inttegro/money/amount_params.rb +36 -0
  296. data/lib/inttegro/money/base.rb +17 -0
  297. data/lib/inttegro/money/currency.rb +37 -0
  298. data/lib/inttegro/money/currency_deserialization.rb +24 -0
  299. data/lib/inttegro/order/address.rb +76 -0
  300. data/lib/inttegro/order/base.rb +11 -0
  301. data/lib/inttegro/order/cancel_request.rb +42 -0
  302. data/lib/inttegro/order/checkout_settings.rb +34 -0
  303. data/lib/inttegro/order/complete_envelope.rb +29 -0
  304. data/lib/inttegro/order/complete_request.rb +36 -0
  305. data/lib/inttegro/order/create_existing_customer.rb +147 -0
  306. data/lib/inttegro/order/create_existing_customer_checkout_settings.rb +35 -0
  307. data/lib/inttegro/order/create_existing_customer_request_meta.rb +27 -0
  308. data/lib/inttegro/order/create_new_customer.rb +149 -0
  309. data/lib/inttegro/order/create_new_customer_checkout_settings.rb +35 -0
  310. data/lib/inttegro/order/create_new_customer_request_meta.rb +27 -0
  311. data/lib/inttegro/order/created_from.rb +42 -0
  312. data/lib/inttegro/order/created_from_resource_type.rb +25 -0
  313. data/lib/inttegro/order/customer.rb +70 -0
  314. data/lib/inttegro/order/discount.rb +21 -0
  315. data/lib/inttegro/order/discount_line_item.rb +36 -0
  316. data/lib/inttegro/order/discount_line_item_type.rb +24 -0
  317. data/lib/inttegro/order/document_delivery.rb +67 -0
  318. data/lib/inttegro/order/document_delivery_attempt.rb +35 -0
  319. data/lib/inttegro/order/document_delivery_failure.rb +35 -0
  320. data/lib/inttegro/order/document_delivery_request.rb +27 -0
  321. data/lib/inttegro/order/document_delivery_result.rb +46 -0
  322. data/lib/inttegro/order/document_format.rb +27 -0
  323. data/lib/inttegro/order/document_kind.rb +27 -0
  324. data/lib/inttegro/order/envelope.rb +29 -0
  325. data/lib/inttegro/order/fee_line_item.rb +36 -0
  326. data/lib/inttegro/order/fee_line_item_fee.rb +56 -0
  327. data/lib/inttegro/order/fee_line_item_type.rb +24 -0
  328. data/lib/inttegro/order/finalize_envelope.rb +29 -0
  329. data/lib/inttegro/order/finalize_request.rb +27 -0
  330. data/lib/inttegro/order/invoice.rb +35 -0
  331. data/lib/inttegro/order/invoice_format.rb +42 -0
  332. data/lib/inttegro/order/line_item.rb +20 -0
  333. data/lib/inttegro/order/line_item_group.rb +36 -0
  334. data/lib/inttegro/order/lookup_request.rb +27 -0
  335. data/lib/inttegro/order/order.rb +177 -0
  336. data/lib/inttegro/order/page.rb +42 -0
  337. data/lib/inttegro/order/page_envelope.rb +28 -0
  338. data/lib/inttegro/order/page_request.rb +42 -0
  339. data/lib/inttegro/order/pay_request.rb +51 -0
  340. data/lib/inttegro/order/payout_settings_request.rb +35 -0
  341. data/lib/inttegro/order/payout_settings_request_destination.rb +27 -0
  342. data/lib/inttegro/order/product_line_item.rb +36 -0
  343. data/lib/inttegro/order/product_line_item_product.rb +106 -0
  344. data/lib/inttegro/order/product_line_item_type.rb +24 -0
  345. data/lib/inttegro/order/questions.rb +53 -0
  346. data/lib/inttegro/order/shipping_line_item.rb +36 -0
  347. data/lib/inttegro/order/shipping_line_item_shipping.rb +49 -0
  348. data/lib/inttegro/order/shipping_line_item_type.rb +24 -0
  349. data/lib/inttegro/order/status.rb +42 -0
  350. data/lib/inttegro/order/update_request.rb +117 -0
  351. data/lib/inttegro/order/update_request_payment_method_data.rb +38 -0
  352. data/lib/inttegro/order/update_request_payment_method_data_type.rb +24 -0
  353. data/lib/inttegro/otp/alphabet_type.rb +30 -0
  354. data/lib/inttegro/otp/base.rb +17 -0
  355. data/lib/inttegro/otp/initiate_request.rb +91 -0
  356. data/lib/inttegro/otp/initiate_response.rb +28 -0
  357. data/lib/inttegro/otp/lookup_request.rb +27 -0
  358. data/lib/inttegro/otp/lookup_response.rb +28 -0
  359. data/lib/inttegro/otp/status.rb +39 -0
  360. data/lib/inttegro/otp/transaction.rb +78 -0
  361. data/lib/inttegro/otp/transmission.rb +57 -0
  362. data/lib/inttegro/otp/transmission_sent_via.rb +24 -0
  363. data/lib/inttegro/otp/transmission_status.rb +30 -0
  364. data/lib/inttegro/otp/verification.rb +36 -0
  365. data/lib/inttegro/otp/verification_attempt.rb +56 -0
  366. data/lib/inttegro/otp/verification_attempt_result.rb +35 -0
  367. data/lib/inttegro/otp/verification_verdict.rb +27 -0
  368. data/lib/inttegro/otp/verify_request.rb +41 -0
  369. data/lib/inttegro/payment/attempt_status.rb +42 -0
  370. data/lib/inttegro/payment/base.rb +11 -0
  371. data/lib/inttegro/payment/billing_details.rb +28 -0
  372. data/lib/inttegro/payment/billing_details_owner.rb +35 -0
  373. data/lib/inttegro/payment/confirm_request.rb +48 -0
  374. data/lib/inttegro/payment/confirmation_channel.rb +30 -0
  375. data/lib/inttegro/payment/customer.rb +70 -0
  376. data/lib/inttegro/payment/latest_attempt.rb +71 -0
  377. data/lib/inttegro/payment/latest_attempt_error.rb +27 -0
  378. data/lib/inttegro/payment/latest_error.rb +55 -0
  379. data/lib/inttegro/payment/method_snapshot_bank_account.rb +35 -0
  380. data/lib/inttegro/payment/method_snapshot_bank_account_ghana_bank_account.rb +56 -0
  381. data/lib/inttegro/payment/method_snapshot_mobile_money.rb +42 -0
  382. data/lib/inttegro/payment/method_snapshot_owner.rb +35 -0
  383. data/lib/inttegro/payment/next_action.rb +60 -0
  384. data/lib/inttegro/payment/next_action_authorize.rb +41 -0
  385. data/lib/inttegro/payment/next_action_confirm_payment.rb +64 -0
  386. data/lib/inttegro/payment/next_action_confirm_payment_attempt.rb +55 -0
  387. data/lib/inttegro/payment/next_action_confirm_payment_request.rb +63 -0
  388. data/lib/inttegro/payment/next_action_redirect.rb +42 -0
  389. data/lib/inttegro/payment/next_action_redirect_latest_visit.rb +41 -0
  390. data/lib/inttegro/payment/next_action_request_confirmation.rb +35 -0
  391. data/lib/inttegro/payment/next_action_request_confirmation_last_request.rb +64 -0
  392. data/lib/inttegro/payment/next_action_type.rb +36 -0
  393. data/lib/inttegro/payment/payment.rb +177 -0
  394. data/lib/inttegro/payment/payment_method.rb +95 -0
  395. data/lib/inttegro/payment/payout_configuration.rb +35 -0
  396. data/lib/inttegro/payment/payout_configuration_destination.rb +27 -0
  397. data/lib/inttegro/payment/questions.rb +47 -0
  398. data/lib/inttegro/payment/result.rb +56 -0
  399. data/lib/inttegro/payment/result_status.rb +36 -0
  400. data/lib/inttegro/payment/status.rb +48 -0
  401. data/lib/inttegro/payment_method/activate_request.rb +27 -0
  402. data/lib/inttegro/payment_method/activate_response.rb +28 -0
  403. data/lib/inttegro/payment_method/archive_request.rb +27 -0
  404. data/lib/inttegro/payment_method/archive_response.rb +28 -0
  405. data/lib/inttegro/payment_method/bank_account.rb +36 -0
  406. data/lib/inttegro/payment_method/bank_account_ghana_bank_account.rb +55 -0
  407. data/lib/inttegro/payment_method/base.rb +11 -0
  408. data/lib/inttegro/payment_method/card.rb +21 -0
  409. data/lib/inttegro/payment_method/data.rb +36 -0
  410. data/lib/inttegro/payment_method/data_mobile_money.rb +35 -0
  411. data/lib/inttegro/payment_method/data_type.rb +24 -0
  412. data/lib/inttegro/payment_method/deletion.rb +20 -0
  413. data/lib/inttegro/payment_method/disactivate_request.rb +27 -0
  414. data/lib/inttegro/payment_method/disactivate_response.rb +28 -0
  415. data/lib/inttegro/payment_method/get_settings_request.rb +21 -0
  416. data/lib/inttegro/payment_method/get_settings_response.rb +28 -0
  417. data/lib/inttegro/payment_method/lookup_request.rb +27 -0
  418. data/lib/inttegro/payment_method/lookup_response.rb +28 -0
  419. data/lib/inttegro/payment_method/mobile_money.rb +42 -0
  420. data/lib/inttegro/payment_method/owner.rb +35 -0
  421. data/lib/inttegro/payment_method/owner_address.rb +76 -0
  422. data/lib/inttegro/payment_method/owner_input.rb +35 -0
  423. data/lib/inttegro/payment_method/owner_input_address.rb +76 -0
  424. data/lib/inttegro/payment_method/page.rb +42 -0
  425. data/lib/inttegro/payment_method/page_request.rb +42 -0
  426. data/lib/inttegro/payment_method/page_response.rb +28 -0
  427. data/lib/inttegro/payment_method/payment_method.rb +138 -0
  428. data/lib/inttegro/payment_method/questions.rb +35 -0
  429. data/lib/inttegro/payment_method/settings.rb +49 -0
  430. data/lib/inttegro/payment_method/supplied.rb +62 -0
  431. data/lib/inttegro/payment_method/tokenize_base.rb +43 -0
  432. data/lib/inttegro/payment_method/tokenize_base_type.rb +25 -0
  433. data/lib/inttegro/payment_method/tokenize_mobile_money_request.rb +59 -0
  434. data/lib/inttegro/payment_method/tokenize_mobile_money_request_mobile_money.rb +36 -0
  435. data/lib/inttegro/payment_method/tokenize_mobile_money_request_type.rb +25 -0
  436. data/lib/inttegro/payment_method/tokenize_response.rb +28 -0
  437. data/lib/inttegro/payment_method/type.rb +33 -0
  438. data/lib/inttegro/payment_method/type_setting.rb +56 -0
  439. data/lib/inttegro/payment_method/unarchive_request.rb +27 -0
  440. data/lib/inttegro/payment_method/unarchive_response.rb +28 -0
  441. data/lib/inttegro/payment_method/update_request.rb +57 -0
  442. data/lib/inttegro/payment_method/update_request_owner.rb +35 -0
  443. data/lib/inttegro/payment_method/update_request_owner_address.rb +76 -0
  444. data/lib/inttegro/payment_method/update_response.rb +28 -0
  445. data/lib/inttegro/payment_method/verification.rb +55 -0
  446. data/lib/inttegro/payout/base.rb +11 -0
  447. data/lib/inttegro/payout/cancel_request.rb +27 -0
  448. data/lib/inttegro/payout/cancel_response.rb +28 -0
  449. data/lib/inttegro/payout/disable_automatic_request.rb +21 -0
  450. data/lib/inttegro/payout/disable_automatic_response.rb +28 -0
  451. data/lib/inttegro/payout/enable_automatic_request.rb +21 -0
  452. data/lib/inttegro/payout/enable_automatic_response.rb +28 -0
  453. data/lib/inttegro/payout/error.rb +48 -0
  454. data/lib/inttegro/payout/get_settings_request.rb +21 -0
  455. data/lib/inttegro/payout/get_settings_response.rb +28 -0
  456. data/lib/inttegro/payout/lookup_request.rb +27 -0
  457. data/lib/inttegro/payout/lookup_response.rb +28 -0
  458. data/lib/inttegro/payout/page.rb +42 -0
  459. data/lib/inttegro/payout/page_request.rb +34 -0
  460. data/lib/inttegro/payout/page_response.rb +28 -0
  461. data/lib/inttegro/payout/payout.rb +176 -0
  462. data/lib/inttegro/payout/set_destinations_request.rb +27 -0
  463. data/lib/inttegro/payout/set_destinations_response.rb +28 -0
  464. data/lib/inttegro/payout/settings_lookup.rb +42 -0
  465. data/lib/inttegro/payout/settings_lookup_schedule.rb +63 -0
  466. data/lib/inttegro/payout/settings_lookup_schedule_aging_spec.rb +41 -0
  467. data/lib/inttegro/payout/settings_mutation.rb +42 -0
  468. data/lib/inttegro/payout/settings_mutation_schedule.rb +70 -0
  469. data/lib/inttegro/payout/settings_mutation_schedule_spec.rb +48 -0
  470. data/lib/inttegro/payout/status.rb +42 -0
  471. data/lib/inttegro/price/action_request.rb +27 -0
  472. data/lib/inttegro/price/base.rb +11 -0
  473. data/lib/inttegro/price/catalog_price.rb +92 -0
  474. data/lib/inttegro/price/catalog_price_params.rb +49 -0
  475. data/lib/inttegro/price/embedded_product.rb +159 -0
  476. data/lib/inttegro/price/lookup_request.rb +27 -0
  477. data/lib/inttegro/price/page.rb +42 -0
  478. data/lib/inttegro/price/page_item.rb +17 -0
  479. data/lib/inttegro/price/page_request.rb +41 -0
  480. data/lib/inttegro/price/page_response.rb +37 -0
  481. data/lib/inttegro/price/price.rb +34 -0
  482. data/lib/inttegro/price/price_params.rb +36 -0
  483. data/lib/inttegro/price/response.rb +37 -0
  484. data/lib/inttegro/price/update_request.rb +41 -0
  485. data/lib/inttegro/product/action_request.rb +27 -0
  486. data/lib/inttegro/product/add_price_request.rb +49 -0
  487. data/lib/inttegro/product/add_price_response.rb +37 -0
  488. data/lib/inttegro/product/attribute.rb +34 -0
  489. data/lib/inttegro/product/base.rb +11 -0
  490. data/lib/inttegro/product/catalog_with_price_data.rb +42 -0
  491. data/lib/inttegro/product/catalog_with_price_reference.rb +42 -0
  492. data/lib/inttegro/product/create_request.rb +124 -0
  493. data/lib/inttegro/product/delivery.rb +21 -0
  494. data/lib/inttegro/product/details.rb +22 -0
  495. data/lib/inttegro/product/dimensions.rb +44 -0
  496. data/lib/inttegro/product/dimensions_custom.rb +41 -0
  497. data/lib/inttegro/product/dimensions_digital.rb +41 -0
  498. data/lib/inttegro/product/dimensions_physical.rb +76 -0
  499. data/lib/inttegro/product/download.rb +21 -0
  500. data/lib/inttegro/product/inline_details.rb +79 -0
  501. data/lib/inttegro/product/line_item.rb +39 -0
  502. data/lib/inttegro/product/line_item_type.rb +24 -0
  503. data/lib/inttegro/product/lookup_request.rb +27 -0
  504. data/lib/inttegro/product/media.rb +83 -0
  505. data/lib/inttegro/product/page.rb +42 -0
  506. data/lib/inttegro/product/page_request.rb +34 -0
  507. data/lib/inttegro/product/page_response.rb +28 -0
  508. data/lib/inttegro/product/price_summary.rb +49 -0
  509. data/lib/inttegro/product/product.rb +165 -0
  510. data/lib/inttegro/product/questions.rb +35 -0
  511. data/lib/inttegro/product/render.rb +21 -0
  512. data/lib/inttegro/product/response.rb +37 -0
  513. data/lib/inttegro/product/service.rb +21 -0
  514. data/lib/inttegro/product/set_default_unit_price_request.rb +22 -0
  515. data/lib/inttegro/product/shipment.rb +68 -0
  516. data/lib/inttegro/product/shipment_input.rb +28 -0
  517. data/lib/inttegro/product/shipment_input_type.rb +33 -0
  518. data/lib/inttegro/product/shipment_type.rb +36 -0
  519. data/lib/inttegro/product/stream.rb +21 -0
  520. data/lib/inttegro/product/type.rb +39 -0
  521. data/lib/inttegro/product/update_request.rb +124 -0
  522. data/lib/inttegro/product/update_response.rb +28 -0
  523. data/lib/inttegro/product/updated.rb +122 -0
  524. data/lib/inttegro/purchase_intent/activity.rb +122 -0
  525. data/lib/inttegro/purchase_intent/activity_attribution.rb +83 -0
  526. data/lib/inttegro/purchase_intent/activity_log.rb +28 -0
  527. data/lib/inttegro/purchase_intent/activity_type.rb +37 -0
  528. data/lib/inttegro/purchase_intent/activity_visitor.rb +97 -0
  529. data/lib/inttegro/purchase_intent/base.rb +11 -0
  530. data/lib/inttegro/purchase_intent/cancel_request.rb +34 -0
  531. data/lib/inttegro/purchase_intent/create_request.rb +75 -0
  532. data/lib/inttegro/purchase_intent/create_request_price.rb +51 -0
  533. data/lib/inttegro/purchase_intent/create_request_price_original.rb +35 -0
  534. data/lib/inttegro/purchase_intent/create_request_product.rb +34 -0
  535. data/lib/inttegro/purchase_intent/create_request_quantity.rb +35 -0
  536. data/lib/inttegro/purchase_intent/create_request_usage.rb +34 -0
  537. data/lib/inttegro/purchase_intent/lookup_request.rb +27 -0
  538. data/lib/inttegro/purchase_intent/merchant.rb +42 -0
  539. data/lib/inttegro/purchase_intent/original_price.rb +49 -0
  540. data/lib/inttegro/purchase_intent/page.rb +42 -0
  541. data/lib/inttegro/purchase_intent/page_request.rb +34 -0
  542. data/lib/inttegro/purchase_intent/page_response.rb +28 -0
  543. data/lib/inttegro/purchase_intent/price.rb +57 -0
  544. data/lib/inttegro/purchase_intent/product.rb +174 -0
  545. data/lib/inttegro/purchase_intent/product_attributes_item.rb +34 -0
  546. data/lib/inttegro/purchase_intent/purchase_intent.rb +128 -0
  547. data/lib/inttegro/purchase_intent/quantity.rb +36 -0
  548. data/lib/inttegro/purchase_intent/questions.rb +38 -0
  549. data/lib/inttegro/purchase_intent/response.rb +28 -0
  550. data/lib/inttegro/purchase_intent/status.rb +33 -0
  551. data/lib/inttegro/purchase_intent/update_request.rb +61 -0
  552. data/lib/inttegro/purchase_intent/update_request_quantity.rb +36 -0
  553. data/lib/inttegro/purchase_intent/usage.rb +43 -0
  554. data/lib/inttegro/purchase_intent/usage_order.rb +34 -0
  555. data/lib/inttegro/purchase_intent/variant.rb +64 -0
  556. data/lib/inttegro/purchase_intent/variant_axis.rb +41 -0
  557. data/lib/inttegro/purchase_intent/variant_set.rb +78 -0
  558. data/lib/inttegro/refund/base.rb +11 -0
  559. data/lib/inttegro/refund/cancel_request.rb +35 -0
  560. data/lib/inttegro/refund/create_line_item.rb +51 -0
  561. data/lib/inttegro/refund/create_request.rb +73 -0
  562. data/lib/inttegro/refund/line_item.rb +64 -0
  563. data/lib/inttegro/refund/lookup_request.rb +27 -0
  564. data/lib/inttegro/refund/page.rb +42 -0
  565. data/lib/inttegro/refund/page_request.rb +34 -0
  566. data/lib/inttegro/refund/page_response.rb +28 -0
  567. data/lib/inttegro/refund/reason.rb +48 -0
  568. data/lib/inttegro/refund/refund.rb +121 -0
  569. data/lib/inttegro/refund/request_meta.rb +27 -0
  570. data/lib/inttegro/refund/response.rb +28 -0
  571. data/lib/inttegro/refund/status.rb +36 -0
  572. data/lib/inttegro/resources/apps.rb +19 -0
  573. data/lib/inttegro/resources/balance_transactions.rb +13 -1
  574. data/lib/inttegro/resources/balances.rb +8 -1
  575. data/lib/inttegro/resources/broadcasts.rb +14 -2
  576. data/lib/inttegro/resources/chimes.rb +27 -3
  577. data/lib/inttegro/resources/customers.rb +21 -1
  578. data/lib/inttegro/resources/file_links.rb +32 -2
  579. data/lib/inttegro/resources/file_references.rb +9 -1
  580. data/lib/inttegro/resources/files.rb +30 -1
  581. data/lib/inttegro/resources/financial_accounts.rb +51 -1
  582. data/lib/inttegro/resources/keys.rb +41 -3
  583. data/lib/inttegro/resources/message_templates.rb +38 -2
  584. data/lib/inttegro/resources/orders.rb +18 -13
  585. data/lib/inttegro/resources/otp.rb +24 -4
  586. data/lib/inttegro/resources/payment_methods.rb +33 -8
  587. data/lib/inttegro/resources/payouts.rb +26 -14
  588. data/lib/inttegro/resources/prices.rb +39 -7
  589. data/lib/inttegro/resources/products.rb +43 -3
  590. data/lib/inttegro/resources/purchase_intents.rb +25 -1
  591. data/lib/inttegro/resources/refunds.rb +21 -1
  592. data/lib/inttegro/resources/schedules.rb +14 -2
  593. data/lib/inttegro/resources/spec.rb +8 -1
  594. data/lib/inttegro/resources/upload_requests.rb +37 -4
  595. data/lib/inttegro/schedule/base.rb +17 -0
  596. data/lib/inttegro/schedule/cancel_detail.rb +120 -0
  597. data/lib/inttegro/schedule/cancel_request.rb +27 -0
  598. data/lib/inttegro/schedule/cancel_response.rb +28 -0
  599. data/lib/inttegro/schedule/chime_request.rb +81 -0
  600. data/lib/inttegro/schedule/chime_request_request_meta.rb +27 -0
  601. data/lib/inttegro/schedule/creation_detail.rb +98 -0
  602. data/lib/inttegro/schedule/detail.rb +113 -0
  603. data/lib/inttegro/schedule/error.rb +41 -0
  604. data/lib/inttegro/schedule/lookup_request.rb +27 -0
  605. data/lib/inttegro/schedule/lookup_response.rb +28 -0
  606. data/lib/inttegro/schedule/payout_request.rb +48 -0
  607. data/lib/inttegro/schedule/payout_response.rb +28 -0
  608. data/lib/inttegro/schedule/response.rb +28 -0
  609. data/lib/inttegro/secret_key/auth_result.rb +27 -0
  610. data/lib/inttegro/secret_key/base.rb +11 -0
  611. data/lib/inttegro/secret_key/destroy_request.rb +27 -0
  612. data/lib/inttegro/secret_key/destroy_response.rb +29 -0
  613. data/lib/inttegro/secret_key/generate_request.rb +28 -0
  614. data/lib/inttegro/secret_key/generate_response.rb +28 -0
  615. data/lib/inttegro/secret_key/generated.rb +56 -0
  616. data/lib/inttegro/secret_key/lookup_request.rb +27 -0
  617. data/lib/inttegro/secret_key/lookup_response.rb +29 -0
  618. data/lib/inttegro/secret_key/page.rb +63 -0
  619. data/lib/inttegro/secret_key/page_request.rb +41 -0
  620. data/lib/inttegro/secret_key/page_response.rb +28 -0
  621. data/lib/inttegro/secret_key/secret_key.rb +98 -0
  622. data/lib/inttegro/secret_key/status.rb +30 -0
  623. data/lib/inttegro/secret_key/token_type.rb +24 -0
  624. data/lib/inttegro/secret_key/update_request.rb +34 -0
  625. data/lib/inttegro/secret_key/update_response.rb +29 -0
  626. data/lib/inttegro/secret_key/usage.rb +37 -0
  627. data/lib/inttegro/secret_key/usage_page.rb +63 -0
  628. data/lib/inttegro/secret_key/usage_request.rb +48 -0
  629. data/lib/inttegro/secret_key/usage_row.rb +42 -0
  630. data/lib/inttegro/shared/address.rb +83 -0
  631. data/lib/inttegro/shared/base.rb +17 -0
  632. data/lib/inttegro/shared/billing_details.rb +49 -0
  633. data/lib/inttegro/shared/content_safety_status.rb +30 -0
  634. data/lib/inttegro/shared/country_bank.rb +56 -0
  635. data/lib/inttegro/shared/country_bank_branch.rb +41 -0
  636. data/lib/inttegro/shared/country_bank_directory.rb +42 -0
  637. data/lib/inttegro/shared/country_specification.rb +91 -0
  638. data/lib/inttegro/shared/country_specifications.rb +28 -0
  639. data/lib/inttegro/shared/delivery_channel.rb +27 -0
  640. data/lib/inttegro/shared/dosh_account.rb +22 -0
  641. data/lib/inttegro/shared/error_envelope.rb +29 -0
  642. data/lib/inttegro/shared/error_payload.rb +76 -0
  643. data/lib/inttegro/shared/fee_details.rb +64 -0
  644. data/lib/inttegro/shared/fee_line_item.rb +36 -0
  645. data/lib/inttegro/shared/fee_line_item_type.rb +24 -0
  646. data/lib/inttegro/shared/financial_institution.rb +64 -0
  647. data/lib/inttegro/shared/financial_institution_bank.rb +56 -0
  648. data/lib/inttegro/shared/financial_institution_bank_branch.rb +41 -0
  649. data/lib/inttegro/shared/financial_institution_mobile_money_provider.rb +28 -0
  650. data/lib/inttegro/shared/invoice_settings.rb +51 -0
  651. data/lib/inttegro/shared/line_item.rb +19 -0
  652. data/lib/inttegro/shared/list_country_specs_request.rb +21 -0
  653. data/lib/inttegro/shared/mobile_money.rb +35 -0
  654. data/lib/inttegro/shared/mobile_money_network.rb +33 -0
  655. data/lib/inttegro/shared/request_confirmation_request.rb +27 -0
  656. data/lib/inttegro/shared/resource_supply.rb +62 -0
  657. data/lib/inttegro/shared/shipping.rb +28 -0
  658. data/lib/inttegro/shared/shipping_details.rb +50 -0
  659. data/lib/inttegro/shared/shipping_line_item.rb +36 -0
  660. data/lib/inttegro/shared/shipping_line_item_type.rb +24 -0
  661. data/lib/inttegro/shared/upload_fulfillment.rb +36 -0
  662. data/lib/inttegro/shared/upload_review_decision.rb +28 -0
  663. data/lib/inttegro/shared/upload_review_type.rb +27 -0
  664. data/lib/inttegro/upload_request/actor.rb +48 -0
  665. data/lib/inttegro/upload_request/attempt.rb +113 -0
  666. data/lib/inttegro/upload_request/attempts.rb +48 -0
  667. data/lib/inttegro/upload_request/attempts_request.rb +27 -0
  668. data/lib/inttegro/upload_request/base.rb +11 -0
  669. data/lib/inttegro/upload_request/cancel_request.rb +35 -0
  670. data/lib/inttegro/upload_request/constraints.rb +62 -0
  671. data/lib/inttegro/upload_request/create_request.rb +97 -0
  672. data/lib/inttegro/upload_request/details.rb +205 -0
  673. data/lib/inttegro/upload_request/display.rb +41 -0
  674. data/lib/inttegro/upload_request/fulfill_request.rb +27 -0
  675. data/lib/inttegro/upload_request/latest_error.rb +55 -0
  676. data/lib/inttegro/upload_request/lookup_request.rb +27 -0
  677. data/lib/inttegro/upload_request/page.rb +42 -0
  678. data/lib/inttegro/upload_request/page_request.rb +57 -0
  679. data/lib/inttegro/upload_request/page_response.rb +28 -0
  680. data/lib/inttegro/upload_request/response.rb +28 -0
  681. data/lib/inttegro/upload_request/review.rb +72 -0
  682. data/lib/inttegro/upload_request/review_attempt_by_id_request.rb +57 -0
  683. data/lib/inttegro/upload_request/review_attempt_by_ordinal_request.rb +57 -0
  684. data/lib/inttegro/upload_request/review_attempt_request.rb +18 -0
  685. data/lib/inttegro/upload_request/review_reason.rb +41 -0
  686. data/lib/inttegro/upload_request/review_reason_input.rb +41 -0
  687. data/lib/inttegro/upload_request/status.rb +39 -0
  688. data/lib/inttegro/upload_request/upload_request.rb +195 -0
  689. data/lib/inttegro/upload_request/validation_failure.rb +36 -0
  690. data/lib/inttegro/upload_request/validation_failure_error.rb +48 -0
  691. data/lib/inttegro/upload_request/with_attempt_response.rb +28 -0
  692. data/lib/inttegro/version.rb +1 -1
  693. data/lib/inttegro/wallet/base.rb +17 -0
  694. data/lib/inttegro/wallet/type.rb +24 -0
  695. data/rbi/inttegro/generated.rbi +82 -82
  696. metadata +663 -2
@@ -3,11 +3,19 @@
3
3
 
4
4
  module Inttegro
5
5
  module Resources
6
+ # Client for financial accounts used for supported collections and payouts.
7
+ #
8
+ # Access this resource through {Inttegro::Client#financial_accounts}.
6
9
  class FinancialAccounts
10
+ # @param http [Inttegro::HTTPClient] configured transport used for each request
7
11
  def initialize(http)
8
12
  @http = T.let(http, Inttegro::HTTPClient)
9
13
  end
10
14
 
15
+ # Create a wallet, Ghana bank account, or Dosh account managed through Inttegro.
16
+ #
17
+ # @param payload [Hash, Inttegro::FinancialAccount::CreateRequest] account details
18
+ # @return [Inttegro::FinancialAccount] created account
11
19
  def create(payload)
12
20
  @http.post_resource(
13
21
  "/financial_accounts/create",
@@ -16,6 +24,10 @@ module Inttegro
16
24
  )
17
25
  end
18
26
 
27
+ # Retrieve a financial account by identifier.
28
+ #
29
+ # @param account_id [String] unique financial account identifier
30
+ # @return [Inttegro::FinancialAccount] matching account
19
31
  def lookup(account_id:)
20
32
  @http.post_resource(
21
33
  "/financial_accounts/lookup",
@@ -24,6 +36,10 @@ module Inttegro
24
36
  )
25
37
  end
26
38
 
39
+ # Connect an existing financial account for supported collections or payouts.
40
+ #
41
+ # @param payload [Hash, Inttegro::FinancialAccount::CreateRequest] account details to connect
42
+ # @return [Inttegro::FinancialAccount] connected account
27
43
  def connect(payload)
28
44
  @http.post_resource(
29
45
  "/financial_accounts/connect",
@@ -32,14 +48,22 @@ module Inttegro
32
48
  )
33
49
  end
34
50
 
51
+ # Retrieve a page of financial accounts.
52
+ #
53
+ # @param payload [Hash, Inttegro::FinancialAccount::FinancialAccountPageRequest] pagination fields
54
+ # @return [Inttegro::FinancialAccount::Page] typed page of accounts
35
55
  def page(payload = {})
36
56
  @http.post_resource(
37
57
  "/financial_accounts/page",
38
- Inttegro::FinancialAccountPage, :page,
58
+ Inttegro::FinancialAccount::Page, :page,
39
59
  payload || {}
40
60
  )
41
61
  end
42
62
 
63
+ # Update mutable account profile fields.
64
+ #
65
+ # @param payload [Hash, Inttegro::FinancialAccount::UpdateRequest] account identifier and fields to change
66
+ # @return [Inttegro::FinancialAccount] updated account
43
67
  def update(payload)
44
68
  @http.post_resource(
45
69
  "/financial_accounts/update",
@@ -48,6 +72,10 @@ module Inttegro
48
72
  )
49
73
  end
50
74
 
75
+ # Allow the account to receive supported payouts and transfers.
76
+ #
77
+ # @param account_id [String] unique financial account identifier
78
+ # @return [Inttegro::FinancialAccount] updated account
51
79
  def enable_push(account_id:)
52
80
  @http.post_resource(
53
81
  "/financial_accounts/enable_push",
@@ -56,6 +84,11 @@ module Inttegro
56
84
  )
57
85
  end
58
86
 
87
+ # Stop the account from receiving supported payouts and transfers.
88
+ #
89
+ # @param account_id [String] unique financial account identifier
90
+ # @param unset_as_payout_destination [Boolean, nil] whether to remove this account from payout destinations
91
+ # @return [Inttegro::FinancialAccount] updated account
59
92
  def disable_push(account_id:, unset_as_payout_destination: nil)
60
93
  payload = { account_id: account_id }
61
94
  payload[:unset_as_payout_destination] = unset_as_payout_destination unless unset_as_payout_destination.nil?
@@ -66,6 +99,10 @@ module Inttegro
66
99
  )
67
100
  end
68
101
 
102
+ # Allow supported charges to pull funds from the account.
103
+ #
104
+ # @param account_id [String] unique financial account identifier
105
+ # @return [Inttegro::FinancialAccount] updated account
69
106
  def enable_pull(account_id:)
70
107
  @http.post_resource(
71
108
  "/financial_accounts/enable_pull",
@@ -74,6 +111,10 @@ module Inttegro
74
111
  )
75
112
  end
76
113
 
114
+ # Stop supported charges from pulling funds from the account.
115
+ #
116
+ # @param account_id [String] unique financial account identifier
117
+ # @return [Inttegro::FinancialAccount] updated account
77
118
  def disable_pull(account_id:)
78
119
  @http.post_resource(
79
120
  "/financial_accounts/disable_pull",
@@ -82,6 +123,11 @@ module Inttegro
82
123
  )
83
124
  end
84
125
 
126
+ # Disconnect an account from new Inttegro activity.
127
+ #
128
+ # @param account_id [String] unique financial account identifier
129
+ # @param unset_as_payout_destination [Boolean, nil] whether to remove this account from payout destinations
130
+ # @return [Inttegro::FinancialAccount] disconnected account
85
131
  def disconnect(account_id:, unset_as_payout_destination: nil)
86
132
  payload = { account_id: account_id }
87
133
  payload[:unset_as_payout_destination] = unset_as_payout_destination unless unset_as_payout_destination.nil?
@@ -92,6 +138,10 @@ module Inttegro
92
138
  )
93
139
  end
94
140
 
141
+ # Reconnect a previously disconnected financial account.
142
+ #
143
+ # @param account_id [String] unique financial account identifier
144
+ # @return [Inttegro::FinancialAccount] reconnected account
95
145
  def reconnect(account_id:)
96
146
  @http.post_resource(
97
147
  "/financial_accounts/reconnect",
@@ -3,19 +3,40 @@
3
3
 
4
4
  module Inttegro
5
5
  module Resources
6
+ # Client for secret-key creation, public metadata, revocation, and authentication activity.
7
+ #
8
+ # Access this resource through {Inttegro::Client#keys}. Lookup and listing methods never return
9
+ # bearer token material; the token is available only in the result of {#generate}.
6
10
  class Keys
11
+ # @param http [Inttegro::HTTPClient] configured transport used for each request
7
12
  def initialize(http)
8
13
  @http = T.let(http, Inttegro::HTTPClient)
9
14
  end
10
15
 
16
+ # Generate a new active secret key.
17
+ #
18
+ # @param payload [Hash, Inttegro::SecretKey::GenerateRequest] key label and request metadata
19
+ # @return [Inttegro::SecretKey::Generated] key metadata and one-time bearer token
11
20
  def generate(payload = {})
12
- @http.post_resource("/keys/generate", Inttegro::GeneratedSecretKey, :key, payload || {})
21
+ @http.post_resource("/keys/generate", Inttegro::SecretKey::Generated, :key, payload || {})
13
22
  end
14
23
 
24
+ # Retrieve public metadata for the application's secret keys.
25
+ #
26
+ # @param payload [Hash, Inttegro::SecretKey::PageRequest] pagination fields
27
+ # @return [Inttegro::SecretKey::Page] typed page of keys
15
28
  def page(payload = {})
16
- @http.post_resource("/keys/page", Inttegro::SecretKeyPage, :page, payload || {})
29
+ @http.post_resource("/keys/page", Inttegro::SecretKey::Page, :page, payload || {})
17
30
  end
18
31
 
32
+ # Retrieve one secret key's public metadata using a supported identifier name.
33
+ #
34
+ # The first non-+nil+ value in +secret_key_id+, +key_id+, and +id+ order is sent.
35
+ #
36
+ # @param secret_key_id [String, nil] preferred secret-key identifier
37
+ # @param key_id [String, nil] alternate key identifier
38
+ # @param id [String, nil] generic identifier accepted by older endpoint shapes
39
+ # @return [Inttegro::SecretKey] matching key metadata
19
40
  def lookup(secret_key_id: nil, key_id: nil, id: nil)
20
41
  @http.post_resource(
21
42
  "/keys/lookup",
@@ -24,10 +45,20 @@ module Inttegro
24
45
  )
25
46
  end
26
47
 
48
+ # Update mutable secret-key metadata.
49
+ #
50
+ # @param payload [Hash, Inttegro::SecretKey::UpdateRequest] key identifier and fields to change
51
+ # @return [Inttegro::SecretKey] updated key metadata
27
52
  def update(payload)
28
53
  @http.post_resource("/keys/update", Inttegro::SecretKey, :key, payload)
29
54
  end
30
55
 
56
+ # Revoke one secret key using a supported identifier name.
57
+ #
58
+ # @param secret_key_id [String, nil] preferred secret-key identifier
59
+ # @param key_id [String, nil] alternate key identifier
60
+ # @param id [String, nil] generic identifier accepted by older endpoint shapes
61
+ # @return [Inttegro::SecretKey] revoked key metadata
31
62
  def destroy(secret_key_id: nil, key_id: nil, id: nil)
32
63
  @http.post_resource(
33
64
  "/keys/destroy",
@@ -36,8 +67,15 @@ module Inttegro
36
67
  )
37
68
  end
38
69
 
70
+ # Retrieve recent authentication outcomes for one secret key.
71
+ #
72
+ # @param secret_key_id [String, nil] preferred secret-key identifier
73
+ # @param key_id [String, nil] alternate key identifier
74
+ # @param id [String, nil] generic identifier accepted by older endpoint shapes
75
+ # @param options [Hash] pagination or filter fields merged into the request
76
+ # @return [Inttegro::SecretKey::Usage] typed usage activity
39
77
  def usage(secret_key_id: nil, key_id: nil, id: nil, **options)
40
- @http.post_model("/keys/usage", Inttegro::SecretKeyUsage,
78
+ @http.post_model("/keys/usage", Inttegro::SecretKey::Usage,
41
79
  identifier_payload(secret_key_id, key_id, id).merge(options)
42
80
  )
43
81
  end
@@ -3,11 +3,20 @@
3
3
 
4
4
  module Inttegro
5
5
  module Resources
6
+ # Client for reusable, app-scoped SMS and email message templates.
7
+ #
8
+ # Access this resource through {Inttegro::Client#message_templates}.
6
9
  class MessageTemplates
10
+ # @param http [Inttegro::HTTPClient] configured transport used for each request
7
11
  def initialize(http)
8
12
  @http = T.let(http, Inttegro::HTTPClient)
9
13
  end
10
14
 
15
+ # Create a reusable message template.
16
+ #
17
+ # @param payload [Hash, Inttegro::MessageTemplate::CreateRequest] channel, content, and variable fields
18
+ # @param idempotency_key [String, nil] explicit key for safely retrying this logical write
19
+ # @return [Inttegro::MessageTemplate] created template
11
20
  def create(payload, idempotency_key: nil)
12
21
  @http.post_resource(
13
22
  "/message_templates/create",
@@ -17,6 +26,11 @@ module Inttegro
17
26
  )
18
27
  end
19
28
 
29
+ # Update a template and create a new draft version.
30
+ #
31
+ # @param payload [Hash, Inttegro::MessageTemplate::UpdateRequest] template identifier and fields to change
32
+ # @param idempotency_key [String, nil] explicit key for safely retrying this logical write
33
+ # @return [Inttegro::MessageTemplate] updated template
20
34
  def update(payload, idempotency_key: nil)
21
35
  @http.post_resource(
22
36
  "/message_templates/update",
@@ -26,6 +40,11 @@ module Inttegro
26
40
  )
27
41
  end
28
42
 
43
+ # Publish the current draft version of a template.
44
+ #
45
+ # @param template_id [String] unique template identifier
46
+ # @param idempotency_key [String, nil] explicit key for safely retrying this logical write
47
+ # @return [Inttegro::MessageTemplate] published template
29
48
  def publish(template_id:, idempotency_key: nil)
30
49
  @http.post_resource(
31
50
  "/message_templates/publish",
@@ -35,6 +54,11 @@ module Inttegro
35
54
  )
36
55
  end
37
56
 
57
+ # Archive a template so it cannot be changed or used for new sends.
58
+ #
59
+ # @param template_id [String] unique template identifier
60
+ # @param idempotency_key [String, nil] explicit key for safely retrying this logical write
61
+ # @return [Inttegro::MessageTemplate] archived template
38
62
  def archive(template_id:, idempotency_key: nil)
39
63
  @http.post_resource(
40
64
  "/message_templates/archive",
@@ -44,6 +68,10 @@ module Inttegro
44
68
  )
45
69
  end
46
70
 
71
+ # Retrieve a message template by identifier.
72
+ #
73
+ # @param template_id [String] unique template identifier
74
+ # @return [Inttegro::MessageTemplate] matching template
47
75
  def lookup(template_id:)
48
76
  @http.post_resource(
49
77
  "/message_templates/lookup",
@@ -52,16 +80,24 @@ module Inttegro
52
80
  )
53
81
  end
54
82
 
83
+ # Retrieve templates in newest-updated order.
84
+ #
85
+ # @param payload [Hash, Inttegro::MessageTemplate::PageRequest] pagination and filter fields
86
+ # @return [Inttegro::MessageTemplate::Page] typed page of templates
55
87
  def page(payload = {})
56
88
  @http.post_resource(
57
89
  "/message_templates/page",
58
- Inttegro::MessageTemplatesPage, :page,
90
+ Inttegro::MessageTemplate::Page, :page,
59
91
  payload || {}
60
92
  )
61
93
  end
62
94
 
95
+ # Render a draft-aware preview using the supplied variable values.
96
+ #
97
+ # @param payload [Hash, Inttegro::MessageTemplate::RenderPreviewRequest] template and preview variables
98
+ # @return [Inttegro::MessageTemplate::Preview] rendered preview and safety information
63
99
  def render_preview(payload)
64
- @http.post_model("/message_templates/render_preview", Inttegro::MessageTemplatePreview,
100
+ @http.post_model("/message_templates/render_preview", Inttegro::MessageTemplate::Preview,
65
101
  payload
66
102
  )
67
103
  end
@@ -11,6 +11,7 @@ module Inttegro
11
11
  #
12
12
  # @see https://studio.inttegro.com/orders for detailed guides
13
13
  class Orders
14
+ # @param http [Inttegro::HTTPClient] configured transport used for each request
14
15
  def initialize(http)
15
16
  @http = T.let(http, Inttegro::HTTPClient)
16
17
  end
@@ -21,7 +22,7 @@ module Inttegro
21
22
  # existing customer, include multiple line items, and optionally execute payment
22
23
  # immediately. Orders must have at least one line item and billing details.
23
24
  #
24
- # @param payload [Hash] Order creation parameters
25
+ # @param payload [Hash, Inttegro::Order::CreateNewCustomer, Inttegro::Order::CreateExistingCustomer] Order creation parameters
25
26
  # @option payload [Hash] :customer_data New customer information (required if customer_id not provided)
26
27
  # @option payload [String] :customer_id Existing customer ID (required if customer_data not provided)
27
28
  # @option payload [Array<Hash>] :line_items List of products/services being purchased (required)
@@ -126,6 +127,10 @@ module Inttegro
126
127
  @http.post_resource("/orders/lookup", Inttegro::Order, :order, body)
127
128
  end
128
129
 
130
+ # Update mutable fields on an order.
131
+ #
132
+ # @param payload [Hash, Inttegro::Order::UpdateRequest] order identifier and fields to change
133
+ # @return [Inttegro::Order] updated order
129
134
  def update(payload)
130
135
  @http.post_resource("/orders/update", Inttegro::Order, :order, payload)
131
136
  end
@@ -139,7 +144,7 @@ module Inttegro
139
144
  #
140
145
  # When payment requires customer confirmation (e.g., OTP), the returned order includes a next_action field.
141
146
  #
142
- # @param payload [Hash] Payment parameters
147
+ # @param payload [Hash, Inttegro::Order::PayRequest] Payment parameters
143
148
  # @option payload [String] :order_id Unique identifier of the order to pay (required)
144
149
  # @option payload [Hash] :payment_method_data Inline payment method details (mobile money, card, etc.)
145
150
  # @option payload [String] :payment_method_id ID of a saved payment method to use
@@ -159,7 +164,7 @@ module Inttegro
159
164
  # }
160
165
  # )
161
166
  #
162
- # if order.payment&.next_action&.type == Inttegro::PaymentNextActionType::CONFIRM_PAYMENT
167
+ # if order.payment&.next_action&.type == Inttegro::Payment::NextActionType::CONFIRM_PAYMENT
163
168
  # # Customer needs to provide OTP sent to their phone
164
169
  # puts 'Please enter the OTP sent to your phone'
165
170
  # end
@@ -187,7 +192,7 @@ module Inttegro
187
192
  # Call this method when a payment requires customer confirmation and you've collected the verification
188
193
  # token from the customer. The token is typically a 6-digit OTP sent via SMS or email.
189
194
  #
190
- # @param payload [Hash] Confirmation parameters
195
+ # @param payload [Hash, Inttegro::Payment::ConfirmRequest] Confirmation parameters
191
196
  # @option payload [String] :order_id Unique identifier of the order being paid (required)
192
197
  # @option payload [String] :token Verification token provided by customer (required, typically 6 digits)
193
198
  #
@@ -199,7 +204,7 @@ module Inttegro
199
204
  # token: '123456'
200
205
  # )
201
206
  #
202
- # if order.payment&.status == Inttegro::PaymentStatus::PAID
207
+ # if order.payment&.status == Inttegro::Payment::Status::PAID
203
208
  # puts 'Payment confirmed successfully!'
204
209
  # end
205
210
  #
@@ -272,11 +277,11 @@ module Inttegro
272
277
  #
273
278
  # @param order_id [String] Unique identifier of the order whose invoice should be sent (required)
274
279
  #
275
- # @return [Inttegro::OrderDocumentDeliveryResult] Order and delivery details
280
+ # @return [Inttegro::Order::DocumentDeliveryResult] Order and delivery details
276
281
  def send_invoice(order_id:)
277
282
  @http.post_model(
278
283
  "/orders/send_invoice",
279
- Inttegro::OrderDocumentDeliveryResult,
284
+ Inttegro::Order::DocumentDeliveryResult,
280
285
  { order_id: order_id }
281
286
  )
282
287
  end
@@ -285,11 +290,11 @@ module Inttegro
285
290
  #
286
291
  # @param order_id [String] Unique identifier of the paid order whose receipt should be sent (required)
287
292
  #
288
- # @return [Inttegro::OrderDocumentDeliveryResult] Order and delivery details
293
+ # @return [Inttegro::Order::DocumentDeliveryResult] Order and delivery details
289
294
  def send_receipt(order_id:)
290
295
  @http.post_model(
291
296
  "/orders/send_receipt",
292
- Inttegro::OrderDocumentDeliveryResult,
297
+ Inttegro::Order::DocumentDeliveryResult,
293
298
  { order_id: order_id }
294
299
  )
295
300
  end
@@ -300,7 +305,7 @@ module Inttegro
300
305
  # Completing an order transitions it to its final state and can optionally mark payment as received
301
306
  # offline (out-of-band) if paid_out_of_band is set to true.
302
307
  #
303
- # @param payload [Hash] Completion parameters
308
+ # @param payload [Hash, Inttegro::Order::CompleteRequest] Completion parameters
304
309
  # @option payload [String] :order_id Unique identifier of the order to complete (required)
305
310
  # @option payload [Boolean] :paid_out_of_band Set to true if payment received outside Inttegro (default: false)
306
311
  #
@@ -358,12 +363,12 @@ module Inttegro
358
363
  #
359
364
  # Returns orders in reverse chronological order (most recent first).
360
365
  #
361
- # @param payload [Hash] Pagination and filter parameters (optional)
366
+ # @param payload [Hash, Inttegro::Order::PageRequest] Pagination and filter parameters (optional)
362
367
  # @option payload [Integer] :page_number Zero-based page index to retrieve (0-10)
363
368
  # @option payload [Integer] :page_size Number of orders per page (1-256)
364
369
  # @option payload [String] :customer_id Optional customer whose orders should be returned
365
370
  #
366
- # @return [Inttegro::OrderPage] Paginated list of orders
371
+ # @return [Inttegro::Order::Page] Paginated list of orders
367
372
  #
368
373
  # @example Get first page of orders
369
374
  # page = client.orders.page(
@@ -382,7 +387,7 @@ module Inttegro
382
387
  # @see https://studio.inttegro.com/pagination for pagination guide
383
388
  # @see https://studio.inttegro.com/orders for API reference
384
389
  def page(payload = {})
385
- @http.post_resource("/orders/page", Inttegro::OrderPage, :page, payload || {})
390
+ @http.post_resource("/orders/page", Inttegro::Order::Page, :page, payload || {})
386
391
  end
387
392
 
388
393
  private
@@ -3,27 +3,47 @@
3
3
 
4
4
  module Inttegro
5
5
  module Resources
6
+ # Client for one-time-password delivery, verification, lookup, and cancellation.
7
+ #
8
+ # Access this resource through {Inttegro::Client#otp}.
6
9
  class Otp
10
+ # @param http [Inttegro::HTTPClient] configured transport used for each request
7
11
  def initialize(http)
8
12
  @http = T.let(http, Inttegro::HTTPClient)
9
13
  end
10
14
 
15
+ # Generate and deliver a one-time password.
16
+ #
17
+ # @param payload [Hash, Inttegro::OTP::InitiateRequest] recipient and OTP constraints
18
+ # @return [Inttegro::OTP::Transaction] created OTP transaction
11
19
  def initiate(payload)
12
- @http.post_resource("/otp/initiate", Inttegro::OTPTransaction, :transaction, payload)
20
+ @http.post_resource("/otp/initiate", Inttegro::OTP::Transaction, :transaction, payload)
13
21
  end
14
22
 
15
23
  alias_method :initialize_session, :initiate
16
24
 
25
+ # Check a submitted token and record the verification attempt.
26
+ #
27
+ # @param payload [Hash, Inttegro::OTP::VerifyRequest] transaction identifier and submitted token
28
+ # @return [Inttegro::OTP::Verification] verification result
17
29
  def verify(payload)
18
- @http.post_model("/otp/verify", Inttegro::OTPVerification, payload)
30
+ @http.post_model("/otp/verify", Inttegro::OTP::Verification, payload)
19
31
  end
20
32
 
33
+ # Retrieve delivery, verification, and expiry state for an OTP transaction.
34
+ #
35
+ # @param payload [Hash, Inttegro::OTP::LookupRequest] transaction identifier
36
+ # @return [Inttegro::OTP::Transaction] matching OTP transaction
21
37
  def lookup(payload)
22
- @http.post_resource("/otp/lookup", Inttegro::OTPTransaction, :transaction, payload)
38
+ @http.post_resource("/otp/lookup", Inttegro::OTP::Transaction, :transaction, payload)
23
39
  end
24
40
 
41
+ # Cancel an OTP transaction.
42
+ #
43
+ # @param payload [Hash] transaction identifier and request fields accepted by the endpoint
44
+ # @return [Inttegro::OTP::Transaction] canceled OTP transaction
25
45
  def cancel(payload)
26
- @http.post_resource("/otp/cancel", Inttegro::OTPTransaction, :transaction, payload)
46
+ @http.post_resource("/otp/cancel", Inttegro::OTP::Transaction, :transaction, payload)
27
47
  end
28
48
  end
29
49
  end
@@ -11,6 +11,7 @@ module Inttegro
11
11
  #
12
12
  # @see https://studio.inttegro.com/payment-methods for detailed guides
13
13
  class PaymentMethods
14
+ # @param http [Inttegro::HTTPClient] configured transport used for each request
14
15
  def initialize(http)
15
16
  @http = T.let(http, Inttegro::HTTPClient)
16
17
  end
@@ -24,7 +25,7 @@ module Inttegro
24
25
  # After tokenization, you can optionally verify the payment method to confirm customer ownership
25
26
  # and enable frictionless charging.
26
27
  #
27
- # @param payload [Hash] Tokenization parameters
28
+ # @param payload [Hash, Inttegro::PaymentMethod::TokenizeMobileMoneyRequest] Tokenization parameters
28
29
  # @option payload [String] :customer_id Customer who will own this payment method (required)
29
30
  # @option payload [Hash] :payment_method_data Payment method details (required)
30
31
  # @option payload [Boolean] :verify_immediately Send verification OTP immediately (default: false)
@@ -64,7 +65,7 @@ module Inttegro
64
65
  # @param payment_method_id [String] ID of the payment method to verify (required)
65
66
  # @param request_meta [Hash, nil] Request controls such as idempotency_key (optional)
66
67
  #
67
- # @return [Inttegro::PaymentMethodVerification] Verification details
68
+ # @return [Inttegro::PaymentMethod::Verification] Verification details
68
69
  #
69
70
  # @example Verify a payment method
70
71
  # result = client.payment_methods.verify(
@@ -77,7 +78,7 @@ module Inttegro
77
78
  def verify(payment_method_id:, request_meta: nil)
78
79
  @http.post_resource(
79
80
  "/payment_methods/verify",
80
- Inttegro::PaymentMethodVerification, :verification,
81
+ Inttegro::PaymentMethod::Verification, :verification,
81
82
  {
82
83
  payment_method_id: payment_method_id,
83
84
  request_meta: request_meta || stable_payment_method_request_meta("verify", payment_method_id)
@@ -140,14 +141,22 @@ module Inttegro
140
141
  )
141
142
  end
142
143
 
144
+ # Retrieve a page of payment methods.
145
+ #
146
+ # @param payload [Hash, Inttegro::PaymentMethod::PageRequest] pagination and filter fields
147
+ # @return [Inttegro::PaymentMethod::Page] typed page of payment methods
143
148
  def page(payload = {})
144
149
  @http.post_resource(
145
150
  "/payment_methods/page",
146
- Inttegro::PaymentMethodPage, :page,
151
+ Inttegro::PaymentMethod::Page, :page,
147
152
  payload || {}
148
153
  )
149
154
  end
150
155
 
156
+ # Update mutable metadata on a payment method.
157
+ #
158
+ # @param payload [Hash, Inttegro::PaymentMethod::UpdateRequest] payment method identifier and fields to change
159
+ # @return [Inttegro::PaymentMethod] updated payment method
151
160
  def update(payload)
152
161
  @http.post_resource(
153
162
  "/payment_methods/update",
@@ -156,6 +165,10 @@ module Inttegro
156
165
  )
157
166
  end
158
167
 
168
+ # Mark an inactive payment method active.
169
+ #
170
+ # @param payment_method_id [String] unique payment method identifier
171
+ # @return [Inttegro::PaymentMethod] activated payment method
159
172
  def activate(payment_method_id:)
160
173
  @http.post_resource(
161
174
  "/payment_methods/activate",
@@ -164,6 +177,10 @@ module Inttegro
164
177
  )
165
178
  end
166
179
 
180
+ # Mark an active payment method inactive.
181
+ #
182
+ # @param payment_method_id [String] unique payment method identifier
183
+ # @return [Inttegro::PaymentMethod] deactivated payment method
167
184
  def disactivate(payment_method_id:)
168
185
  @http.post_resource(
169
186
  "/payment_methods/disactivate",
@@ -174,6 +191,10 @@ module Inttegro
174
191
 
175
192
  alias deactivate disactivate
176
193
 
194
+ # Archive a payment method.
195
+ #
196
+ # @param payment_method_id [String] unique payment method identifier
197
+ # @return [Inttegro::PaymentMethod] archived payment method
177
198
  def archive(payment_method_id:)
178
199
  @http.post_resource(
179
200
  "/payment_methods/archive",
@@ -182,6 +203,10 @@ module Inttegro
182
203
  )
183
204
  end
184
205
 
206
+ # Restore an archived payment method so it can be updated again.
207
+ #
208
+ # @param payment_method_id [String] unique payment method identifier
209
+ # @return [Inttegro::PaymentMethod] unarchived payment method
185
210
  def unarchive(payment_method_id:)
186
211
  @http.post_resource(
187
212
  "/payment_methods/unarchive",
@@ -198,7 +223,7 @@ module Inttegro
198
223
  # @param payment_method_id [String] ID of the payment method to delete (required)
199
224
  # @param request_meta [Hash, nil] Request controls such as idempotency_key (optional)
200
225
  #
201
- # @return [Inttegro::PaymentMethodDeletion] Deletion confirmation
226
+ # @return [Inttegro::PaymentMethod::Deletion] Deletion confirmation
202
227
  #
203
228
  # @example Delete a payment method
204
229
  # result = client.payment_methods.delete(
@@ -209,7 +234,7 @@ module Inttegro
209
234
  #
210
235
  # @see https://studio.inttegro.com/payment-methods for API reference
211
236
  def delete(payment_method_id:, request_meta: nil)
212
- @http.post_model("/payment_methods/delete", Inttegro::PaymentMethodDeletion,
237
+ @http.post_model("/payment_methods/delete", Inttegro::PaymentMethod::Deletion,
213
238
  {
214
239
  payment_method_id: payment_method_id,
215
240
  request_meta: request_meta || stable_payment_method_request_meta("delete", payment_method_id)
@@ -222,7 +247,7 @@ module Inttegro
222
247
  # Returns settings that control payment method behavior, including whether verification
223
248
  # is required before charging and supported payment method types.
224
249
  #
225
- # @return [Inttegro::PaymentMethodSettings] Payment method settings
250
+ # @return [Inttegro::PaymentMethod::Settings] Payment method settings
226
251
  #
227
252
  # @example Get payment method settings
228
253
  # result = client.payment_methods.settings
@@ -233,7 +258,7 @@ module Inttegro
233
258
  def settings
234
259
  @http.post_resource(
235
260
  "/payment_methods/settings",
236
- Inttegro::PaymentMethodSettings, :settings,
261
+ Inttegro::PaymentMethod::Settings, :settings,
237
262
  {}
238
263
  )
239
264
  end