velopayments 2.29.128.beta1 → 2.35.58

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 (761) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile.lock +72 -0
  3. data/Makefile +21 -37
  4. data/README.md +122 -144
  5. data/docs/AcceptedPaymentV3.md +16 -14
  6. data/docs/AuthResponse.md +1 -1
  7. data/docs/{AutoTopUpConfig.md → AutoTopUpConfigV2.md} +2 -2
  8. data/docs/{AutoTopUpConfig2.md → AutoTopUpConfigV3.md} +2 -2
  9. data/docs/{Challenge.md → ChallengeV3.md} +2 -2
  10. data/docs/{Challenge2.md → ChallengeV4.md} +2 -2
  11. data/docs/{Company2.md → CompanyV3.md} +2 -2
  12. data/docs/{Company.md → CompanyV4.md} +2 -2
  13. data/docs/CreateFundingAccountRequestV2.md +4 -4
  14. data/docs/{CreateIndividual.md → CreateIndividualV3.md} +3 -3
  15. data/docs/{CreateIndividualName.md → CreateIndividualV3Name.md} +2 -2
  16. data/docs/{CreateIndividual2.md → CreateIndividualV4.md} +3 -3
  17. data/docs/{CreatePayeeAddress.md → CreatePayeeAddressV3.md} +2 -2
  18. data/docs/{PayeeAddress2.md → CreatePayeeAddressV4.md} +3 -3
  19. data/docs/{CreatePayee.md → CreatePayeeV3.md} +8 -8
  20. data/docs/CreatePayeeV4.md +34 -0
  21. data/docs/{CreatePayeesCSVRequest.md → CreatePayeesCSVRequestV3.md} +6 -6
  22. data/docs/{CreatePayeesCSVRequest2.md → CreatePayeesCSVRequestV4.md} +6 -6
  23. data/docs/{CreatePayeesCSVResponse.md → CreatePayeesCSVResponseV3.md} +3 -3
  24. data/docs/{CreatePayeesCSVResponseRejectedCsvRows.md → CreatePayeesCSVResponseV3RejectedCsvRows.md} +2 -2
  25. data/docs/{CreatePayeesCSVResponse2.md → CreatePayeesCSVResponseV4.md} +3 -3
  26. data/docs/{CreatePayeesRequest2.md → CreatePayeesRequestV3.md} +3 -3
  27. data/docs/{CreatePayeesRequest.md → CreatePayeesRequestV4.md} +3 -3
  28. data/docs/{CreatePaymentChannel.md → CreatePaymentChannelV3.md} +6 -6
  29. data/docs/{CreatePaymentChannel2.md → CreatePaymentChannelV4.md} +6 -6
  30. data/docs/{FailedPayee.md → FailedPayeeV3.md} +8 -8
  31. data/docs/{FailedPayee2.md → FailedPayeeV4.md} +9 -9
  32. data/docs/{FailedSubmission.md → FailedSubmissionV3.md} +3 -3
  33. data/docs/{FailedSubmission2.md → FailedSubmissionV4.md} +3 -3
  34. data/docs/{FundingAccountResponse2.md → FundingAccountResponseV2.md} +4 -4
  35. data/docs/FundingApi.md +459 -0
  36. data/docs/FundingAudit.md +3 -3
  37. data/docs/FundingEvent.md +1 -1
  38. data/docs/FundingResponse.md +44 -0
  39. data/docs/FxSummary.md +6 -6
  40. data/docs/FxSummaryV3.md +4 -4
  41. data/docs/{GetPayeeListResponseCompany.md → GetPayeeListResponseCompanyV3.md} +2 -2
  42. data/docs/{GetPayeeListResponseCompany2.md → GetPayeeListResponseCompanyV4.md} +2 -2
  43. data/docs/GetPayeeListResponseIndividualV3.md +18 -0
  44. data/docs/GetPayeeListResponseIndividualV4.md +18 -0
  45. data/docs/{GetPayeeListResponse.md → GetPayeeListResponseV3.md} +8 -8
  46. data/docs/{GetPayeeListResponse2.md → GetPayeeListResponseV4.md} +9 -9
  47. data/docs/GetPaymentsForPayoutResponseV3Summary.md +1 -1
  48. data/docs/GetPaymentsForPayoutResponseV4.md +2 -2
  49. data/docs/GetPaymentsForPayoutResponseV4Summary.md +2 -2
  50. data/docs/GetPayoutsResponse.md +2 -2
  51. data/docs/{Individual.md → IndividualV3.md} +3 -3
  52. data/docs/{IndividualName.md → IndividualV3Name.md} +2 -2
  53. data/docs/{Individual2.md → IndividualV4.md} +3 -3
  54. data/docs/{InstructPayoutRequest.md → InstructPayoutRequestV3.md} +2 -2
  55. data/docs/{InvitePayeeRequest.md → InvitePayeeRequestV3.md} +2 -2
  56. data/docs/{InvitePayeeRequest2.md → InvitePayeeRequestV4.md} +2 -2
  57. data/docs/ListFundingAccountsResponseV2.md +22 -0
  58. data/docs/{ListSourceAccountResponseLinks.md → ListFundingAccountsResponseV2Links.md} +2 -2
  59. data/docs/{ListSourceAccountResponsePage.md → ListFundingAccountsResponseV2Page.md} +2 -2
  60. data/docs/LoginApi.md +1 -1
  61. data/docs/{Name.md → NameV3.md} +2 -2
  62. data/docs/{Name2.md → NameV4.md} +2 -2
  63. data/docs/Notification.md +2 -2
  64. data/docs/NotificationSource.md +94 -0
  65. data/docs/{Notifications.md → NotificationsV2.md} +2 -2
  66. data/docs/{Notifications2.md → NotificationsV3.md} +2 -2
  67. data/docs/PagedPayeeInvitationStatusResponseV3.md +22 -0
  68. data/docs/{PagedPayeeInvitationStatusResponsePage.md → PagedPayeeInvitationStatusResponseV3Page.md} +2 -2
  69. data/docs/PagedPayeeInvitationStatusResponseV4.md +22 -0
  70. data/docs/PagedPayeeResponseV3.md +24 -0
  71. data/docs/{PagedPayeeResponseLinks.md → PagedPayeeResponseV3Links.md} +2 -2
  72. data/docs/{PagedPayeeResponsePage.md → PagedPayeeResponseV3Page.md} +2 -2
  73. data/docs/{PagedPayeeResponseSummary.md → PagedPayeeResponseV3Summary.md} +2 -2
  74. data/docs/PagedPayeeResponseV4.md +24 -0
  75. data/docs/PagedPaymentsResponseV3.md +2 -2
  76. data/docs/{PayableIssue.md → PayableIssueV3.md} +2 -2
  77. data/docs/{PayableIssue2.md → PayableIssueV4.md} +2 -2
  78. data/docs/{CreatePayeeAddress2.md → PayeeAddressV3.md} +3 -3
  79. data/docs/{PayeeAddress.md → PayeeAddressV4.md} +2 -2
  80. data/docs/PayeeDeltaResponseV3.md +22 -0
  81. data/docs/{PayeeDeltaResponseLinks.md → PayeeDeltaResponseV3Links.md} +2 -2
  82. data/docs/{PayeeDeltaResponsePage.md → PayeeDeltaResponseV3Page.md} +2 -2
  83. data/docs/PayeeDeltaResponseV4.md +22 -0
  84. data/docs/{PayeeDeltaResponse2Links.md → PayeeDeltaResponseV4Links.md} +2 -2
  85. data/docs/{PayeeDelta.md → PayeeDeltaV3.md} +3 -3
  86. data/docs/{PayeeDelta2.md → PayeeDeltaV4.md} +4 -4
  87. data/docs/{PayeeDetailResponse2.md → PayeeDetailResponseV3.md} +11 -11
  88. data/docs/{PayeeDetailResponse.md → PayeeDetailResponseV4.md} +10 -10
  89. data/docs/PayeeInvitationApi.md +111 -111
  90. data/docs/{PayeeInvitationStatusResponse.md → PayeeInvitationStatusResponseV3.md} +3 -3
  91. data/docs/{PayeeInvitationStatusResponse2.md → PayeeInvitationStatusResponseV4.md} +3 -3
  92. data/docs/PayeePayorRefV3.md +2 -2
  93. data/docs/{PayeePayorRef.md → PayeePayorRefV4.md} +4 -4
  94. data/docs/{OfacStatus.md → PayeeTypeEnum.md} +2 -2
  95. data/docs/PayeesApi.md +62 -62
  96. data/docs/PaymentAuditServiceApi.md +12 -4
  97. data/docs/PaymentChannelRule.md +3 -1
  98. data/docs/PaymentDeltaResponse.md +2 -2
  99. data/docs/PaymentDeltaResponseV1.md +2 -2
  100. data/docs/PaymentEventResponse.md +12 -6
  101. data/docs/PaymentEventResponseV3.md +3 -3
  102. data/docs/PaymentInstructionV3.md +3 -3
  103. data/docs/PaymentResponseV3.md +6 -4
  104. data/docs/PaymentResponseV4.md +13 -7
  105. data/docs/PaymentV3.md +23 -21
  106. data/docs/PayorBrandingResponse.md +3 -3
  107. data/docs/PayorCreateApiKeyRequest.md +2 -2
  108. data/docs/PayorHierarchyApi.md +83 -0
  109. data/docs/PayorLinksResponseLinks.md +1 -1
  110. data/docs/PayorLinksResponsePayors.md +1 -1
  111. data/docs/PayorV1.md +2 -2
  112. data/docs/PayorV2.md +9 -5
  113. data/docs/PayorsApi.md +41 -117
  114. data/docs/PayoutSchedule.md +2 -2
  115. data/docs/{PayoutSchedule2.md → PayoutScheduleV3.md} +4 -4
  116. data/docs/PayoutSummaryAudit.md +2 -2
  117. data/docs/PayoutSummaryAuditV3.md +1 -1
  118. data/docs/PayoutSummaryResponseV3.md +10 -10
  119. data/docs/{PayoutServiceApi.md → PayoutsApi.md} +42 -42
  120. data/docs/PostInstructFxInfo.md +24 -0
  121. data/docs/{QueryBatchResponse.md → QueryBatchResponseV3.md} +4 -4
  122. data/docs/{QueryBatchResponse2.md → QueryBatchResponseV4.md} +4 -4
  123. data/docs/QuoteFxSummaryV3.md +15 -15
  124. data/docs/RejectedPaymentV3.md +16 -16
  125. data/docs/{SchedulePayoutRequest.md → SchedulePayoutRequestV3.md} +2 -2
  126. data/docs/SetNotificationsRequest2.md +18 -0
  127. data/docs/SourceAccountResponseV2.md +2 -2
  128. data/docs/SourceAccountResponseV3.md +4 -4
  129. data/docs/SourceAccountSummary.md +2 -2
  130. data/docs/SourceAccountSummaryV3.md +1 -1
  131. data/docs/SourceAccountV3.md +5 -5
  132. data/docs/SourceAccountsApi.md +603 -0
  133. data/docs/{TransferRequest.md → TransferRequestV2.md} +2 -2
  134. data/docs/{TransferRequest2.md → TransferRequestV3.md} +3 -3
  135. data/docs/{UpdatePayeeDetailsRequest.md → UpdatePayeeDetailsRequestV3.md} +7 -7
  136. data/docs/{UpdatePayeeDetailsRequest2.md → UpdatePayeeDetailsRequestV4.md} +7 -7
  137. data/docs/{UpdateRemoteIdRequest.md → UpdateRemoteIdRequestV3.md} +2 -2
  138. data/docs/{UpdateRemoteIdRequest2.md → UpdateRemoteIdRequestV4.md} +2 -2
  139. data/docs/WebhooksResponse.md +2 -2
  140. data/lib/velopayments/api/countries_api.rb +2 -2
  141. data/lib/velopayments/api/currencies_api.rb +2 -2
  142. data/lib/velopayments/api/funding_api.rb +481 -0
  143. data/lib/velopayments/api/funding_manager_private_api.rb +2 -2
  144. data/lib/velopayments/api/login_api.rb +5 -5
  145. data/lib/velopayments/api/payee_invitation_api.rb +112 -112
  146. data/lib/velopayments/api/payees_api.rb +80 -80
  147. data/lib/velopayments/api/payment_audit_service_api.rb +34 -18
  148. data/lib/velopayments/api/payment_audit_service_deprecated_api.rb +12 -12
  149. data/{spec/models/create_webhook_request_spec.rb → lib/velopayments/api/payor_hierarchy_api.rb} +67 -37
  150. data/lib/velopayments/api/payors_api.rb +41 -107
  151. data/lib/velopayments/api/payors_private_api.rb +2 -2
  152. data/lib/velopayments/api/{payout_service_api.rb → payouts_api.rb} +52 -52
  153. data/lib/velopayments/api/source_accounts_api.rb +632 -0
  154. data/lib/velopayments/api/tokens_api.rb +2 -2
  155. data/lib/velopayments/api/users_api.rb +5 -5
  156. data/lib/velopayments/api/webhooks_api.rb +4 -4
  157. data/lib/velopayments/api_client.rb +5 -3
  158. data/lib/velopayments/api_error.rb +3 -2
  159. data/lib/velopayments/configuration.rb +31 -12
  160. data/lib/velopayments/models/accepted_payment_v3.rb +193 -23
  161. data/lib/velopayments/models/access_token_response.rb +15 -19
  162. data/lib/velopayments/models/access_token_validation_request.rb +17 -19
  163. data/lib/velopayments/models/auth_response.rb +19 -19
  164. data/lib/velopayments/models/{auto_top_up_config.rb → auto_top_up_config_v2.rb} +20 -22
  165. data/lib/velopayments/models/{auto_top_up_config2.rb → auto_top_up_config_v3.rb} +20 -22
  166. data/lib/velopayments/models/category.rb +8 -5
  167. data/lib/velopayments/models/{challenge.rb → challenge_v3.rb} +22 -22
  168. data/lib/velopayments/models/{challenge2.rb → challenge_v4.rb} +22 -22
  169. data/lib/velopayments/models/{company.rb → company_v3.rb} +20 -22
  170. data/lib/velopayments/models/{company2.rb → company_v4.rb} +20 -22
  171. data/lib/velopayments/models/create_funding_account_request_v2.rb +55 -37
  172. data/lib/velopayments/models/{create_individual.rb → create_individual_v3.rb} +29 -25
  173. data/lib/velopayments/models/{individual_name.rb → create_individual_v3_name.rb} +34 -26
  174. data/lib/velopayments/models/{create_individual2.rb → create_individual_v4.rb} +29 -25
  175. data/lib/velopayments/models/{create_payee_address2.rb → create_payee_address_v3.rb} +37 -51
  176. data/lib/velopayments/models/{create_payee_address.rb → create_payee_address_v4.rb} +49 -52
  177. data/lib/velopayments/models/{create_payee.rb → create_payee_v3.rb} +33 -28
  178. data/lib/velopayments/models/{create_payee2.rb → create_payee_v4.rb} +55 -50
  179. data/lib/velopayments/models/{create_payees_csv_request.rb → create_payees_csv_request_v3.rb} +209 -81
  180. data/lib/velopayments/models/{create_payees_csv_request2.rb → create_payees_csv_request_v4.rb} +209 -81
  181. data/lib/velopayments/models/{create_payees_csv_response.rb → create_payees_csv_response_v3.rb} +19 -23
  182. data/lib/velopayments/models/{create_payees_csv_response_rejected_csv_rows.rb → create_payees_csv_response_v3_rejected_csv_rows.rb} +18 -22
  183. data/lib/velopayments/models/{create_payees_csv_response2.rb → create_payees_csv_response_v4.rb} +19 -23
  184. data/lib/velopayments/models/{create_payees_request.rb → create_payees_request_v3.rb} +23 -23
  185. data/lib/velopayments/models/{create_payees_request2.rb → create_payees_request_v4.rb} +23 -23
  186. data/lib/velopayments/models/{create_payment_channel.rb → create_payment_channel_v3.rb} +104 -67
  187. data/lib/velopayments/models/{create_payment_channel2.rb → create_payment_channel_v4.rb} +104 -67
  188. data/lib/velopayments/models/create_payor_link_request.rb +21 -19
  189. data/lib/velopayments/models/create_payout_request_v3.rb +22 -20
  190. data/lib/velopayments/models/create_webhook_request.rb +28 -22
  191. data/lib/velopayments/models/debit_event.rb +23 -19
  192. data/lib/velopayments/models/debit_event_all_of.rb +17 -19
  193. data/lib/velopayments/models/debit_status_changed.rb +25 -19
  194. data/lib/velopayments/models/debit_status_changed_all_of.rb +17 -19
  195. data/lib/velopayments/models/error.rb +15 -19
  196. data/lib/velopayments/models/error_data.rb +15 -19
  197. data/lib/velopayments/models/error_response.rb +20 -20
  198. data/lib/velopayments/models/{failed_payee.rb → failed_payee_v3.rb} +25 -28
  199. data/lib/velopayments/models/{failed_payee2.rb → failed_payee_v4.rb} +26 -29
  200. data/lib/velopayments/models/{failed_submission.rb → failed_submission_v3.rb} +19 -23
  201. data/lib/velopayments/models/{failed_submission2.rb → failed_submission_v4.rb} +19 -23
  202. data/lib/velopayments/models/{funding_account_response2.rb → funding_account_response_v2.rb} +43 -28
  203. data/lib/velopayments/models/funding_audit.rb +18 -77
  204. data/lib/velopayments/models/funding_event.rb +17 -20
  205. data/lib/velopayments/models/funding_payor_status_audit_response.rb +22 -22
  206. data/lib/velopayments/models/funding_request_v2.rb +17 -19
  207. data/lib/velopayments/models/funding_request_v3.rb +19 -19
  208. data/lib/velopayments/models/{source_account_response.rb → funding_response.rb} +178 -138
  209. data/lib/velopayments/models/fx_summary.rb +87 -61
  210. data/lib/velopayments/models/fx_summary_v3.rb +87 -61
  211. data/lib/velopayments/models/get_fundings_response.rb +15 -19
  212. data/lib/velopayments/models/get_fundings_response_links.rb +15 -19
  213. data/lib/velopayments/models/{get_payee_list_response_company.rb → get_payee_list_response_company_v3.rb} +24 -24
  214. data/lib/velopayments/models/{get_payee_list_response_company2.rb → get_payee_list_response_company_v4.rb} +24 -24
  215. data/lib/velopayments/models/{get_payee_list_response_individual.rb → get_payee_list_response_individual_v3.rb} +19 -23
  216. data/lib/velopayments/models/{get_payee_list_response_individual2.rb → get_payee_list_response_individual_v4.rb} +19 -23
  217. data/lib/velopayments/models/{get_payee_list_response.rb → get_payee_list_response_v3.rb} +66 -27
  218. data/lib/velopayments/models/{get_payee_list_response2.rb → get_payee_list_response_v4.rb} +67 -28
  219. data/lib/velopayments/models/get_payments_for_payout_response_v3.rb +15 -19
  220. data/lib/velopayments/models/get_payments_for_payout_response_v3_page.rb +15 -19
  221. data/lib/velopayments/models/get_payments_for_payout_response_v3_summary.rb +16 -54
  222. data/lib/velopayments/models/get_payments_for_payout_response_v4.rb +17 -21
  223. data/lib/velopayments/models/get_payments_for_payout_response_v4_summary.rb +19 -21
  224. data/lib/velopayments/models/get_payout_statistics.rb +19 -19
  225. data/lib/velopayments/models/get_payouts_response.rb +17 -21
  226. data/lib/velopayments/models/get_payouts_response_v3.rb +15 -19
  227. data/lib/velopayments/models/get_payouts_response_v3_links.rb +15 -19
  228. data/lib/velopayments/models/get_payouts_response_v3_page.rb +15 -19
  229. data/lib/velopayments/models/{individual.rb → individual_v3.rb} +29 -25
  230. data/lib/velopayments/models/{create_individual_name.rb → individual_v3_name.rb} +34 -26
  231. data/lib/velopayments/models/{individual2.rb → individual_v4.rb} +29 -25
  232. data/lib/velopayments/models/inline_response400.rb +15 -19
  233. data/lib/velopayments/models/inline_response401.rb +15 -19
  234. data/lib/velopayments/models/inline_response403.rb +15 -19
  235. data/lib/velopayments/models/inline_response404.rb +15 -19
  236. data/lib/velopayments/models/inline_response409.rb +15 -19
  237. data/lib/velopayments/models/inline_response412.rb +15 -19
  238. data/lib/velopayments/models/{instruct_payout_request.rb → instruct_payout_request_v3.rb} +18 -22
  239. data/lib/velopayments/models/{invite_payee_request.rb → invite_payee_request_v3.rb} +20 -22
  240. data/lib/velopayments/models/{invite_payee_request2.rb → invite_payee_request_v4.rb} +20 -22
  241. data/lib/velopayments/models/invite_user_request.rb +37 -23
  242. data/lib/velopayments/models/link_for_response.rb +15 -19
  243. data/lib/velopayments/models/{list_funding_accounts_response2.rb → list_funding_accounts_response_v2.rb} +21 -25
  244. data/lib/velopayments/models/{payee_delta_response_links.rb → list_funding_accounts_response_v2_links.rb} +18 -22
  245. data/lib/velopayments/models/{paged_payee_response_page.rb → list_funding_accounts_response_v2_page.rb} +18 -22
  246. data/lib/velopayments/models/list_payments_response_v3.rb +15 -19
  247. data/lib/velopayments/models/list_payments_response_v3_page.rb +15 -19
  248. data/lib/velopayments/models/list_payments_response_v4.rb +15 -19
  249. data/lib/velopayments/models/list_source_account_response_v2.rb +15 -19
  250. data/lib/velopayments/models/list_source_account_response_v2_links.rb +15 -19
  251. data/lib/velopayments/models/list_source_account_response_v3.rb +15 -19
  252. data/lib/velopayments/models/list_source_account_response_v3_links.rb +15 -19
  253. data/lib/velopayments/models/localisation_details.rb +15 -19
  254. data/lib/velopayments/models/mfa_details.rb +37 -19
  255. data/lib/velopayments/models/mfa_type.rb +8 -5
  256. data/lib/velopayments/models/{name.rb → name_v3.rb} +42 -30
  257. data/lib/velopayments/models/{name2.rb → name_v4.rb} +42 -30
  258. data/lib/velopayments/models/notification.rb +24 -22
  259. data/lib/velopayments/models/{invitation_status2.rb → notification_source.rb} +48 -20
  260. data/lib/velopayments/models/{notifications.rb → notifications_v2.rb} +18 -22
  261. data/lib/velopayments/models/{notifications2.rb → notifications_v3.rb} +18 -22
  262. data/lib/velopayments/models/onboarding_status_changed.rb +23 -19
  263. data/lib/velopayments/models/page_for_response.rb +15 -19
  264. data/lib/velopayments/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response.rb +15 -19
  265. data/lib/velopayments/models/{paged_payee_invitation_status_response.rb → paged_payee_invitation_status_response_v3.rb} +21 -25
  266. data/lib/velopayments/models/{paged_payee_invitation_status_response_page.rb → paged_payee_invitation_status_response_v3_page.rb} +18 -22
  267. data/lib/velopayments/models/{paged_payee_invitation_status_response2.rb → paged_payee_invitation_status_response_v4.rb} +21 -25
  268. data/lib/velopayments/models/{paged_payee_response.rb → paged_payee_response_v3.rb} +22 -26
  269. data/lib/velopayments/models/{paged_payee_response_links.rb → paged_payee_response_v3_links.rb} +18 -22
  270. data/lib/velopayments/models/{payee_delta_response_page.rb → paged_payee_response_v3_page.rb} +18 -22
  271. data/lib/velopayments/models/{paged_payee_response_summary.rb → paged_payee_response_v3_summary.rb} +18 -22
  272. data/lib/velopayments/models/{paged_payee_response2.rb → paged_payee_response_v4.rb} +22 -26
  273. data/lib/velopayments/models/paged_payments_response_v3.rb +17 -21
  274. data/lib/velopayments/models/paged_user_response.rb +15 -19
  275. data/lib/velopayments/models/paged_user_response_links.rb +15 -19
  276. data/lib/velopayments/models/paged_user_response_page.rb +15 -19
  277. data/lib/velopayments/models/password_request.rb +17 -19
  278. data/lib/velopayments/models/{payable_issue.rb → payable_issue_v3.rb} +22 -22
  279. data/lib/velopayments/models/{payable_issue2.rb → payable_issue_v4.rb} +22 -22
  280. data/lib/velopayments/models/payable_status_changed.rb +23 -19
  281. data/lib/velopayments/models/{payee_address2.rb → payee_address_v3.rb} +41 -27
  282. data/lib/velopayments/models/{payee_address.rb → payee_address_v4.rb} +24 -22
  283. data/lib/velopayments/models/{payee_delta_response.rb → payee_delta_response_v3.rb} +21 -25
  284. data/lib/velopayments/models/{payee_delta_response2_links.rb → payee_delta_response_v3_links.rb} +18 -22
  285. data/lib/velopayments/models/{list_source_account_response_page.rb → payee_delta_response_v3_page.rb} +18 -22
  286. data/lib/velopayments/models/{payee_delta_response2.rb → payee_delta_response_v4.rb} +21 -25
  287. data/lib/velopayments/models/{list_source_account_response_links.rb → payee_delta_response_v4_links.rb} +18 -22
  288. data/lib/velopayments/models/{payee_delta.rb → payee_delta_v3.rb} +24 -23
  289. data/lib/velopayments/models/{payee_delta2.rb → payee_delta_v4.rb} +64 -23
  290. data/lib/velopayments/models/{payee_detail_response2.rb → payee_detail_response_v3.rb} +69 -30
  291. data/lib/velopayments/models/{payee_detail_response.rb → payee_detail_response_v4.rb} +29 -30
  292. data/lib/velopayments/models/payee_details_changed.rb +23 -19
  293. data/lib/velopayments/models/payee_event.rb +23 -19
  294. data/lib/velopayments/models/payee_event_all_of.rb +17 -19
  295. data/lib/velopayments/models/payee_event_all_of_reasons.rb +19 -19
  296. data/lib/velopayments/models/{payee_invitation_status_response.rb → payee_invitation_status_response_v3.rb} +23 -56
  297. data/lib/velopayments/models/{payee_invitation_status_response2.rb → payee_invitation_status_response_v4.rb} +23 -56
  298. data/lib/velopayments/models/payee_payor_ref_v3.rb +17 -21
  299. data/lib/velopayments/models/{payee_payor_ref.rb → payee_payor_ref_v4.rb} +20 -24
  300. data/lib/velopayments/models/payee_type.rb +8 -5
  301. data/lib/velopayments/models/{payee_type2.rb → payee_type_enum.rb} +9 -6
  302. data/lib/velopayments/models/payee_user_self_update_request.rb +15 -19
  303. data/lib/velopayments/models/payment_channel_country.rb +19 -19
  304. data/lib/velopayments/models/payment_channel_rule.rb +37 -23
  305. data/lib/velopayments/models/payment_channel_rules_response.rb +15 -19
  306. data/lib/velopayments/models/payment_delta.rb +19 -19
  307. data/lib/velopayments/models/payment_delta_response.rb +17 -21
  308. data/lib/velopayments/models/payment_delta_response_v1.rb +17 -21
  309. data/lib/velopayments/models/payment_delta_v1.rb +19 -19
  310. data/lib/velopayments/models/payment_event.rb +23 -19
  311. data/lib/velopayments/models/payment_event_all_of.rb +17 -19
  312. data/lib/velopayments/models/payment_event_response.rb +109 -55
  313. data/lib/velopayments/models/payment_event_response_v3.rb +79 -53
  314. data/lib/velopayments/models/payment_instruction_v3.rb +84 -29
  315. data/lib/velopayments/models/payment_rejected_or_returned.rb +29 -19
  316. data/lib/velopayments/models/payment_rejected_or_returned_all_of.rb +19 -19
  317. data/lib/velopayments/models/payment_response_v3.rb +101 -63
  318. data/lib/velopayments/models/payment_response_v4.rb +121 -64
  319. data/lib/velopayments/models/payment_response_v4_payout.rb +15 -19
  320. data/lib/velopayments/models/payment_status_changed.rb +25 -19
  321. data/lib/velopayments/models/payment_status_changed_all_of.rb +17 -19
  322. data/lib/velopayments/models/payment_v3.rb +158 -56
  323. data/lib/velopayments/models/payor_address.rb +21 -19
  324. data/lib/velopayments/models/payor_address_v2.rb +21 -19
  325. data/lib/velopayments/models/payor_aml_transaction.rb +15 -19
  326. data/lib/velopayments/models/payor_aml_transaction_v3.rb +15 -19
  327. data/lib/velopayments/models/payor_branding_response.rb +20 -20
  328. data/lib/velopayments/models/payor_create_api_key_request.rb +23 -23
  329. data/lib/velopayments/models/payor_create_api_key_response.rb +15 -19
  330. data/lib/velopayments/models/payor_create_application_request.rb +17 -19
  331. data/lib/velopayments/models/payor_email_opt_out_request.rb +17 -19
  332. data/lib/velopayments/models/payor_links_response.rb +15 -19
  333. data/lib/velopayments/models/payor_links_response_links.rb +24 -53
  334. data/lib/velopayments/models/payor_links_response_payors.rb +20 -53
  335. data/lib/velopayments/models/payor_v1.rb +19 -54
  336. data/lib/velopayments/models/payor_v2.rb +45 -58
  337. data/lib/velopayments/models/payout_company_v3.rb +17 -19
  338. data/lib/velopayments/models/payout_individual_v3.rb +17 -19
  339. data/lib/velopayments/models/payout_name_v3.rb +19 -19
  340. data/lib/velopayments/models/payout_payee_v3.rb +17 -19
  341. data/lib/velopayments/models/payout_payor.rb +25 -19
  342. data/lib/velopayments/models/payout_payor_ids.rb +21 -19
  343. data/lib/velopayments/models/payout_principal.rb +19 -19
  344. data/lib/velopayments/models/payout_schedule.rb +27 -20
  345. data/lib/velopayments/models/{payout_schedule2.rb → payout_schedule_v3.rb} +30 -23
  346. data/lib/velopayments/models/payout_summary_audit.rb +27 -21
  347. data/lib/velopayments/models/payout_summary_audit_v3.rb +23 -20
  348. data/lib/velopayments/models/payout_summary_response_v3.rb +32 -20
  349. data/lib/velopayments/models/ping.rb +21 -19
  350. data/lib/velopayments/models/ping_response.rb +15 -19
  351. data/lib/velopayments/models/post_instruct_fx_info.rb +267 -0
  352. data/lib/velopayments/models/{query_batch_response.rb → query_batch_response_v3.rb} +20 -58
  353. data/lib/velopayments/models/{query_batch_response2.rb → query_batch_response_v4.rb} +20 -58
  354. data/lib/velopayments/models/quote_fx_summary_v3.rb +42 -65
  355. data/lib/velopayments/models/quote_response_v3.rb +15 -19
  356. data/lib/velopayments/models/region_v2.rb +15 -19
  357. data/lib/velopayments/models/register_sms_request.rb +17 -19
  358. data/lib/velopayments/models/rejected_payment_v3.rb +121 -19
  359. data/lib/velopayments/models/resend_token_request.rb +17 -19
  360. data/lib/velopayments/models/reset_password_request.rb +17 -19
  361. data/lib/velopayments/models/role.rb +17 -19
  362. data/lib/velopayments/models/role_update_request.rb +17 -19
  363. data/lib/velopayments/models/{schedule_payout_request.rb → schedule_payout_request_v3.rb} +22 -22
  364. data/lib/velopayments/models/self_mfa_type_unregister_request.rb +17 -19
  365. data/lib/velopayments/models/self_update_password_request.rb +19 -19
  366. data/lib/velopayments/models/set_notifications_request.rb +17 -19
  367. data/lib/velopayments/models/{funding_request_v1.rb → set_notifications_request2.rb} +46 -48
  368. data/lib/velopayments/models/source_account_response_v2.rb +44 -50
  369. data/lib/velopayments/models/source_account_response_v3.rb +66 -53
  370. data/lib/velopayments/models/source_account_summary.rb +49 -20
  371. data/lib/velopayments/models/source_account_summary_v3.rb +49 -20
  372. data/lib/velopayments/models/source_account_v3.rb +26 -19
  373. data/lib/velopayments/models/source_event.rb +21 -19
  374. data/lib/velopayments/models/supported_countries_response.rb +15 -19
  375. data/lib/velopayments/models/supported_countries_response_v2.rb +15 -19
  376. data/lib/velopayments/models/supported_country.rb +22 -22
  377. data/lib/velopayments/models/supported_country_v2.rb +22 -22
  378. data/lib/velopayments/models/supported_currency_response_v2.rb +15 -19
  379. data/lib/velopayments/models/supported_currency_v2.rb +22 -22
  380. data/lib/velopayments/models/{transfer_request2.rb → transfer_request_v2.rb} +24 -22
  381. data/lib/velopayments/models/{transfer_request.rb → transfer_request_v3.rb} +36 -22
  382. data/lib/velopayments/models/transmission_types.rb +21 -19
  383. data/lib/velopayments/models/transmission_types2.rb +21 -19
  384. data/lib/velopayments/models/unregister_mfa_request.rb +17 -19
  385. data/lib/velopayments/models/{update_payee_details_request.rb → update_payee_details_request_v3.rb} +45 -27
  386. data/lib/velopayments/models/{update_payee_details_request2.rb → update_payee_details_request_v4.rb} +50 -28
  387. data/lib/velopayments/models/{update_remote_id_request2.rb → update_remote_id_request_v3.rb} +22 -22
  388. data/lib/velopayments/models/{update_remote_id_request.rb → update_remote_id_request_v4.rb} +22 -22
  389. data/lib/velopayments/models/update_webhook_request.rb +21 -21
  390. data/lib/velopayments/models/user_details_update_request.rb +37 -19
  391. data/lib/velopayments/models/user_info.rb +37 -19
  392. data/lib/velopayments/models/user_response.rb +53 -29
  393. data/lib/velopayments/models/user_status.rb +8 -5
  394. data/lib/velopayments/models/user_type.rb +8 -5
  395. data/lib/velopayments/models/user_type2.rb +8 -5
  396. data/lib/velopayments/models/validate_password_response.rb +21 -21
  397. data/lib/velopayments/models/webhook_response.rb +15 -19
  398. data/lib/velopayments/models/webhooks_response.rb +17 -21
  399. data/lib/velopayments/models/withdraw_payment_request.rb +17 -19
  400. data/lib/velopayments/version.rb +3 -3
  401. data/lib/velopayments.rb +91 -111
  402. data/oa3-config.json +1 -1
  403. data/spec/api/countries_api_spec.rb +41 -6
  404. data/spec/api/currencies_api_spec.rb +5 -3
  405. data/spec/api/funding_api_spec.rb +169 -0
  406. data/spec/api/funding_manager_private_api_spec.rb +4 -4
  407. data/spec/api/login_api_spec.rb +11 -11
  408. data/spec/api/payee_invitation_api_spec.rb +74 -38
  409. data/spec/api/payees_api_spec.rb +76 -42
  410. data/spec/api/payment_audit_service_api_spec.rb +90 -17
  411. data/spec/api/payment_audit_service_deprecated_api_spec.rb +10 -10
  412. data/spec/{models/get_fundings_response_links_spec.rb → api/payor_hierarchy_api_spec.rb} +24 -15
  413. data/spec/api/payors_api_spec.rb +47 -35
  414. data/spec/api/payors_private_api_spec.rb +3 -3
  415. data/spec/api/{payout_service_api_spec.rb → payouts_api_spec.rb} +20 -20
  416. data/spec/api/{funding_manager_api_spec.rb → source_accounts_api_spec.rb} +81 -162
  417. data/spec/api/tokens_api_spec.rb +3 -3
  418. data/spec/api/users_api_spec.rb +45 -19
  419. data/spec/api/webhooks_api_spec.rb +7 -7
  420. data/spec/api_client_spec.rb +4 -2
  421. data/spec/configuration_spec.rb +2 -2
  422. data/spec/spec_helper.rb +2 -2
  423. data/specs/api/countries_api_spec.rb +19 -19
  424. data/specs/api/currencies_api_spec.rb +2 -2
  425. data/specs/api/funding_api_spec.rb +169 -0
  426. data/specs/api/funding_manager_private_api_spec.rb +16 -4
  427. data/specs/api/login_api_spec.rb +8 -7
  428. data/specs/api/payee_invitation_api_spec.rb +55 -39
  429. data/specs/api/payees_api_spec.rb +107 -45
  430. data/specs/api/payment_audit_service_api_spec.rb +29 -85
  431. data/specs/api/payment_audit_service_deprecated_api_spec.rb +10 -10
  432. data/{spec/models/company2_spec.rb → specs/api/payor_hierarchy_api_spec.rb} +23 -20
  433. data/specs/api/payors_api_spec.rb +27 -48
  434. data/specs/api/payors_private_api_spec.rb +4 -4
  435. data/specs/api/{payout_service_api_spec.rb → payouts_api_spec.rb} +51 -24
  436. data/specs/api/{funding_manager_api_spec.rb → source_accounts_api_spec.rb} +36 -208
  437. data/specs/api/tokens_api_spec.rb +4 -4
  438. data/specs/api/users_api_spec.rb +38 -47
  439. data/specs/api/webhooks_api_spec.rb +7 -7
  440. data/velopayments.gemspec +3 -3
  441. metadata +208 -766
  442. data/docs/CreatePayee2.md +0 -38
  443. data/docs/FundingAccountResponse.md +0 -36
  444. data/docs/FundingAccountType.md +0 -15
  445. data/docs/FundingEventType.md +0 -15
  446. data/docs/FundingManagerApi.md +0 -1291
  447. data/docs/FundingRequestV1.md +0 -18
  448. data/docs/GetPayeeListResponseIndividual.md +0 -18
  449. data/docs/GetPayeeListResponseIndividual2.md +0 -18
  450. data/docs/InvitationStatus.md +0 -15
  451. data/docs/InvitationStatus2.md +0 -15
  452. data/docs/KycState.md +0 -15
  453. data/docs/ListFundingAccountsResponse.md +0 -22
  454. data/docs/ListFundingAccountsResponse2.md +0 -22
  455. data/docs/ListSourceAccountResponse.md +0 -22
  456. data/docs/OnboardedStatus.md +0 -15
  457. data/docs/OnboardedStatus2.md +0 -15
  458. data/docs/PagedPayeeInvitationStatusResponse.md +0 -22
  459. data/docs/PagedPayeeInvitationStatusResponse2.md +0 -22
  460. data/docs/PagedPayeeResponse.md +0 -24
  461. data/docs/PagedPayeeResponse2.md +0 -24
  462. data/docs/PayeeDeltaResponse.md +0 -22
  463. data/docs/PayeeDeltaResponse2.md +0 -22
  464. data/docs/PayeeType2.md +0 -15
  465. data/docs/PaymentAuditCurrency.md +0 -15
  466. data/docs/PaymentAuditCurrencyV3.md +0 -15
  467. data/docs/PaymentRails.md +0 -15
  468. data/docs/PayorLogoRequest.md +0 -18
  469. data/docs/PayoutStatus.md +0 -15
  470. data/docs/PayoutStatusV3.md +0 -15
  471. data/docs/PayoutType.md +0 -15
  472. data/docs/ScheduleStatus.md +0 -15
  473. data/docs/ScheduleStatus2.md +0 -15
  474. data/docs/SourceAccountResponse.md +0 -44
  475. data/docs/SourceAccountType.md +0 -15
  476. data/docs/TransmissionType.md +0 -15
  477. data/docs/WatchlistStatus.md +0 -15
  478. data/docs/WatchlistStatus2.md +0 -15
  479. data/lib/velopayments/api/funding_manager_api.rb +0 -1330
  480. data/lib/velopayments/models/funding_account_response.rb +0 -357
  481. data/lib/velopayments/models/funding_account_type.rb +0 -37
  482. data/lib/velopayments/models/funding_event_type.rb +0 -42
  483. data/lib/velopayments/models/invitation_status.rb +0 -38
  484. data/lib/velopayments/models/kyc_state.rb +0 -38
  485. data/lib/velopayments/models/list_funding_accounts_response.rb +0 -241
  486. data/lib/velopayments/models/list_source_account_response.rb +0 -241
  487. data/lib/velopayments/models/ofac_status.rb +0 -38
  488. data/lib/velopayments/models/onboarded_status.rb +0 -39
  489. data/lib/velopayments/models/onboarded_status2.rb +0 -39
  490. data/lib/velopayments/models/payment_audit_currency.rb +0 -38
  491. data/lib/velopayments/models/payment_audit_currency_v3.rb +0 -38
  492. data/lib/velopayments/models/payment_rails.rb +0 -37
  493. data/lib/velopayments/models/payor_logo_request.rb +0 -218
  494. data/lib/velopayments/models/payout_status.rb +0 -44
  495. data/lib/velopayments/models/payout_status_v3.rb +0 -44
  496. data/lib/velopayments/models/payout_type.rb +0 -38
  497. data/lib/velopayments/models/schedule_status.rb +0 -38
  498. data/lib/velopayments/models/schedule_status2.rb +0 -38
  499. data/lib/velopayments/models/source_account_type.rb +0 -37
  500. data/lib/velopayments/models/transmission_type.rb +0 -38
  501. data/lib/velopayments/models/watchlist_status.rb +0 -40
  502. data/lib/velopayments/models/watchlist_status2.rb +0 -40
  503. data/spec/models/accepted_payment_v3_spec.rb +0 -76
  504. data/spec/models/access_token_response_spec.rb +0 -70
  505. data/spec/models/access_token_validation_request_spec.rb +0 -34
  506. data/spec/models/auth_response_spec.rb +0 -64
  507. data/spec/models/auto_top_up_config2_spec.rb +0 -52
  508. data/spec/models/auto_top_up_config_spec.rb +0 -46
  509. data/spec/models/category_spec.rb +0 -28
  510. data/spec/models/challenge2_spec.rb +0 -40
  511. data/spec/models/challenge_spec.rb +0 -40
  512. data/spec/models/company_spec.rb +0 -46
  513. data/spec/models/create_funding_account_request_v2_spec.rb +0 -74
  514. data/spec/models/create_individual2_spec.rb +0 -46
  515. data/spec/models/create_individual_name_spec.rb +0 -52
  516. data/spec/models/create_individual_spec.rb +0 -46
  517. data/spec/models/create_payee2_spec.rb +0 -94
  518. data/spec/models/create_payee_address2_spec.rb +0 -80
  519. data/spec/models/create_payee_address_spec.rb +0 -80
  520. data/spec/models/create_payee_spec.rb +0 -94
  521. data/spec/models/create_payees_csv_request2_spec.rb +0 -214
  522. data/spec/models/create_payees_csv_request_spec.rb +0 -214
  523. data/spec/models/create_payees_csv_response2_spec.rb +0 -40
  524. data/spec/models/create_payees_csv_response_rejected_csv_rows_spec.rb +0 -46
  525. data/spec/models/create_payees_csv_response_spec.rb +0 -40
  526. data/spec/models/create_payees_request2_spec.rb +0 -40
  527. data/spec/models/create_payees_request_spec.rb +0 -40
  528. data/spec/models/create_payment_channel2_spec.rb +0 -78
  529. data/spec/models/create_payment_channel_spec.rb +0 -78
  530. data/spec/models/create_payor_link_request_spec.rb +0 -50
  531. data/spec/models/create_payout_request_v3_spec.rb +0 -52
  532. data/spec/models/debit_event_all_of_spec.rb +0 -34
  533. data/spec/models/debit_event_spec.rb +0 -52
  534. data/spec/models/debit_status_changed_all_of_spec.rb +0 -34
  535. data/spec/models/debit_status_changed_spec.rb +0 -58
  536. data/spec/models/error_data_spec.rb +0 -40
  537. data/spec/models/error_response_spec.rb +0 -46
  538. data/spec/models/error_spec.rb +0 -74
  539. data/spec/models/failed_payee2_spec.rb +0 -94
  540. data/spec/models/failed_payee_spec.rb +0 -94
  541. data/spec/models/failed_submission2_spec.rb +0 -40
  542. data/spec/models/failed_submission_spec.rb +0 -40
  543. data/spec/models/funding_account_response2_spec.rb +0 -88
  544. data/spec/models/funding_account_response_spec.rb +0 -88
  545. data/spec/models/funding_account_type_spec.rb +0 -28
  546. data/spec/models/funding_audit_spec.rb +0 -94
  547. data/spec/models/funding_event_spec.rb +0 -52
  548. data/spec/models/funding_event_type_spec.rb +0 -28
  549. data/spec/models/funding_payor_status_audit_response_spec.rb +0 -52
  550. data/spec/models/funding_request_v1_spec.rb +0 -34
  551. data/spec/models/funding_request_v2_spec.rb +0 -34
  552. data/spec/models/funding_request_v3_spec.rb +0 -40
  553. data/spec/models/fx_summary_spec.rb +0 -96
  554. data/spec/models/fx_summary_v3_spec.rb +0 -96
  555. data/spec/models/get_fundings_response_spec.rb +0 -46
  556. data/spec/models/get_payee_list_response2_spec.rb +0 -130
  557. data/spec/models/get_payee_list_response_company2_spec.rb +0 -40
  558. data/spec/models/get_payee_list_response_company_spec.rb +0 -40
  559. data/spec/models/get_payee_list_response_individual2_spec.rb +0 -34
  560. data/spec/models/get_payee_list_response_individual_spec.rb +0 -34
  561. data/spec/models/get_payee_list_response_spec.rb +0 -130
  562. data/spec/models/get_payments_for_payout_response_v3_page_spec.rb +0 -58
  563. data/spec/models/get_payments_for_payout_response_v3_spec.rb +0 -52
  564. data/spec/models/get_payments_for_payout_response_v3_summary_spec.rb +0 -92
  565. data/spec/models/get_payments_for_payout_response_v4_spec.rb +0 -52
  566. data/spec/models/get_payments_for_payout_response_v4_summary_spec.rb +0 -148
  567. data/spec/models/get_payout_statistics_spec.rb +0 -40
  568. data/spec/models/get_payouts_response_spec.rb +0 -46
  569. data/spec/models/get_payouts_response_v3_links_spec.rb +0 -40
  570. data/spec/models/get_payouts_response_v3_page_spec.rb +0 -58
  571. data/spec/models/get_payouts_response_v3_spec.rb +0 -46
  572. data/spec/models/individual2_spec.rb +0 -46
  573. data/spec/models/individual_name_spec.rb +0 -52
  574. data/spec/models/individual_spec.rb +0 -46
  575. data/spec/models/inline_response400_spec.rb +0 -46
  576. data/spec/models/inline_response401_spec.rb +0 -46
  577. data/spec/models/inline_response403_spec.rb +0 -46
  578. data/spec/models/inline_response404_spec.rb +0 -46
  579. data/spec/models/inline_response409_spec.rb +0 -46
  580. data/spec/models/inline_response412_spec.rb +0 -46
  581. data/spec/models/instruct_payout_request_spec.rb +0 -34
  582. data/spec/models/invitation_status2_spec.rb +0 -28
  583. data/spec/models/invitation_status_spec.rb +0 -28
  584. data/spec/models/invite_payee_request2_spec.rb +0 -34
  585. data/spec/models/invite_payee_request_spec.rb +0 -34
  586. data/spec/models/invite_user_request_spec.rb +0 -102
  587. data/spec/models/kyc_state_spec.rb +0 -28
  588. data/spec/models/link_for_response_spec.rb +0 -40
  589. data/spec/models/list_funding_accounts_response2_spec.rb +0 -46
  590. data/spec/models/list_funding_accounts_response_spec.rb +0 -46
  591. data/spec/models/list_payments_response_v3_page_spec.rb +0 -58
  592. data/spec/models/list_payments_response_v3_spec.rb +0 -46
  593. data/spec/models/list_payments_response_v4_spec.rb +0 -46
  594. data/spec/models/list_source_account_response_links_spec.rb +0 -40
  595. data/spec/models/list_source_account_response_page_spec.rb +0 -58
  596. data/spec/models/list_source_account_response_spec.rb +0 -46
  597. data/spec/models/list_source_account_response_v2_links_spec.rb +0 -40
  598. data/spec/models/list_source_account_response_v2_spec.rb +0 -46
  599. data/spec/models/list_source_account_response_v3_links_spec.rb +0 -40
  600. data/spec/models/list_source_account_response_v3_spec.rb +0 -46
  601. data/spec/models/localisation_details_spec.rb +0 -40
  602. data/spec/models/mfa_details_spec.rb +0 -40
  603. data/spec/models/mfa_type_spec.rb +0 -28
  604. data/spec/models/name2_spec.rb +0 -52
  605. data/spec/models/name_spec.rb +0 -52
  606. data/spec/models/notification_spec.rb +0 -58
  607. data/spec/models/notifications2_spec.rb +0 -34
  608. data/spec/models/notifications_spec.rb +0 -34
  609. data/spec/models/ofac_status_spec.rb +0 -28
  610. data/spec/models/onboarded_status2_spec.rb +0 -28
  611. data/spec/models/onboarded_status_spec.rb +0 -28
  612. data/spec/models/onboarding_status_changed_spec.rb +0 -58
  613. data/spec/models/page_for_response_spec.rb +0 -58
  614. data/spec/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response_spec.rb +0 -46
  615. data/spec/models/paged_payee_invitation_status_response2_spec.rb +0 -46
  616. data/spec/models/paged_payee_invitation_status_response_page_spec.rb +0 -58
  617. data/spec/models/paged_payee_invitation_status_response_spec.rb +0 -46
  618. data/spec/models/paged_payee_response2_spec.rb +0 -52
  619. data/spec/models/paged_payee_response_links_spec.rb +0 -40
  620. data/spec/models/paged_payee_response_page_spec.rb +0 -58
  621. data/spec/models/paged_payee_response_spec.rb +0 -52
  622. data/spec/models/paged_payee_response_summary_spec.rb +0 -58
  623. data/spec/models/paged_payments_response_v3_spec.rb +0 -46
  624. data/spec/models/paged_user_response_links_spec.rb +0 -40
  625. data/spec/models/paged_user_response_page_spec.rb +0 -58
  626. data/spec/models/paged_user_response_spec.rb +0 -46
  627. data/spec/models/password_request_spec.rb +0 -34
  628. data/spec/models/payable_issue2_spec.rb +0 -40
  629. data/spec/models/payable_issue_spec.rb +0 -40
  630. data/spec/models/payable_status_changed_spec.rb +0 -58
  631. data/spec/models/payee_address2_spec.rb +0 -76
  632. data/spec/models/payee_address_spec.rb +0 -76
  633. data/spec/models/payee_delta2_spec.rb +0 -70
  634. data/spec/models/payee_delta_response2_links_spec.rb +0 -40
  635. data/spec/models/payee_delta_response2_spec.rb +0 -46
  636. data/spec/models/payee_delta_response_links_spec.rb +0 -40
  637. data/spec/models/payee_delta_response_page_spec.rb +0 -58
  638. data/spec/models/payee_delta_response_spec.rb +0 -46
  639. data/spec/models/payee_delta_spec.rb +0 -70
  640. data/spec/models/payee_detail_response2_spec.rb +0 -202
  641. data/spec/models/payee_detail_response_spec.rb +0 -202
  642. data/spec/models/payee_details_changed_spec.rb +0 -58
  643. data/spec/models/payee_event_all_of_reasons_spec.rb +0 -40
  644. data/spec/models/payee_event_all_of_spec.rb +0 -40
  645. data/spec/models/payee_event_spec.rb +0 -58
  646. data/spec/models/payee_invitation_status_response2_spec.rb +0 -50
  647. data/spec/models/payee_invitation_status_response_spec.rb +0 -50
  648. data/spec/models/payee_payor_ref_spec.rb +0 -70
  649. data/spec/models/payee_payor_ref_v3_spec.rb +0 -70
  650. data/spec/models/payee_type2_spec.rb +0 -28
  651. data/spec/models/payee_type_spec.rb +0 -28
  652. data/spec/models/payee_user_self_update_request_spec.rb +0 -64
  653. data/spec/models/payment_audit_currency_spec.rb +0 -28
  654. data/spec/models/payment_audit_currency_v3_spec.rb +0 -28
  655. data/spec/models/payment_channel_country_spec.rb +0 -40
  656. data/spec/models/payment_channel_rule_spec.rb +0 -70
  657. data/spec/models/payment_channel_rules_response_spec.rb +0 -34
  658. data/spec/models/payment_delta_response_spec.rb +0 -46
  659. data/spec/models/payment_delta_response_v1_spec.rb +0 -46
  660. data/spec/models/payment_delta_spec.rb +0 -76
  661. data/spec/models/payment_delta_v1_spec.rb +0 -76
  662. data/spec/models/payment_event_all_of_spec.rb +0 -46
  663. data/spec/models/payment_event_response_spec.rb +0 -104
  664. data/spec/models/payment_event_response_v3_spec.rb +0 -104
  665. data/spec/models/payment_event_spec.rb +0 -64
  666. data/spec/models/payment_instruction_v3_spec.rb +0 -82
  667. data/spec/models/payment_rails_spec.rb +0 -28
  668. data/spec/models/payment_rejected_or_returned_all_of_spec.rb +0 -40
  669. data/spec/models/payment_rejected_or_returned_spec.rb +0 -82
  670. data/spec/models/payment_response_v3_spec.rb +0 -252
  671. data/spec/models/payment_response_v4_payout_spec.rb +0 -46
  672. data/spec/models/payment_response_v4_spec.rb +0 -318
  673. data/spec/models/payment_status_changed_all_of_spec.rb +0 -34
  674. data/spec/models/payment_status_changed_spec.rb +0 -70
  675. data/spec/models/payment_v3_spec.rb +0 -116
  676. data/spec/models/payor_address_spec.rb +0 -76
  677. data/spec/models/payor_address_v2_spec.rb +0 -76
  678. data/spec/models/payor_aml_transaction_spec.rb +0 -190
  679. data/spec/models/payor_aml_transaction_v3_spec.rb +0 -178
  680. data/spec/models/payor_branding_response_spec.rb +0 -58
  681. data/spec/models/payor_create_api_key_request_spec.rb +0 -50
  682. data/spec/models/payor_create_api_key_response_spec.rb +0 -40
  683. data/spec/models/payor_create_application_request_spec.rb +0 -40
  684. data/spec/models/payor_email_opt_out_request_spec.rb +0 -34
  685. data/spec/models/payor_links_response_links_spec.rb +0 -56
  686. data/spec/models/payor_links_response_payors_spec.rb +0 -56
  687. data/spec/models/payor_links_response_spec.rb +0 -40
  688. data/spec/models/payor_logo_request_spec.rb +0 -34
  689. data/spec/models/payor_v1_spec.rb +0 -164
  690. data/spec/models/payor_v2_spec.rb +0 -182
  691. data/spec/models/payout_company_v3_spec.rb +0 -34
  692. data/spec/models/payout_individual_v3_spec.rb +0 -34
  693. data/spec/models/payout_name_v3_spec.rb +0 -40
  694. data/spec/models/payout_payee_v3_spec.rb +0 -46
  695. data/spec/models/payout_payor_ids_spec.rb +0 -46
  696. data/spec/models/payout_payor_spec.rb +0 -58
  697. data/spec/models/payout_principal_spec.rb +0 -40
  698. data/spec/models/payout_schedule2_spec.rb +0 -58
  699. data/spec/models/payout_schedule_spec.rb +0 -64
  700. data/spec/models/payout_status_spec.rb +0 -28
  701. data/spec/models/payout_status_v3_spec.rb +0 -28
  702. data/spec/models/payout_summary_audit_spec.rb +0 -130
  703. data/spec/models/payout_summary_audit_v3_spec.rb +0 -100
  704. data/spec/models/payout_summary_response_v3_spec.rb +0 -94
  705. data/spec/models/payout_type_spec.rb +0 -28
  706. data/spec/models/ping_response_spec.rb +0 -40
  707. data/spec/models/ping_spec.rb +0 -46
  708. data/spec/models/query_batch_response2_spec.rb +0 -56
  709. data/spec/models/query_batch_response_spec.rb +0 -56
  710. data/spec/models/quote_fx_summary_v3_spec.rb +0 -102
  711. data/spec/models/quote_response_v3_spec.rb +0 -34
  712. data/spec/models/region_v2_spec.rb +0 -40
  713. data/spec/models/register_sms_request_spec.rb +0 -34
  714. data/spec/models/rejected_payment_v3_spec.rb +0 -94
  715. data/spec/models/resend_token_request_spec.rb +0 -44
  716. data/spec/models/reset_password_request_spec.rb +0 -34
  717. data/spec/models/role_spec.rb +0 -34
  718. data/spec/models/role_update_request_spec.rb +0 -40
  719. data/spec/models/schedule_payout_request_spec.rb +0 -40
  720. data/spec/models/schedule_status2_spec.rb +0 -28
  721. data/spec/models/schedule_status_spec.rb +0 -28
  722. data/spec/models/self_mfa_type_unregister_request_spec.rb +0 -38
  723. data/spec/models/self_update_password_request_spec.rb +0 -40
  724. data/spec/models/set_notifications_request_spec.rb +0 -34
  725. data/spec/models/source_account_response_spec.rb +0 -116
  726. data/spec/models/source_account_response_v2_spec.rb +0 -128
  727. data/spec/models/source_account_response_v3_spec.rb +0 -140
  728. data/spec/models/source_account_summary_spec.rb +0 -46
  729. data/spec/models/source_account_summary_v3_spec.rb +0 -46
  730. data/spec/models/source_account_type_spec.rb +0 -28
  731. data/spec/models/source_account_v3_spec.rb +0 -52
  732. data/spec/models/source_event_spec.rb +0 -46
  733. data/spec/models/supported_countries_response_spec.rb +0 -34
  734. data/spec/models/supported_countries_response_v2_spec.rb +0 -34
  735. data/spec/models/supported_country_spec.rb +0 -40
  736. data/spec/models/supported_country_v2_spec.rb +0 -46
  737. data/spec/models/supported_currency_response_v2_spec.rb +0 -34
  738. data/spec/models/supported_currency_v2_spec.rb +0 -40
  739. data/spec/models/transfer_request2_spec.rb +0 -46
  740. data/spec/models/transfer_request_spec.rb +0 -46
  741. data/spec/models/transmission_type_spec.rb +0 -28
  742. data/spec/models/transmission_types2_spec.rb +0 -46
  743. data/spec/models/transmission_types_spec.rb +0 -46
  744. data/spec/models/unregister_mfa_request_spec.rb +0 -44
  745. data/spec/models/update_payee_details_request2_spec.rb +0 -76
  746. data/spec/models/update_payee_details_request_spec.rb +0 -70
  747. data/spec/models/update_remote_id_request2_spec.rb +0 -40
  748. data/spec/models/update_remote_id_request_spec.rb +0 -40
  749. data/spec/models/update_webhook_request_spec.rb +0 -52
  750. data/spec/models/user_details_update_request_spec.rb +0 -76
  751. data/spec/models/user_info_spec.rb +0 -46
  752. data/spec/models/user_response_spec.rb +0 -140
  753. data/spec/models/user_status_spec.rb +0 -28
  754. data/spec/models/user_type2_spec.rb +0 -28
  755. data/spec/models/user_type_spec.rb +0 -28
  756. data/spec/models/validate_password_response_spec.rb +0 -52
  757. data/spec/models/watchlist_status2_spec.rb +0 -28
  758. data/spec/models/watchlist_status_spec.rb +0 -28
  759. data/spec/models/webhook_response_spec.rb +0 -64
  760. data/spec/models/webhooks_response_spec.rb +0 -46
  761. data/spec/models/withdraw_payment_request_spec.rb +0 -34
@@ -3,10 +3,10 @@
3
3
 
4
4
  ### Terms and Definitions Throughout this document and the Velo platform the following terms are used: * **Payor.** An entity (typically a corporation) which wishes to pay funds to one or more payees via a payout. * **Payee.** The recipient of funds paid out by a payor. * **Payment.** A single transfer of funds from a payor to a payee. * **Payout.** A batch of Payments, typically used by a payor to logically group payments (e.g. by business day). Technically there need be no relationship between the payments in a payout - a single payout can contain payments to multiple payees and/or multiple payments to a single payee. * **Sandbox.** An integration environment provided by Velo Payments which offers a similar API experience to the production environment, but all funding and payment events are simulated, along with many other services such as OFAC sanctions list checking. ## Overview The Velo Payments API allows a payor to perform a number of operations. The following is a list of the main capabilities in a natural order of execution: * Authenticate with the Velo platform * Maintain a collection of payees * Query the payor’s current balance of funds within the platform and perform additional funding * Issue payments to payees * Query the platform for a history of those payments This document describes the main concepts and APIs required to get up and running with the Velo Payments platform. It is not an exhaustive API reference. For that, please see the separate Velo Payments API Reference. ## API Considerations The Velo Payments API is REST based and uses the JSON format for requests and responses. Most calls are secured using OAuth 2 security and require a valid authentication access token for successful operation. See the Authentication section for details. Where a dynamic value is required in the examples below, the {token} format is used, suggesting that the caller needs to supply the appropriate value of the token in question (without including the { or } characters). Where curl examples are given, the –d @filename.json approach is used, indicating that the request body should be placed into a file named filename.json in the current directory. Each of the curl examples in this document should be considered a single line on the command-line, regardless of how they appear in print. ## Authenticating with the Velo Platform Once Velo backoffice staff have added your organization as a payor within the Velo platform sandbox, they will create you a payor Id, an API key and an API secret and share these with you in a secure manner. You will need to use these values to authenticate with the Velo platform in order to gain access to the APIs. The steps to take are explained in the following: create a string comprising the API key (e.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8) and API secret (e.g. c396b26b-137a-44fd-87f5-34631f8fd529) with a colon between them. E.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8:c396b26b-137a-44fd-87f5-34631f8fd529 base64 encode this string. E.g.: NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== create an HTTP **Authorization** header with the value set to e.g. Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== perform the Velo authentication REST call using the HTTP header created above e.g. via curl: ``` curl -X POST \\ -H \"Content-Type: application/json\" \\ -H \"Authorization: Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ==\" \\ 'https://api.sandbox.velopayments.com/v1/authenticate?grant_type=client_credentials' ``` If successful, this call will result in a **200** HTTP status code and a response body such as: ``` { \"access_token\":\"19f6bafd-93fd-4747-b229-00507bbc991f\", \"token_type\":\"bearer\", \"expires_in\":1799, \"scope\":\"...\" } ``` ## API access following authentication Following successful authentication, the value of the access_token field in the response (indicated in green above) should then be presented with all subsequent API calls to allow the Velo platform to validate that the caller is authenticated. This is achieved by setting the HTTP Authorization header with the value set to e.g. Bearer 19f6bafd-93fd-4747-b229-00507bbc991f such as the curl example below: ``` -H \"Authorization: Bearer 19f6bafd-93fd-4747-b229-00507bbc991f \" ``` If you make other Velo API calls which require authorization but the Authorization header is missing or invalid then you will get a **401** HTTP status response.
5
5
 
6
- The version of the OpenAPI document: 2.29.128
6
+ The version of the OpenAPI document: 2.35.58
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0-SNAPSHOT
9
+ OpenAPI Generator version: 7.1.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -14,10 +14,10 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module VeloPayments
17
- class CreatePaymentChannel2
17
+ class CreatePaymentChannelV4
18
18
  attr_accessor :payment_channel_name
19
19
 
20
- # Must match the regular expression ```^[A-Za-z0-9]+$```. Either routing number and account number or only iban must be set
20
+ # Must match the regular expression ```^[A-Za-z0-9]+$```.
21
21
  attr_accessor :iban
22
22
 
23
23
  # Either routing number and account number or only iban must be set
@@ -26,35 +26,14 @@ module VeloPayments
26
26
  # Either routing number and account number or only iban must be set
27
27
  attr_accessor :routing_number
28
28
 
29
- # Two character country code
29
+ # Valid ISO 3166 2 character country code. See the <a href=\"https://www.iso.org/iso-3166-country-codes.html\" target=\"_blank\" a>ISO specification</a> for details.
30
30
  attr_accessor :country_code
31
31
 
32
+ # Valid ISO 4217 3 letter currency code. See the <a href=\"https://www.iso.org/iso-4217-currency-codes.html\" target=\"_blank\" a>ISO specification</a> for details.
32
33
  attr_accessor :currency
33
34
 
34
35
  attr_accessor :account_name
35
36
 
36
- class EnumAttributeValidator
37
- attr_reader :datatype
38
- attr_reader :allowable_values
39
-
40
- def initialize(datatype, allowable_values)
41
- @allowable_values = allowable_values.map do |value|
42
- case datatype.to_s
43
- when /Integer/i
44
- value.to_i
45
- when /Float/i
46
- value.to_f
47
- else
48
- value
49
- end
50
- end
51
- end
52
-
53
- def valid?(value)
54
- !value || allowable_values.include?(value)
55
- end
56
- end
57
-
58
37
  # Attribute mapping from ruby-style variable name to JSON key.
59
38
  def self.attribute_map
60
39
  {
@@ -96,13 +75,13 @@ module VeloPayments
96
75
  # @param [Hash] attributes Model attributes in the form of hash
97
76
  def initialize(attributes = {})
98
77
  if (!attributes.is_a?(Hash))
99
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::CreatePaymentChannel2` initialize method"
78
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::CreatePaymentChannelV4` initialize method"
100
79
  end
101
80
 
102
81
  # check to see if the attribute exists and convert string to symbol for hash key
103
82
  attributes = attributes.each_with_object({}) { |(k, v), h|
104
83
  if (!self.class.attribute_map.key?(k.to_sym))
105
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::CreatePaymentChannel2`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
84
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::CreatePaymentChannelV4`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
106
85
  end
107
86
  h[k.to_sym] = v
108
87
  }
@@ -125,20 +104,27 @@ module VeloPayments
125
104
 
126
105
  if attributes.key?(:'country_code')
127
106
  self.country_code = attributes[:'country_code']
107
+ else
108
+ self.country_code = nil
128
109
  end
129
110
 
130
111
  if attributes.key?(:'currency')
131
112
  self.currency = attributes[:'currency']
113
+ else
114
+ self.currency = nil
132
115
  end
133
116
 
134
117
  if attributes.key?(:'account_name')
135
118
  self.account_name = attributes[:'account_name']
119
+ else
120
+ self.account_name = nil
136
121
  end
137
122
  end
138
123
 
139
124
  # Show invalid properties with the reasons. Usually used together with valid?
140
125
  # @return Array for valid properties with the reasons
141
126
  def list_invalid_properties
127
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
142
128
  invalid_properties = Array.new
143
129
  if !@iban.nil? && @iban.to_s.length > 34
144
130
  invalid_properties.push('invalid value for "iban", the character length must be smaller than or equal to 34.')
@@ -181,10 +167,28 @@ module VeloPayments
181
167
  invalid_properties.push('invalid value for "country_code", the character length must be great than or equal to 2.')
182
168
  end
183
169
 
170
+ pattern = Regexp.new(/^[A-Z]{2}$/)
171
+ if @country_code !~ pattern
172
+ invalid_properties.push("invalid value for \"country_code\", must conform to the pattern #{pattern}.")
173
+ end
174
+
184
175
  if @currency.nil?
185
176
  invalid_properties.push('invalid value for "currency", currency cannot be nil.')
186
177
  end
187
178
 
179
+ if @currency.to_s.length > 3
180
+ invalid_properties.push('invalid value for "currency", the character length must be smaller than or equal to 3.')
181
+ end
182
+
183
+ if @currency.to_s.length < 3
184
+ invalid_properties.push('invalid value for "currency", the character length must be great than or equal to 3.')
185
+ end
186
+
187
+ pattern = Regexp.new(/^[A-Z]{3}$/)
188
+ if @currency !~ pattern
189
+ invalid_properties.push("invalid value for \"currency\", must conform to the pattern #{pattern}.")
190
+ end
191
+
188
192
  if @account_name.nil?
189
193
  invalid_properties.push('invalid value for "account_name", account_name cannot be nil.')
190
194
  end
@@ -195,6 +199,7 @@ module VeloPayments
195
199
  # Check to see if the all the properties in the model are valid
196
200
  # @return true if the model is valid
197
201
  def valid?
202
+ warn '[DEPRECATED] the `valid?` method is obsolete'
198
203
  return false if !@iban.nil? && @iban.to_s.length > 34
199
204
  return false if !@iban.nil? && @iban.to_s.length < 15
200
205
  return false if !@iban.nil? && @iban !~ Regexp.new(/^[A-Za-z0-9]+$/)
@@ -203,13 +208,13 @@ module VeloPayments
203
208
  return false if !@routing_number.nil? && @routing_number.to_s.length > 9
204
209
  return false if !@routing_number.nil? && @routing_number.to_s.length < 9
205
210
  return false if @country_code.nil?
206
- country_code_validator = EnumAttributeValidator.new('String', ["AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AU", "AT", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "false", "OM", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RE", "RO", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "GS", "SS", "ES", "LK", "SD", "SR", "SJ", "SZ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TL", "TG", "TK", "TO", "TT", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "AE", "GB", "US", "UM", "UY", "UZ", "VU", "VE", "VN", "VG", "VI", "WF", "EH", "YE", "ZM", "ZW"])
207
- return false unless country_code_validator.valid?(@country_code)
208
211
  return false if @country_code.to_s.length > 2
209
212
  return false if @country_code.to_s.length < 2
213
+ return false if @country_code !~ Regexp.new(/^[A-Z]{2}$/)
210
214
  return false if @currency.nil?
211
- currency_validator = EnumAttributeValidator.new('String', ["USD", "GBP", "EUR"])
212
- return false unless currency_validator.valid?(@currency)
215
+ return false if @currency.to_s.length > 3
216
+ return false if @currency.to_s.length < 3
217
+ return false if @currency !~ Regexp.new(/^[A-Z]{3}$/)
213
218
  return false if @account_name.nil?
214
219
  true
215
220
  end
@@ -217,16 +222,20 @@ module VeloPayments
217
222
  # Custom attribute writer method with validation
218
223
  # @param [Object] iban Value to be assigned
219
224
  def iban=(iban)
220
- if !iban.nil? && iban.to_s.length > 34
225
+ if iban.nil?
226
+ fail ArgumentError, 'iban cannot be nil'
227
+ end
228
+
229
+ if iban.to_s.length > 34
221
230
  fail ArgumentError, 'invalid value for "iban", the character length must be smaller than or equal to 34.'
222
231
  end
223
232
 
224
- if !iban.nil? && iban.to_s.length < 15
233
+ if iban.to_s.length < 15
225
234
  fail ArgumentError, 'invalid value for "iban", the character length must be great than or equal to 15.'
226
235
  end
227
236
 
228
237
  pattern = Regexp.new(/^[A-Za-z0-9]+$/)
229
- if !iban.nil? && iban !~ pattern
238
+ if iban !~ pattern
230
239
  fail ArgumentError, "invalid value for \"iban\", must conform to the pattern #{pattern}."
231
240
  end
232
241
 
@@ -236,11 +245,15 @@ module VeloPayments
236
245
  # Custom attribute writer method with validation
237
246
  # @param [Object] account_number Value to be assigned
238
247
  def account_number=(account_number)
239
- if !account_number.nil? && account_number.to_s.length > 17
248
+ if account_number.nil?
249
+ fail ArgumentError, 'account_number cannot be nil'
250
+ end
251
+
252
+ if account_number.to_s.length > 17
240
253
  fail ArgumentError, 'invalid value for "account_number", the character length must be smaller than or equal to 17.'
241
254
  end
242
255
 
243
- if !account_number.nil? && account_number.to_s.length < 6
256
+ if account_number.to_s.length < 6
244
257
  fail ArgumentError, 'invalid value for "account_number", the character length must be great than or equal to 6.'
245
258
  end
246
259
 
@@ -250,34 +263,64 @@ module VeloPayments
250
263
  # Custom attribute writer method with validation
251
264
  # @param [Object] routing_number Value to be assigned
252
265
  def routing_number=(routing_number)
253
- if !routing_number.nil? && routing_number.to_s.length > 9
266
+ if routing_number.nil?
267
+ fail ArgumentError, 'routing_number cannot be nil'
268
+ end
269
+
270
+ if routing_number.to_s.length > 9
254
271
  fail ArgumentError, 'invalid value for "routing_number", the character length must be smaller than or equal to 9.'
255
272
  end
256
273
 
257
- if !routing_number.nil? && routing_number.to_s.length < 9
274
+ if routing_number.to_s.length < 9
258
275
  fail ArgumentError, 'invalid value for "routing_number", the character length must be great than or equal to 9.'
259
276
  end
260
277
 
261
278
  @routing_number = routing_number
262
279
  end
263
280
 
264
- # Custom attribute writer method checking allowed values (enum).
265
- # @param [Object] country_code Object to be assigned
281
+ # Custom attribute writer method with validation
282
+ # @param [Object] country_code Value to be assigned
266
283
  def country_code=(country_code)
267
- validator = EnumAttributeValidator.new('String', ["AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AU", "AT", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "false", "OM", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RE", "RO", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "GS", "SS", "ES", "LK", "SD", "SR", "SJ", "SZ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TL", "TG", "TK", "TO", "TT", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "AE", "GB", "US", "UM", "UY", "UZ", "VU", "VE", "VN", "VG", "VI", "WF", "EH", "YE", "ZM", "ZW"])
268
- unless validator.valid?(country_code)
269
- fail ArgumentError, "invalid value for \"country_code\", must be one of #{validator.allowable_values}."
284
+ if country_code.nil?
285
+ fail ArgumentError, 'country_code cannot be nil'
286
+ end
287
+
288
+ if country_code.to_s.length > 2
289
+ fail ArgumentError, 'invalid value for "country_code", the character length must be smaller than or equal to 2.'
290
+ end
291
+
292
+ if country_code.to_s.length < 2
293
+ fail ArgumentError, 'invalid value for "country_code", the character length must be great than or equal to 2.'
270
294
  end
295
+
296
+ pattern = Regexp.new(/^[A-Z]{2}$/)
297
+ if country_code !~ pattern
298
+ fail ArgumentError, "invalid value for \"country_code\", must conform to the pattern #{pattern}."
299
+ end
300
+
271
301
  @country_code = country_code
272
302
  end
273
303
 
274
- # Custom attribute writer method checking allowed values (enum).
275
- # @param [Object] currency Object to be assigned
304
+ # Custom attribute writer method with validation
305
+ # @param [Object] currency Value to be assigned
276
306
  def currency=(currency)
277
- validator = EnumAttributeValidator.new('String', ["USD", "GBP", "EUR"])
278
- unless validator.valid?(currency)
279
- fail ArgumentError, "invalid value for \"currency\", must be one of #{validator.allowable_values}."
307
+ if currency.nil?
308
+ fail ArgumentError, 'currency cannot be nil'
309
+ end
310
+
311
+ if currency.to_s.length > 3
312
+ fail ArgumentError, 'invalid value for "currency", the character length must be smaller than or equal to 3.'
280
313
  end
314
+
315
+ if currency.to_s.length < 3
316
+ fail ArgumentError, 'invalid value for "currency", the character length must be great than or equal to 3.'
317
+ end
318
+
319
+ pattern = Regexp.new(/^[A-Z]{3}$/)
320
+ if currency !~ pattern
321
+ fail ArgumentError, "invalid value for \"currency\", must conform to the pattern #{pattern}."
322
+ end
323
+
281
324
  @currency = currency
282
325
  end
283
326
 
@@ -311,36 +354,30 @@ module VeloPayments
311
354
  # @param [Hash] attributes Model attributes in the form of hash
312
355
  # @return [Object] Returns the model itself
313
356
  def self.build_from_hash(attributes)
314
- new.build_from_hash(attributes)
315
- end
316
-
317
- # Builds the object from hash
318
- # @param [Hash] attributes Model attributes in the form of hash
319
- # @return [Object] Returns the model itself
320
- def build_from_hash(attributes)
321
357
  return nil unless attributes.is_a?(Hash)
322
- self.class.openapi_types.each_pair do |key, type|
323
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
324
- self.send("#{key}=", nil)
358
+ attributes = attributes.transform_keys(&:to_sym)
359
+ transformed_hash = {}
360
+ openapi_types.each_pair do |key, type|
361
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
362
+ transformed_hash["#{key}"] = nil
325
363
  elsif type =~ /\AArray<(.*)>/i
326
364
  # check to ensure the input is an array given that the attribute
327
365
  # is documented as an array but the input is not
328
- if attributes[self.class.attribute_map[key]].is_a?(Array)
329
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
366
+ if attributes[attribute_map[key]].is_a?(Array)
367
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
330
368
  end
331
- elsif !attributes[self.class.attribute_map[key]].nil?
332
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
369
+ elsif !attributes[attribute_map[key]].nil?
370
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
333
371
  end
334
372
  end
335
-
336
- self
373
+ new(transformed_hash)
337
374
  end
338
375
 
339
376
  # Deserializes the data based on type
340
377
  # @param string type Data type
341
378
  # @param string value Value to be deserialized
342
379
  # @return [Object] Deserialized data
343
- def _deserialize(type, value)
380
+ def self._deserialize(type, value)
344
381
  case type.to_sym
345
382
  when :Time
346
383
  Time.parse(value)
@@ -3,10 +3,10 @@
3
3
 
4
4
  ### Terms and Definitions Throughout this document and the Velo platform the following terms are used: * **Payor.** An entity (typically a corporation) which wishes to pay funds to one or more payees via a payout. * **Payee.** The recipient of funds paid out by a payor. * **Payment.** A single transfer of funds from a payor to a payee. * **Payout.** A batch of Payments, typically used by a payor to logically group payments (e.g. by business day). Technically there need be no relationship between the payments in a payout - a single payout can contain payments to multiple payees and/or multiple payments to a single payee. * **Sandbox.** An integration environment provided by Velo Payments which offers a similar API experience to the production environment, but all funding and payment events are simulated, along with many other services such as OFAC sanctions list checking. ## Overview The Velo Payments API allows a payor to perform a number of operations. The following is a list of the main capabilities in a natural order of execution: * Authenticate with the Velo platform * Maintain a collection of payees * Query the payor’s current balance of funds within the platform and perform additional funding * Issue payments to payees * Query the platform for a history of those payments This document describes the main concepts and APIs required to get up and running with the Velo Payments platform. It is not an exhaustive API reference. For that, please see the separate Velo Payments API Reference. ## API Considerations The Velo Payments API is REST based and uses the JSON format for requests and responses. Most calls are secured using OAuth 2 security and require a valid authentication access token for successful operation. See the Authentication section for details. Where a dynamic value is required in the examples below, the {token} format is used, suggesting that the caller needs to supply the appropriate value of the token in question (without including the { or } characters). Where curl examples are given, the –d @filename.json approach is used, indicating that the request body should be placed into a file named filename.json in the current directory. Each of the curl examples in this document should be considered a single line on the command-line, regardless of how they appear in print. ## Authenticating with the Velo Platform Once Velo backoffice staff have added your organization as a payor within the Velo platform sandbox, they will create you a payor Id, an API key and an API secret and share these with you in a secure manner. You will need to use these values to authenticate with the Velo platform in order to gain access to the APIs. The steps to take are explained in the following: create a string comprising the API key (e.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8) and API secret (e.g. c396b26b-137a-44fd-87f5-34631f8fd529) with a colon between them. E.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8:c396b26b-137a-44fd-87f5-34631f8fd529 base64 encode this string. E.g.: NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== create an HTTP **Authorization** header with the value set to e.g. Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== perform the Velo authentication REST call using the HTTP header created above e.g. via curl: ``` curl -X POST \\ -H \"Content-Type: application/json\" \\ -H \"Authorization: Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ==\" \\ 'https://api.sandbox.velopayments.com/v1/authenticate?grant_type=client_credentials' ``` If successful, this call will result in a **200** HTTP status code and a response body such as: ``` { \"access_token\":\"19f6bafd-93fd-4747-b229-00507bbc991f\", \"token_type\":\"bearer\", \"expires_in\":1799, \"scope\":\"...\" } ``` ## API access following authentication Following successful authentication, the value of the access_token field in the response (indicated in green above) should then be presented with all subsequent API calls to allow the Velo platform to validate that the caller is authenticated. This is achieved by setting the HTTP Authorization header with the value set to e.g. Bearer 19f6bafd-93fd-4747-b229-00507bbc991f such as the curl example below: ``` -H \"Authorization: Bearer 19f6bafd-93fd-4747-b229-00507bbc991f \" ``` If you make other Velo API calls which require authorization but the Authorization header is missing or invalid then you will get a **401** HTTP status response.
5
5
 
6
- The version of the OpenAPI document: 2.29.128
6
+ The version of the OpenAPI document: 2.35.58
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0-SNAPSHOT
9
+ OpenAPI Generator version: 7.1.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -89,20 +89,27 @@ module VeloPayments
89
89
 
90
90
  if attributes.key?(:'from_payor_id')
91
91
  self.from_payor_id = attributes[:'from_payor_id']
92
+ else
93
+ self.from_payor_id = nil
92
94
  end
93
95
 
94
96
  if attributes.key?(:'link_type')
95
97
  self.link_type = attributes[:'link_type']
98
+ else
99
+ self.link_type = nil
96
100
  end
97
101
 
98
102
  if attributes.key?(:'to_payor_id')
99
103
  self.to_payor_id = attributes[:'to_payor_id']
104
+ else
105
+ self.to_payor_id = nil
100
106
  end
101
107
  end
102
108
 
103
109
  # Show invalid properties with the reasons. Usually used together with valid?
104
110
  # @return Array for valid properties with the reasons
105
111
  def list_invalid_properties
112
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
106
113
  invalid_properties = Array.new
107
114
  if @from_payor_id.nil?
108
115
  invalid_properties.push('invalid value for "from_payor_id", from_payor_id cannot be nil.')
@@ -122,6 +129,7 @@ module VeloPayments
122
129
  # Check to see if the all the properties in the model are valid
123
130
  # @return true if the model is valid
124
131
  def valid?
132
+ warn '[DEPRECATED] the `valid?` method is obsolete'
125
133
  return false if @from_payor_id.nil?
126
134
  return false if @link_type.nil?
127
135
  link_type_validator = EnumAttributeValidator.new('String', ["PARENT_OF"])
@@ -166,36 +174,30 @@ module VeloPayments
166
174
  # @param [Hash] attributes Model attributes in the form of hash
167
175
  # @return [Object] Returns the model itself
168
176
  def self.build_from_hash(attributes)
169
- new.build_from_hash(attributes)
170
- end
171
-
172
- # Builds the object from hash
173
- # @param [Hash] attributes Model attributes in the form of hash
174
- # @return [Object] Returns the model itself
175
- def build_from_hash(attributes)
176
177
  return nil unless attributes.is_a?(Hash)
177
- self.class.openapi_types.each_pair do |key, type|
178
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
179
- self.send("#{key}=", nil)
178
+ attributes = attributes.transform_keys(&:to_sym)
179
+ transformed_hash = {}
180
+ openapi_types.each_pair do |key, type|
181
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
182
+ transformed_hash["#{key}"] = nil
180
183
  elsif type =~ /\AArray<(.*)>/i
181
184
  # check to ensure the input is an array given that the attribute
182
185
  # is documented as an array but the input is not
183
- if attributes[self.class.attribute_map[key]].is_a?(Array)
184
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
186
+ if attributes[attribute_map[key]].is_a?(Array)
187
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
185
188
  end
186
- elsif !attributes[self.class.attribute_map[key]].nil?
187
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
189
+ elsif !attributes[attribute_map[key]].nil?
190
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
188
191
  end
189
192
  end
190
-
191
- self
193
+ new(transformed_hash)
192
194
  end
193
195
 
194
196
  # Deserializes the data based on type
195
197
  # @param string type Data type
196
198
  # @param string value Value to be deserialized
197
199
  # @return [Object] Deserialized data
198
- def _deserialize(type, value)
200
+ def self._deserialize(type, value)
199
201
  case type.to_sym
200
202
  when :Time
201
203
  Time.parse(value)
@@ -3,10 +3,10 @@
3
3
 
4
4
  ### Terms and Definitions Throughout this document and the Velo platform the following terms are used: * **Payor.** An entity (typically a corporation) which wishes to pay funds to one or more payees via a payout. * **Payee.** The recipient of funds paid out by a payor. * **Payment.** A single transfer of funds from a payor to a payee. * **Payout.** A batch of Payments, typically used by a payor to logically group payments (e.g. by business day). Technically there need be no relationship between the payments in a payout - a single payout can contain payments to multiple payees and/or multiple payments to a single payee. * **Sandbox.** An integration environment provided by Velo Payments which offers a similar API experience to the production environment, but all funding and payment events are simulated, along with many other services such as OFAC sanctions list checking. ## Overview The Velo Payments API allows a payor to perform a number of operations. The following is a list of the main capabilities in a natural order of execution: * Authenticate with the Velo platform * Maintain a collection of payees * Query the payor’s current balance of funds within the platform and perform additional funding * Issue payments to payees * Query the platform for a history of those payments This document describes the main concepts and APIs required to get up and running with the Velo Payments platform. It is not an exhaustive API reference. For that, please see the separate Velo Payments API Reference. ## API Considerations The Velo Payments API is REST based and uses the JSON format for requests and responses. Most calls are secured using OAuth 2 security and require a valid authentication access token for successful operation. See the Authentication section for details. Where a dynamic value is required in the examples below, the {token} format is used, suggesting that the caller needs to supply the appropriate value of the token in question (without including the { or } characters). Where curl examples are given, the –d @filename.json approach is used, indicating that the request body should be placed into a file named filename.json in the current directory. Each of the curl examples in this document should be considered a single line on the command-line, regardless of how they appear in print. ## Authenticating with the Velo Platform Once Velo backoffice staff have added your organization as a payor within the Velo platform sandbox, they will create you a payor Id, an API key and an API secret and share these with you in a secure manner. You will need to use these values to authenticate with the Velo platform in order to gain access to the APIs. The steps to take are explained in the following: create a string comprising the API key (e.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8) and API secret (e.g. c396b26b-137a-44fd-87f5-34631f8fd529) with a colon between them. E.g. 44a9537d-d55d-4b47-8082-14061c2bcdd8:c396b26b-137a-44fd-87f5-34631f8fd529 base64 encode this string. E.g.: NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== create an HTTP **Authorization** header with the value set to e.g. Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ== perform the Velo authentication REST call using the HTTP header created above e.g. via curl: ``` curl -X POST \\ -H \"Content-Type: application/json\" \\ -H \"Authorization: Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ==\" \\ 'https://api.sandbox.velopayments.com/v1/authenticate?grant_type=client_credentials' ``` If successful, this call will result in a **200** HTTP status code and a response body such as: ``` { \"access_token\":\"19f6bafd-93fd-4747-b229-00507bbc991f\", \"token_type\":\"bearer\", \"expires_in\":1799, \"scope\":\"...\" } ``` ## API access following authentication Following successful authentication, the value of the access_token field in the response (indicated in green above) should then be presented with all subsequent API calls to allow the Velo platform to validate that the caller is authenticated. This is achieved by setting the HTTP Authorization header with the value set to e.g. Bearer 19f6bafd-93fd-4747-b229-00507bbc991f such as the curl example below: ``` -H \"Authorization: Bearer 19f6bafd-93fd-4747-b229-00507bbc991f \" ``` If you make other Velo API calls which require authorization but the Authorization header is missing or invalid then you will get a **401** HTTP status response.
5
5
 
6
- The version of the OpenAPI document: 2.29.128
6
+ The version of the OpenAPI document: 2.35.58
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0-SNAPSHOT
9
+ OpenAPI Generator version: 7.1.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -88,12 +88,15 @@ module VeloPayments
88
88
  if (value = attributes[:'payments']).is_a?(Array)
89
89
  self.payments = value
90
90
  end
91
+ else
92
+ self.payments = nil
91
93
  end
92
94
  end
93
95
 
94
96
  # Show invalid properties with the reasons. Usually used together with valid?
95
97
  # @return Array for valid properties with the reasons
96
98
  def list_invalid_properties
99
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
97
100
  invalid_properties = Array.new
98
101
  if !@payout_memo.nil? && @payout_memo.to_s.length > 40
99
102
  invalid_properties.push('invalid value for "payout_memo", the character length must be smaller than or equal to 40.')
@@ -117,6 +120,7 @@ module VeloPayments
117
120
  # Check to see if the all the properties in the model are valid
118
121
  # @return true if the model is valid
119
122
  def valid?
123
+ warn '[DEPRECATED] the `valid?` method is obsolete'
120
124
  return false if !@payout_memo.nil? && @payout_memo.to_s.length > 40
121
125
  return false if @payments.nil?
122
126
  return false if @payments.length > 2000
@@ -127,7 +131,11 @@ module VeloPayments
127
131
  # Custom attribute writer method with validation
128
132
  # @param [Object] payout_memo Value to be assigned
129
133
  def payout_memo=(payout_memo)
130
- if !payout_memo.nil? && payout_memo.to_s.length > 40
134
+ if payout_memo.nil?
135
+ fail ArgumentError, 'payout_memo cannot be nil'
136
+ end
137
+
138
+ if payout_memo.to_s.length > 40
131
139
  fail ArgumentError, 'invalid value for "payout_memo", the character length must be smaller than or equal to 40.'
132
140
  end
133
141
 
@@ -179,36 +187,30 @@ module VeloPayments
179
187
  # @param [Hash] attributes Model attributes in the form of hash
180
188
  # @return [Object] Returns the model itself
181
189
  def self.build_from_hash(attributes)
182
- new.build_from_hash(attributes)
183
- end
184
-
185
- # Builds the object from hash
186
- # @param [Hash] attributes Model attributes in the form of hash
187
- # @return [Object] Returns the model itself
188
- def build_from_hash(attributes)
189
190
  return nil unless attributes.is_a?(Hash)
190
- self.class.openapi_types.each_pair do |key, type|
191
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
192
- self.send("#{key}=", nil)
191
+ attributes = attributes.transform_keys(&:to_sym)
192
+ transformed_hash = {}
193
+ openapi_types.each_pair do |key, type|
194
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
195
+ transformed_hash["#{key}"] = nil
193
196
  elsif type =~ /\AArray<(.*)>/i
194
197
  # check to ensure the input is an array given that the attribute
195
198
  # is documented as an array but the input is not
196
- if attributes[self.class.attribute_map[key]].is_a?(Array)
197
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
199
+ if attributes[attribute_map[key]].is_a?(Array)
200
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
198
201
  end
199
- elsif !attributes[self.class.attribute_map[key]].nil?
200
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
202
+ elsif !attributes[attribute_map[key]].nil?
203
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
201
204
  end
202
205
  end
203
-
204
- self
206
+ new(transformed_hash)
205
207
  end
206
208
 
207
209
  # Deserializes the data based on type
208
210
  # @param string type Data type
209
211
  # @param string value Value to be deserialized
210
212
  # @return [Object] Deserialized data
211
- def _deserialize(type, value)
213
+ def self._deserialize(type, value)
212
214
  case type.to_sym
213
215
  when :Time
214
216
  Time.parse(value)