velopayments 2.19.40.beta1 → 2.26.124.beta1

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 (923) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +7 -0
  3. data/Gemfile +1 -1
  4. data/Makefile +7 -12
  5. data/README.md +164 -101
  6. data/docs/AcceptedPaymentV3.md +32 -0
  7. data/docs/AccessTokenResponse.md +20 -19
  8. data/docs/AccessTokenValidationRequest.md +8 -7
  9. data/docs/AuthResponse.md +18 -17
  10. data/docs/AutoTopUpConfig.md +12 -11
  11. data/docs/AutoTopUpConfig2.md +24 -0
  12. data/docs/Category.md +15 -0
  13. data/docs/Challenge.md +10 -9
  14. data/docs/Challenge2.md +20 -0
  15. data/docs/Company.md +12 -11
  16. data/docs/Company2.md +12 -11
  17. data/docs/CountriesApi.md +91 -38
  18. data/docs/CreateFundingAccountRequestV2.md +30 -0
  19. data/docs/CreateIndividual.md +12 -11
  20. data/docs/CreateIndividual2.md +12 -11
  21. data/docs/CreateIndividualName.md +24 -0
  22. data/docs/CreatePayee.md +28 -27
  23. data/docs/CreatePayee2.md +28 -27
  24. data/docs/CreatePayeeAddress.md +22 -21
  25. data/docs/CreatePayeeAddress2.md +22 -21
  26. data/docs/CreatePayeesCSVResponse.md +10 -9
  27. data/docs/CreatePayeesCSVResponse2.md +10 -9
  28. data/docs/CreatePayeesCSVResponseRejectedCsvRows.md +12 -11
  29. data/docs/CreatePayeesRequest.md +10 -9
  30. data/docs/CreatePayeesRequest2.md +10 -9
  31. data/docs/CreatePaymentChannel.md +20 -19
  32. data/docs/CreatePaymentChannel2.md +20 -19
  33. data/docs/CreatePayorLinkRequest.md +12 -11
  34. data/docs/CreatePayoutRequestV3.md +24 -0
  35. data/docs/CreateWebhookRequest.md +26 -0
  36. data/docs/CurrenciesApi.md +29 -12
  37. data/docs/DebitEvent.md +24 -0
  38. data/docs/DebitEventAllOf.md +18 -0
  39. data/docs/DebitStatusChanged.md +26 -0
  40. data/docs/DebitStatusChangedAllOf.md +18 -0
  41. data/docs/Error.md +20 -13
  42. data/docs/ErrorData.md +20 -0
  43. data/docs/ErrorResponse.md +12 -9
  44. data/docs/FailedPayee.md +38 -0
  45. data/docs/FailedPayee2.md +38 -0
  46. data/docs/FailedSubmission.md +10 -9
  47. data/docs/FailedSubmission2.md +10 -9
  48. data/docs/FundingAccountResponse.md +26 -17
  49. data/docs/FundingAccountResponse2.md +36 -0
  50. data/docs/FundingAccountType.md +15 -0
  51. data/docs/FundingAudit.md +24 -23
  52. data/docs/FundingEvent.md +14 -13
  53. data/docs/FundingEventType.md +4 -5
  54. data/docs/FundingManagerApi.md +772 -185
  55. data/docs/FundingManagerPrivateApi.md +101 -16
  56. data/docs/FundingPayorStatusAuditResponse.md +14 -13
  57. data/docs/FundingRequestV1.md +8 -7
  58. data/docs/FundingRequestV2.md +8 -7
  59. data/docs/FundingRequestV3.md +20 -0
  60. data/docs/FxSummary.md +36 -0
  61. data/docs/FxSummaryV3.md +26 -25
  62. data/docs/GetFundingsResponse.md +12 -11
  63. data/docs/GetFundingsResponseLinks.md +20 -0
  64. data/docs/GetPayeeListResponse.md +50 -0
  65. data/docs/GetPayeeListResponse2.md +50 -0
  66. data/docs/GetPayeeListResponseCompany.md +20 -0
  67. data/docs/GetPayeeListResponseCompany2.md +20 -0
  68. data/docs/GetPayeeListResponseIndividual.md +18 -0
  69. data/docs/GetPayeeListResponseIndividual2.md +18 -0
  70. data/docs/GetPaymentsForPayoutResponseV3.md +14 -13
  71. data/docs/GetPaymentsForPayoutResponseV3Page.md +16 -15
  72. data/docs/GetPaymentsForPayoutResponseV3Summary.md +26 -25
  73. data/docs/GetPaymentsForPayoutResponseV4.md +14 -13
  74. data/docs/GetPaymentsForPayoutResponseV4Summary.md +44 -41
  75. data/docs/GetPayoutStatistics.md +10 -9
  76. data/docs/GetPayoutsResponse.md +22 -0
  77. data/docs/GetPayoutsResponseV3.md +12 -11
  78. data/docs/GetPayoutsResponseV3Links.md +10 -9
  79. data/docs/GetPayoutsResponseV3Page.md +16 -15
  80. data/docs/Individual.md +12 -11
  81. data/docs/Individual2.md +12 -11
  82. data/docs/IndividualName.md +24 -0
  83. data/docs/InlineResponse400.md +12 -9
  84. data/docs/InlineResponse401.md +12 -9
  85. data/docs/InlineResponse403.md +12 -9
  86. data/docs/InlineResponse404.md +22 -0
  87. data/docs/InlineResponse409.md +22 -0
  88. data/docs/InlineResponse412.md +22 -0
  89. data/docs/InvitationStatus.md +4 -5
  90. data/docs/InvitationStatus2.md +15 -0
  91. data/docs/InvitePayeeRequest.md +8 -7
  92. data/docs/InvitePayeeRequest2.md +8 -7
  93. data/docs/InviteUserRequest.md +26 -25
  94. data/docs/KycState.md +4 -5
  95. data/docs/LinkForResponse.md +10 -9
  96. data/docs/ListFundingAccountsResponse.md +12 -11
  97. data/docs/ListFundingAccountsResponse2.md +22 -0
  98. data/docs/ListPaymentsResponseV3.md +22 -0
  99. data/docs/ListPaymentsResponseV3Page.md +26 -0
  100. data/docs/ListPaymentsResponseV4.md +12 -11
  101. data/docs/ListSourceAccountResponse.md +12 -11
  102. data/docs/ListSourceAccountResponseLinks.md +10 -9
  103. data/docs/ListSourceAccountResponsePage.md +16 -15
  104. data/docs/ListSourceAccountResponseV2.md +12 -11
  105. data/docs/ListSourceAccountResponseV2Links.md +20 -0
  106. data/docs/ListSourceAccountResponseV3.md +22 -0
  107. data/docs/ListSourceAccountResponseV3Links.md +20 -0
  108. data/docs/LocalisationDetails.md +20 -0
  109. data/docs/LoginApi.md +113 -41
  110. data/docs/MFADetails.md +10 -9
  111. data/docs/MFAType.md +4 -5
  112. data/docs/Name.md +24 -0
  113. data/docs/Name2.md +24 -0
  114. data/docs/Notification.md +26 -0
  115. data/docs/Notifications.md +8 -7
  116. data/docs/Notifications2.md +18 -0
  117. data/docs/OfacStatus.md +4 -5
  118. data/docs/OnboardedStatus.md +4 -5
  119. data/docs/OnboardedStatus2.md +4 -5
  120. data/docs/OnboardingStatusChanged.md +26 -0
  121. data/docs/PageForResponse.md +16 -15
  122. data/docs/PageResourceFundingPayorStatusAuditResponseFundingPayorStatusAuditResponse.md +12 -11
  123. data/docs/PagedPayeeInvitationStatusResponse.md +12 -11
  124. data/docs/PagedPayeeInvitationStatusResponse2.md +12 -11
  125. data/docs/PagedPayeeInvitationStatusResponsePage.md +16 -15
  126. data/docs/PagedPayeeResponse.md +14 -13
  127. data/docs/PagedPayeeResponse2.md +14 -13
  128. data/docs/PagedPayeeResponseLinks.md +10 -9
  129. data/docs/PagedPayeeResponsePage.md +16 -15
  130. data/docs/PagedPayeeResponseSummary.md +16 -15
  131. data/docs/PagedPaymentsResponseV3.md +22 -0
  132. data/docs/PagedUserResponse.md +12 -11
  133. data/docs/PagedUserResponseLinks.md +10 -9
  134. data/docs/PagedUserResponsePage.md +16 -15
  135. data/docs/PasswordRequest.md +8 -7
  136. data/docs/PayableIssue.md +20 -0
  137. data/docs/PayableIssue2.md +20 -0
  138. data/docs/PayableStatusChanged.md +26 -0
  139. data/docs/PayeeAddress.md +22 -21
  140. data/docs/PayeeAddress2.md +22 -21
  141. data/docs/PayeeDelta.md +20 -19
  142. data/docs/PayeeDelta2.md +20 -19
  143. data/docs/PayeeDeltaResponse.md +12 -11
  144. data/docs/PayeeDeltaResponse2.md +12 -11
  145. data/docs/PayeeDeltaResponse2Links.md +10 -9
  146. data/docs/PayeeDeltaResponseLinks.md +10 -9
  147. data/docs/PayeeDeltaResponsePage.md +16 -15
  148. data/docs/PayeeDetailResponse.md +74 -0
  149. data/docs/PayeeDetailResponse2.md +74 -0
  150. data/docs/PayeeDetailsChanged.md +26 -0
  151. data/docs/PayeeEvent.md +26 -0
  152. data/docs/PayeeEventAllOf.md +20 -0
  153. data/docs/PayeeEventAllOfReasons.md +20 -0
  154. data/docs/PayeeInvitationApi.md +258 -176
  155. data/docs/PayeeInvitationStatusResponse.md +12 -11
  156. data/docs/PayeeInvitationStatusResponse2.md +12 -11
  157. data/docs/PayeePayorRef.md +20 -11
  158. data/docs/PayeePayorRefV3.md +20 -15
  159. data/docs/PayeeType.md +4 -5
  160. data/docs/PayeeUserSelfUpdateRequest.md +28 -0
  161. data/docs/PayeesApi.md +479 -219
  162. data/docs/PaymentAuditCurrency.md +15 -0
  163. data/docs/PaymentAuditCurrencyV3.md +4 -5
  164. data/docs/PaymentAuditServiceApi.md +280 -437
  165. data/docs/PaymentAuditServiceDeprecatedApi.md +675 -0
  166. data/docs/PaymentChannelCountry.md +10 -9
  167. data/docs/PaymentChannelRule.md +20 -19
  168. data/docs/PaymentChannelRulesResponse.md +8 -7
  169. data/docs/PaymentDelta.md +22 -21
  170. data/docs/PaymentDeltaResponse.md +12 -11
  171. data/docs/PaymentDeltaResponseV1.md +22 -0
  172. data/docs/PaymentDeltaV1.md +32 -0
  173. data/docs/PaymentEvent.md +28 -0
  174. data/docs/PaymentEventAllOf.md +22 -0
  175. data/docs/PaymentEventResponse.md +40 -0
  176. data/docs/PaymentEventResponseV3.md +30 -29
  177. data/docs/PaymentInstructionV3.md +34 -0
  178. data/docs/PaymentRails.md +4 -5
  179. data/docs/PaymentRejectedOrReturned.md +34 -0
  180. data/docs/PaymentRejectedOrReturnedAllOf.md +20 -0
  181. data/docs/PaymentResponseV3.md +78 -77
  182. data/docs/PaymentResponseV4.md +96 -79
  183. data/docs/PaymentResponseV4Payout.md +12 -11
  184. data/docs/PaymentStatusChanged.md +30 -0
  185. data/docs/PaymentStatusChangedAllOf.md +18 -0
  186. data/docs/PaymentV3.md +42 -0
  187. data/docs/PayorAddress.md +22 -21
  188. data/docs/PayorAddressV2.md +22 -21
  189. data/docs/PayorAmlTransaction.md +70 -0
  190. data/docs/PayorAmlTransactionV3.md +56 -61
  191. data/docs/PayorBrandingResponse.md +16 -15
  192. data/docs/PayorCreateApiKeyRequest.md +12 -11
  193. data/docs/PayorCreateApiKeyResponse.md +10 -9
  194. data/docs/PayorCreateApplicationRequest.md +10 -9
  195. data/docs/PayorEmailOptOutRequest.md +8 -7
  196. data/docs/PayorLinksResponse.md +10 -9
  197. data/docs/PayorLinksResponseLinks.md +14 -13
  198. data/docs/PayorLinksResponsePayors.md +14 -13
  199. data/docs/PayorV1.md +50 -47
  200. data/docs/PayorV2.md +52 -45
  201. data/docs/PayorsApi.md +236 -101
  202. data/docs/PayorsPrivateApi.md +29 -13
  203. data/docs/PayoutCompanyV3.md +18 -0
  204. data/docs/PayoutIndividualV3.md +18 -0
  205. data/docs/PayoutNameV3.md +20 -0
  206. data/docs/PayoutPayeeV3.md +22 -0
  207. data/docs/PayoutPayor.md +26 -0
  208. data/docs/PayoutPayorIds.md +22 -0
  209. data/docs/PayoutPrincipal.md +20 -0
  210. data/docs/PayoutServiceApi.md +513 -0
  211. data/docs/PayoutStatus.md +15 -0
  212. data/docs/PayoutStatusV3.md +4 -5
  213. data/docs/PayoutSummaryAudit.md +48 -0
  214. data/docs/PayoutSummaryAuditV3.md +30 -29
  215. data/docs/PayoutSummaryResponseV3.md +36 -0
  216. data/docs/PayoutType.md +15 -0
  217. data/docs/Ping.md +22 -0
  218. data/docs/QueryBatchResponse.md +14 -13
  219. data/docs/QueryBatchResponse2.md +14 -13
  220. data/docs/QuoteFxSummaryV3.md +38 -0
  221. data/docs/QuoteResponseV3.md +18 -0
  222. data/docs/RegionV2.md +20 -0
  223. data/docs/RegisterSmsRequest.md +8 -7
  224. data/docs/RejectedPaymentV3.md +38 -0
  225. data/docs/ResendTokenRequest.md +10 -9
  226. data/docs/ResetPasswordRequest.md +8 -7
  227. data/docs/Role.md +8 -7
  228. data/docs/RoleUpdateRequest.md +10 -9
  229. data/docs/SelfMFATypeUnregisterRequest.md +8 -7
  230. data/docs/SelfUpdatePasswordRequest.md +10 -9
  231. data/docs/SetNotificationsRequest.md +8 -7
  232. data/docs/SourceAccountResponse.md +34 -31
  233. data/docs/SourceAccountResponseV2.md +38 -35
  234. data/docs/SourceAccountResponseV3.md +52 -0
  235. data/docs/SourceAccountSummary.md +22 -0
  236. data/docs/SourceAccountSummaryV3.md +12 -11
  237. data/docs/SourceAccountType.md +15 -0
  238. data/docs/SourceAccountV3.md +24 -0
  239. data/docs/SourceEvent.md +22 -0
  240. data/docs/SupportedCountriesResponse.md +8 -7
  241. data/docs/SupportedCountriesResponseV2.md +18 -0
  242. data/docs/SupportedCountry.md +10 -9
  243. data/docs/SupportedCountryV2.md +22 -0
  244. data/docs/SupportedCurrencyResponseV2.md +18 -0
  245. data/docs/SupportedCurrencyV2.md +20 -0
  246. data/docs/TokensApi.md +31 -15
  247. data/docs/TransferRequest.md +12 -11
  248. data/docs/TransferRequest2.md +22 -0
  249. data/docs/TransmissionType.md +15 -0
  250. data/docs/TransmissionTypes.md +22 -0
  251. data/docs/TransmissionTypes2.md +22 -0
  252. data/docs/UnregisterMFARequest.md +10 -9
  253. data/docs/UpdatePayeeDetailsRequest.md +30 -0
  254. data/docs/UpdatePayeeDetailsRequest2.md +30 -0
  255. data/docs/UpdateRemoteIdRequest.md +10 -9
  256. data/docs/UpdateRemoteIdRequest2.md +20 -0
  257. data/docs/UpdateWebhookRequest.md +24 -0
  258. data/docs/UserDetailsUpdateRequest.md +22 -21
  259. data/docs/UserInfo.md +12 -11
  260. data/docs/UserResponse.md +34 -33
  261. data/docs/UserStatus.md +4 -5
  262. data/docs/UserType.md +4 -5
  263. data/docs/UserType2.md +4 -5
  264. data/docs/UsersApi.md +526 -181
  265. data/docs/ValidatePasswordResponse.md +14 -13
  266. data/docs/WatchlistStatus.md +4 -5
  267. data/docs/WatchlistStatus2.md +15 -0
  268. data/docs/WebhookResponse.md +28 -0
  269. data/docs/WebhooksApi.md +297 -0
  270. data/docs/WebhooksResponse.md +22 -0
  271. data/docs/WithdrawPaymentRequest.md +18 -0
  272. data/lib/velopayments.rb +110 -70
  273. data/lib/velopayments/api/countries_api.rb +38 -35
  274. data/lib/velopayments/api/currencies_api.rb +13 -12
  275. data/lib/velopayments/api/funding_manager_api.rb +519 -74
  276. data/lib/velopayments/api/funding_manager_private_api.rb +77 -13
  277. data/lib/velopayments/api/login_api.rb +21 -14
  278. data/lib/velopayments/api/payee_invitation_api.rb +100 -154
  279. data/lib/velopayments/api/payees_api.rb +299 -203
  280. data/lib/velopayments/api/payment_audit_service_api.rb +153 -459
  281. data/lib/velopayments/api/payment_audit_service_deprecated_api.rb +714 -0
  282. data/lib/velopayments/api/payors_api.rb +48 -40
  283. data/lib/velopayments/api/payors_private_api.rb +6 -5
  284. data/lib/velopayments/api/payout_service_api.rb +513 -0
  285. data/lib/velopayments/api/tokens_api.rb +6 -5
  286. data/lib/velopayments/api/users_api.rb +146 -54
  287. data/lib/velopayments/api/webhooks_api.rb +291 -0
  288. data/lib/velopayments/api_client.rb +51 -47
  289. data/lib/velopayments/api_error.rb +2 -2
  290. data/lib/velopayments/configuration.rb +40 -11
  291. data/lib/velopayments/models/{accepted_payment.rb → accepted_payment_v3.rb} +57 -15
  292. data/lib/velopayments/models/access_token_response.rb +20 -8
  293. data/lib/velopayments/models/access_token_validation_request.rb +20 -8
  294. data/lib/velopayments/models/auth_response.rb +20 -8
  295. data/lib/velopayments/models/auto_top_up_config.rb +20 -8
  296. data/lib/velopayments/models/auto_top_up_config2.rb +256 -0
  297. data/lib/velopayments/models/{language.rb → category.rb} +9 -16
  298. data/lib/velopayments/models/challenge.rb +20 -8
  299. data/lib/velopayments/models/challenge2.rb +293 -0
  300. data/lib/velopayments/models/company.rb +25 -13
  301. data/lib/velopayments/models/company2.rb +25 -13
  302. data/lib/velopayments/models/{payee_payment_channel.rb → create_funding_account_request_v2.rb} +146 -148
  303. data/lib/velopayments/models/create_individual.rb +21 -9
  304. data/lib/velopayments/models/create_individual2.rb +21 -9
  305. data/lib/velopayments/models/{create_individual2_name.rb → create_individual_name.rb} +23 -11
  306. data/lib/velopayments/models/create_payee.rb +24 -11
  307. data/lib/velopayments/models/create_payee2.rb +25 -12
  308. data/lib/velopayments/models/create_payee_address.rb +53 -25
  309. data/lib/velopayments/models/create_payee_address2.rb +20 -8
  310. data/lib/velopayments/models/create_payees_csv_response.rb +20 -8
  311. data/lib/velopayments/models/create_payees_csv_response2.rb +20 -8
  312. data/lib/velopayments/models/create_payees_csv_response_rejected_csv_rows.rb +20 -8
  313. data/lib/velopayments/models/create_payees_request.rb +20 -8
  314. data/lib/velopayments/models/create_payees_request2.rb +20 -8
  315. data/lib/velopayments/models/create_payment_channel.rb +20 -8
  316. data/lib/velopayments/models/create_payment_channel2.rb +20 -8
  317. data/lib/velopayments/models/create_payor_link_request.rb +20 -8
  318. data/lib/velopayments/models/{create_payout_request.rb → create_payout_request_v3.rb} +56 -26
  319. data/lib/velopayments/models/create_webhook_request.rb +338 -0
  320. data/lib/velopayments/models/debit_event.rb +278 -0
  321. data/lib/velopayments/models/debit_event_all_of.rb +224 -0
  322. data/lib/velopayments/models/debit_status_changed.rb +293 -0
  323. data/lib/velopayments/models/debit_status_changed_all_of.rb +224 -0
  324. data/lib/velopayments/models/error.rb +54 -14
  325. data/lib/velopayments/models/error_data.rb +229 -0
  326. data/lib/velopayments/models/error_response.rb +49 -14
  327. data/lib/velopayments/models/{payee_payor_ref_v2.rb → failed_payee.rb} +104 -69
  328. data/lib/velopayments/models/failed_payee2.rb +313 -0
  329. data/lib/velopayments/models/failed_submission.rb +21 -9
  330. data/lib/velopayments/models/failed_submission2.rb +21 -9
  331. data/lib/velopayments/models/funding_account_response.rb +115 -12
  332. data/lib/velopayments/models/{create_funding_account_request.rb → funding_account_response2.rb} +116 -97
  333. data/lib/velopayments/models/{location_type.rb → funding_account_type.rb} +8 -10
  334. data/lib/velopayments/models/funding_audit.rb +33 -19
  335. data/lib/velopayments/models/funding_event.rb +21 -9
  336. data/lib/velopayments/models/funding_event_type.rb +3 -2
  337. data/lib/velopayments/models/funding_payor_status_audit_response.rb +57 -9
  338. data/lib/velopayments/models/funding_request_v1.rb +20 -8
  339. data/lib/velopayments/models/funding_request_v2.rb +20 -8
  340. data/lib/velopayments/models/{payor_logo_request.rb → funding_request_v3.rb} +79 -18
  341. data/lib/velopayments/models/{fx_summary_v4.rb → fx_summary.rb} +26 -14
  342. data/lib/velopayments/models/fx_summary_v3.rb +21 -9
  343. data/lib/velopayments/models/get_fundings_response.rb +23 -18
  344. data/lib/velopayments/models/{get_fundings_response_all_of.rb → get_fundings_response_links.rb} +39 -20
  345. data/lib/velopayments/models/{payee_response2.rb → get_payee_list_response.rb} +96 -115
  346. data/lib/velopayments/models/{payee.rb → get_payee_list_response2.rb} +97 -116
  347. data/lib/velopayments/models/{company_response.rb → get_payee_list_response_company.rb} +29 -26
  348. data/lib/velopayments/models/{company_v1.rb → get_payee_list_response_company2.rb} +30 -55
  349. data/lib/velopayments/models/{user_response2_roles.rb → get_payee_list_response_individual.rb} +24 -12
  350. data/lib/velopayments/models/{paged_response.rb → get_payee_list_response_individual2.rb} +30 -29
  351. data/lib/velopayments/models/get_payments_for_payout_response_v3.rb +20 -8
  352. data/lib/velopayments/models/get_payments_for_payout_response_v3_page.rb +20 -8
  353. data/lib/velopayments/models/get_payments_for_payout_response_v3_summary.rb +23 -11
  354. data/lib/velopayments/models/get_payments_for_payout_response_v4.rb +20 -8
  355. data/lib/velopayments/models/get_payments_for_payout_response_v4_summary.rb +43 -56
  356. data/lib/velopayments/models/get_payout_statistics.rb +20 -8
  357. data/lib/velopayments/models/{get_payouts_response_v4.rb → get_payouts_response.rb} +24 -12
  358. data/lib/velopayments/models/get_payouts_response_v3.rb +20 -8
  359. data/lib/velopayments/models/get_payouts_response_v3_links.rb +20 -8
  360. data/lib/velopayments/models/get_payouts_response_v3_page.rb +20 -8
  361. data/lib/velopayments/models/individual.rb +21 -9
  362. data/lib/velopayments/models/individual2.rb +21 -9
  363. data/lib/velopayments/models/{individual_v1_name.rb → individual_name.rb} +23 -11
  364. data/lib/velopayments/models/inline_response400.rb +51 -14
  365. data/lib/velopayments/models/inline_response401.rb +51 -14
  366. data/lib/velopayments/models/inline_response403.rb +51 -14
  367. data/lib/velopayments/models/inline_response404.rb +258 -0
  368. data/lib/velopayments/models/inline_response409.rb +258 -0
  369. data/lib/velopayments/models/inline_response412.rb +258 -0
  370. data/lib/velopayments/models/invitation_status.rb +3 -2
  371. data/lib/velopayments/models/invitation_status2.rb +38 -0
  372. data/lib/velopayments/models/invite_payee_request.rb +20 -8
  373. data/lib/velopayments/models/invite_payee_request2.rb +20 -8
  374. data/lib/velopayments/models/invite_user_request.rb +29 -17
  375. data/lib/velopayments/models/kyc_state.rb +3 -2
  376. data/lib/velopayments/models/link_for_response.rb +20 -8
  377. data/lib/velopayments/models/list_funding_accounts_response.rb +20 -8
  378. data/lib/velopayments/models/list_funding_accounts_response2.rb +241 -0
  379. data/lib/velopayments/models/{list_payments_response.rb → list_payments_response_v3.rb} +24 -12
  380. data/lib/velopayments/models/{list_payments_response_page.rb → list_payments_response_v3_page.rb} +23 -11
  381. data/lib/velopayments/models/list_payments_response_v4.rb +21 -9
  382. data/lib/velopayments/models/list_source_account_response.rb +20 -8
  383. data/lib/velopayments/models/list_source_account_response_links.rb +20 -8
  384. data/lib/velopayments/models/list_source_account_response_page.rb +20 -8
  385. data/lib/velopayments/models/list_source_account_response_v2.rb +21 -9
  386. data/lib/velopayments/models/{invitation_status_response.rb → list_source_account_response_v2_links.rb} +39 -25
  387. data/lib/velopayments/models/list_source_account_response_v3.rb +241 -0
  388. data/lib/velopayments/models/list_source_account_response_v3_links.rb +227 -0
  389. data/lib/velopayments/models/localisation_details.rb +231 -0
  390. data/lib/velopayments/models/mfa_details.rb +20 -8
  391. data/lib/velopayments/models/mfa_type.rb +3 -2
  392. data/lib/velopayments/models/name.rb +341 -0
  393. data/lib/velopayments/models/name2.rb +341 -0
  394. data/lib/velopayments/models/{individual_v1.rb → notification.rb} +77 -58
  395. data/lib/velopayments/models/notifications.rb +20 -8
  396. data/lib/velopayments/models/{marketing_opt_in.rb → notifications2.rb} +30 -27
  397. data/lib/velopayments/models/ofac_status.rb +3 -2
  398. data/lib/velopayments/models/onboarded_status.rb +3 -2
  399. data/lib/velopayments/models/onboarded_status2.rb +3 -2
  400. data/lib/velopayments/models/{inline_response400_errors.rb → onboarding_status_changed.rb} +92 -39
  401. data/lib/velopayments/models/page_for_response.rb +20 -8
  402. data/lib/velopayments/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response.rb +20 -8
  403. data/lib/velopayments/models/paged_payee_invitation_status_response.rb +20 -8
  404. data/lib/velopayments/models/paged_payee_invitation_status_response2.rb +20 -8
  405. data/lib/velopayments/models/paged_payee_invitation_status_response_page.rb +20 -8
  406. data/lib/velopayments/models/paged_payee_response.rb +21 -9
  407. data/lib/velopayments/models/paged_payee_response2.rb +22 -10
  408. data/lib/velopayments/models/paged_payee_response_links.rb +20 -8
  409. data/lib/velopayments/models/paged_payee_response_page.rb +20 -8
  410. data/lib/velopayments/models/paged_payee_response_summary.rb +27 -15
  411. data/lib/velopayments/models/paged_payments_response_v3.rb +241 -0
  412. data/lib/velopayments/models/paged_user_response.rb +20 -8
  413. data/lib/velopayments/models/paged_user_response_links.rb +20 -8
  414. data/lib/velopayments/models/paged_user_response_page.rb +20 -8
  415. data/lib/velopayments/models/password_request.rb +20 -8
  416. data/lib/velopayments/models/payable_issue.rb +238 -0
  417. data/lib/velopayments/models/payable_issue2.rb +238 -0
  418. data/lib/velopayments/models/payable_status_changed.rb +289 -0
  419. data/lib/velopayments/models/payee_address.rb +20 -8
  420. data/lib/velopayments/models/payee_address2.rb +20 -8
  421. data/lib/velopayments/models/payee_delta.rb +21 -9
  422. data/lib/velopayments/models/payee_delta2.rb +20 -8
  423. data/lib/velopayments/models/payee_delta_response.rb +20 -8
  424. data/lib/velopayments/models/payee_delta_response2.rb +20 -8
  425. data/lib/velopayments/models/payee_delta_response2_links.rb +20 -8
  426. data/lib/velopayments/models/payee_delta_response_links.rb +20 -8
  427. data/lib/velopayments/models/payee_delta_response_page.rb +20 -8
  428. data/lib/velopayments/models/{payee_response_v3.rb → payee_detail_response.rb} +45 -23
  429. data/lib/velopayments/models/{payee_response_v2.rb → payee_detail_response2.rb} +77 -64
  430. data/lib/velopayments/models/payee_details_changed.rb +289 -0
  431. data/lib/velopayments/models/{payee_invitation_status.rb → payee_event.rb} +86 -64
  432. data/lib/velopayments/models/payee_event_all_of.rb +236 -0
  433. data/lib/velopayments/models/payee_event_all_of_reasons.rb +237 -0
  434. data/lib/velopayments/models/payee_invitation_status_response.rb +20 -8
  435. data/lib/velopayments/models/payee_invitation_status_response2.rb +20 -8
  436. data/lib/velopayments/models/payee_payor_ref.rb +66 -12
  437. data/lib/velopayments/models/payee_payor_ref_v3.rb +46 -46
  438. data/lib/velopayments/models/payee_type.rb +3 -2
  439. data/lib/velopayments/models/{user_response2.rb → payee_user_self_update_request.rb} +64 -196
  440. data/lib/velopayments/models/{payment_audit_currency_v4.rb → payment_audit_currency.rb} +6 -5
  441. data/lib/velopayments/models/payment_audit_currency_v3.rb +3 -2
  442. data/lib/velopayments/models/payment_channel_country.rb +20 -8
  443. data/lib/velopayments/models/payment_channel_rule.rb +20 -8
  444. data/lib/velopayments/models/payment_channel_rules_response.rb +20 -8
  445. data/lib/velopayments/models/payment_delta.rb +20 -8
  446. data/lib/velopayments/models/payment_delta_response.rb +20 -8
  447. data/lib/velopayments/models/payment_delta_response_v1.rb +241 -0
  448. data/lib/velopayments/models/payment_delta_v1.rb +297 -0
  449. data/lib/velopayments/models/payment_event.rb +297 -0
  450. data/lib/velopayments/models/{paged_response_page.rb → payment_event_all_of.rb} +49 -48
  451. data/lib/velopayments/models/{payment_event_response_v4.rb → payment_event_response.rb} +28 -16
  452. data/lib/velopayments/models/payment_event_response_v3.rb +21 -9
  453. data/lib/velopayments/models/{payment_instruction.rb → payment_instruction_v3.rb} +148 -16
  454. data/lib/velopayments/models/payment_rails.rb +3 -2
  455. data/lib/velopayments/models/payment_rejected_or_returned.rb +342 -0
  456. data/lib/velopayments/models/{inline_response403_errors.rb → payment_rejected_or_returned_all_of.rb} +48 -45
  457. data/lib/velopayments/models/payment_response_v3.rb +21 -9
  458. data/lib/velopayments/models/payment_response_v4.rb +101 -13
  459. data/lib/velopayments/models/payment_response_v4_payout.rb +22 -10
  460. data/lib/velopayments/models/payment_status_changed.rb +312 -0
  461. data/lib/velopayments/models/payment_status_changed_all_of.rb +224 -0
  462. data/lib/velopayments/models/payment_v3.rb +389 -0
  463. data/lib/velopayments/models/payor_address.rb +20 -8
  464. data/lib/velopayments/models/payor_address_v2.rb +20 -8
  465. data/lib/velopayments/models/{payor_aml_transaction_v4.rb → payor_aml_transaction.rb} +24 -21
  466. data/lib/velopayments/models/payor_aml_transaction_v3.rb +21 -36
  467. data/lib/velopayments/models/payor_branding_response.rb +20 -8
  468. data/lib/velopayments/models/payor_create_api_key_request.rb +30 -8
  469. data/lib/velopayments/models/payor_create_api_key_response.rb +20 -8
  470. data/lib/velopayments/models/payor_create_application_request.rb +20 -8
  471. data/lib/velopayments/models/payor_email_opt_out_request.rb +20 -8
  472. data/lib/velopayments/models/payor_links_response.rb +20 -8
  473. data/lib/velopayments/models/payor_links_response_links.rb +20 -8
  474. data/lib/velopayments/models/payor_links_response_payors.rb +20 -8
  475. data/lib/velopayments/models/payor_v1.rb +33 -12
  476. data/lib/velopayments/models/payor_v2.rb +55 -12
  477. data/lib/velopayments/models/payout_company_v3.rb +223 -0
  478. data/lib/velopayments/models/{individual_response.rb → payout_individual_v3.rb} +24 -12
  479. data/lib/velopayments/models/payout_name_v3.rb +237 -0
  480. data/lib/velopayments/models/payout_payee_v3.rb +242 -0
  481. data/lib/velopayments/models/{payout_payor_v4.rb → payout_payor.rb} +23 -11
  482. data/lib/velopayments/models/payout_payor_ids.rb +255 -0
  483. data/lib/velopayments/models/{payout_principal_v4.rb → payout_principal.rb} +23 -11
  484. data/lib/velopayments/models/{payout_status_v4.rb → payout_status.rb} +6 -5
  485. data/lib/velopayments/models/payout_status_v3.rb +3 -2
  486. data/lib/velopayments/models/{payout_summary_audit_v4.rb → payout_summary_audit.rb} +39 -18
  487. data/lib/velopayments/models/payout_summary_audit_v3.rb +20 -8
  488. data/lib/velopayments/models/{payout_summary_response.rb → payout_summary_response_v3.rb} +42 -16
  489. data/lib/velopayments/models/{payout_type_v4.rb → payout_type.rb} +6 -5
  490. data/lib/velopayments/models/ping.rb +262 -0
  491. data/lib/velopayments/models/query_batch_response.rb +20 -8
  492. data/lib/velopayments/models/query_batch_response2.rb +20 -8
  493. data/lib/velopayments/models/{quote_fx_summary.rb → quote_fx_summary_v3.rb} +49 -13
  494. data/lib/velopayments/models/{quote_response.rb → quote_response_v3.rb} +24 -12
  495. data/lib/velopayments/models/{region.rb → region_v2.rb} +23 -11
  496. data/lib/velopayments/models/register_sms_request.rb +23 -11
  497. data/lib/velopayments/models/{rejected_payment.rb → rejected_payment_v3.rb} +54 -12
  498. data/lib/velopayments/models/resend_token_request.rb +20 -8
  499. data/lib/velopayments/models/reset_password_request.rb +20 -8
  500. data/lib/velopayments/models/role.rb +20 -8
  501. data/lib/velopayments/models/role_update_request.rb +20 -8
  502. data/lib/velopayments/models/self_mfa_type_unregister_request.rb +20 -8
  503. data/lib/velopayments/models/self_update_password_request.rb +20 -8
  504. data/lib/velopayments/models/set_notifications_request.rb +20 -8
  505. data/lib/velopayments/models/source_account_response.rb +34 -13
  506. data/lib/velopayments/models/source_account_response_v2.rb +36 -15
  507. data/lib/velopayments/models/{payee_payment_channel2.rb → source_account_response_v3.rb} +196 -182
  508. data/lib/velopayments/models/{source_account_summary_v4.rb → source_account_summary.rb} +24 -12
  509. data/lib/velopayments/models/source_account_summary_v3.rb +20 -8
  510. data/lib/velopayments/models/source_account_type.rb +37 -0
  511. data/lib/velopayments/models/{source_account.rb → source_account_v3.rb} +63 -11
  512. data/lib/velopayments/models/source_event.rb +255 -0
  513. data/lib/velopayments/models/supported_countries_response.rb +20 -8
  514. data/lib/velopayments/models/{supported_countries_response2.rb → supported_countries_response_v2.rb} +24 -12
  515. data/lib/velopayments/models/supported_country.rb +51 -37
  516. data/lib/velopayments/models/{supported_country2.rb → supported_country_v2.rb} +55 -41
  517. data/lib/velopayments/models/{supported_currency_response.rb → supported_currency_response_v2.rb} +24 -12
  518. data/lib/velopayments/models/supported_currency_v2.rb +264 -0
  519. data/lib/velopayments/models/transfer_request.rb +20 -8
  520. data/lib/velopayments/models/transfer_request2.rb +309 -0
  521. data/lib/velopayments/models/transmission_type.rb +38 -0
  522. data/lib/velopayments/models/{supported_currency.rb → transmission_types.rb} +63 -26
  523. data/lib/velopayments/models/{currency_type.rb → transmission_types2.rb} +60 -45
  524. data/lib/velopayments/models/unregister_mfa_request.rb +20 -8
  525. data/lib/velopayments/models/update_payee_details_request.rb +275 -0
  526. data/lib/velopayments/models/{paged_payee_response2_summary.rb → update_payee_details_request2.rb} +75 -42
  527. data/lib/velopayments/models/update_remote_id_request.rb +20 -8
  528. data/lib/velopayments/models/update_remote_id_request2.rb +265 -0
  529. data/lib/velopayments/models/update_webhook_request.rb +312 -0
  530. data/lib/velopayments/models/user_details_update_request.rb +29 -17
  531. data/lib/velopayments/models/user_info.rb +20 -8
  532. data/lib/velopayments/models/user_response.rb +45 -18
  533. data/lib/velopayments/models/user_status.rb +3 -2
  534. data/lib/velopayments/models/user_type.rb +3 -2
  535. data/lib/velopayments/models/user_type2.rb +3 -2
  536. data/lib/velopayments/models/validate_password_response.rb +20 -8
  537. data/lib/velopayments/models/watchlist_status.rb +3 -2
  538. data/lib/velopayments/models/{ofac_status2.rb → watchlist_status2.rb} +8 -5
  539. data/lib/velopayments/models/webhook_response.rb +265 -0
  540. data/lib/velopayments/models/webhooks_response.rb +241 -0
  541. data/lib/velopayments/models/withdraw_payment_request.rb +252 -0
  542. data/lib/velopayments/version.rb +3 -3
  543. data/oa3-config.json +1 -1
  544. data/spec/api/countries_api_spec.rb +12 -12
  545. data/spec/api/currencies_api_spec.rb +5 -5
  546. data/spec/api/funding_manager_api_spec.rb +94 -18
  547. data/spec/api/funding_manager_private_api_spec.rb +17 -5
  548. data/spec/api/login_api_spec.rb +3 -2
  549. data/spec/api/payee_invitation_api_spec.rb +23 -35
  550. data/spec/api/payees_api_spec.rb +63 -47
  551. data/spec/api/payment_audit_service_api_spec.rb +28 -112
  552. data/spec/api/{payout_history_api_spec.rb → payment_audit_service_deprecated_api_spec.rb} +115 -33
  553. data/spec/api/payors_api_spec.rb +9 -9
  554. data/spec/api/payors_private_api_spec.rb +2 -2
  555. data/spec/{models/payee2_spec.rb → api/payout_service_api_spec.rb} +66 -103
  556. data/spec/api/tokens_api_spec.rb +2 -2
  557. data/spec/api/users_api_spec.rb +17 -4
  558. data/spec/api/webhooks_api_spec.rb +86 -0
  559. data/spec/api_client_spec.rb +3 -3
  560. data/spec/configuration_spec.rb +2 -2
  561. data/spec/models/accepted_payment_v3_spec.rb +76 -0
  562. data/spec/models/access_token_response_spec.rb +5 -12
  563. data/spec/models/access_token_validation_request_spec.rb +5 -12
  564. data/spec/models/auth_response_spec.rb +5 -12
  565. data/spec/models/{inline_response401_errors_spec.rb → auto_top_up_config2_spec.rb} +12 -19
  566. data/spec/models/auto_top_up_config_spec.rb +5 -12
  567. data/spec/models/{language_spec.rb → category_spec.rb} +8 -15
  568. data/spec/models/{paged_response_spec.rb → challenge2_spec.rb} +10 -17
  569. data/spec/models/challenge_spec.rb +5 -12
  570. data/spec/models/company2_spec.rb +5 -12
  571. data/spec/models/company_spec.rb +5 -12
  572. data/spec/models/{payee_payment_channel_spec.rb → create_funding_account_request_v2_spec.rb} +19 -26
  573. data/spec/models/create_individual2_spec.rb +5 -12
  574. data/spec/models/{individual_v1_name_spec.rb → create_individual_name_spec.rb} +8 -15
  575. data/spec/models/create_individual_spec.rb +5 -12
  576. data/spec/models/create_payee2_spec.rb +5 -12
  577. data/spec/models/create_payee_address2_spec.rb +6 -13
  578. data/spec/models/create_payee_address_spec.rb +9 -12
  579. data/spec/models/create_payee_spec.rb +5 -12
  580. data/spec/models/create_payees_csv_response2_spec.rb +5 -12
  581. data/spec/models/create_payees_csv_response_rejected_csv_rows_spec.rb +5 -12
  582. data/spec/models/create_payees_csv_response_spec.rb +5 -12
  583. data/spec/models/create_payees_request2_spec.rb +5 -12
  584. data/spec/models/create_payees_request_spec.rb +5 -12
  585. data/spec/models/create_payment_channel2_spec.rb +7 -14
  586. data/spec/models/create_payment_channel_spec.rb +7 -14
  587. data/spec/models/create_payor_link_request_spec.rb +6 -13
  588. data/spec/models/{create_payout_request_spec.rb → create_payout_request_v3_spec.rb} +8 -21
  589. data/spec/models/create_webhook_request_spec.rb +58 -0
  590. data/spec/models/debit_event_all_of_spec.rb +34 -0
  591. data/spec/models/debit_event_spec.rb +52 -0
  592. data/spec/models/{currency_type_spec.rb → debit_status_changed_all_of_spec.rb} +9 -16
  593. data/spec/models/debit_status_changed_spec.rb +58 -0
  594. data/spec/models/{marketing_opt_in_spec.rb → error_data_spec.rb} +10 -17
  595. data/spec/models/error_response_spec.rb +11 -12
  596. data/spec/models/error_spec.rb +24 -13
  597. data/spec/models/failed_payee2_spec.rb +94 -0
  598. data/spec/models/failed_payee_spec.rb +94 -0
  599. data/spec/models/failed_submission2_spec.rb +5 -12
  600. data/spec/models/failed_submission_spec.rb +5 -12
  601. data/spec/models/funding_account_response2_spec.rb +88 -0
  602. data/spec/models/funding_account_response_spec.rb +29 -12
  603. data/spec/models/{language2_spec.rb → funding_account_type_spec.rb} +8 -15
  604. data/spec/models/funding_audit_spec.rb +14 -21
  605. data/spec/models/funding_event_spec.rb +5 -12
  606. data/spec/models/funding_event_type_spec.rb +5 -12
  607. data/spec/models/funding_payor_status_audit_response_spec.rb +5 -12
  608. data/spec/models/funding_request_v1_spec.rb +5 -12
  609. data/spec/models/funding_request_v2_spec.rb +5 -12
  610. data/spec/models/funding_request_v3_spec.rb +40 -0
  611. data/spec/models/{fx_summary_v4_spec.rb → fx_summary_spec.rb} +10 -17
  612. data/spec/models/fx_summary_v3_spec.rb +7 -14
  613. data/spec/models/get_fundings_response_links_spec.rb +40 -0
  614. data/spec/models/get_fundings_response_spec.rb +5 -12
  615. data/spec/models/{payee_response2_spec.rb → get_payee_list_response2_spec.rb} +21 -46
  616. data/spec/models/get_payee_list_response_company2_spec.rb +40 -0
  617. data/spec/models/{company_response_spec.rb → get_payee_list_response_company_spec.rb} +8 -15
  618. data/spec/models/get_payee_list_response_individual2_spec.rb +34 -0
  619. data/spec/models/{user_response2_roles_spec.rb → get_payee_list_response_individual_spec.rb} +8 -15
  620. data/spec/models/{payee_spec.rb → get_payee_list_response_spec.rb} +21 -46
  621. data/spec/models/get_payments_for_payout_response_v3_page_spec.rb +5 -12
  622. data/spec/models/get_payments_for_payout_response_v3_spec.rb +5 -12
  623. data/spec/models/get_payments_for_payout_response_v3_summary_spec.rb +6 -13
  624. data/spec/models/get_payments_for_payout_response_v4_spec.rb +5 -12
  625. data/spec/models/get_payments_for_payout_response_v4_summary_spec.rb +11 -16
  626. data/spec/models/get_payout_statistics_spec.rb +5 -12
  627. data/spec/models/{company_v1_spec.rb → get_payouts_response_spec.rb} +11 -18
  628. data/spec/models/get_payouts_response_v3_links_spec.rb +5 -12
  629. data/spec/models/get_payouts_response_v3_page_spec.rb +5 -12
  630. data/spec/models/get_payouts_response_v3_spec.rb +5 -12
  631. data/spec/models/individual2_spec.rb +5 -12
  632. data/spec/models/{create_individual2_name_spec.rb → individual_name_spec.rb} +8 -15
  633. data/spec/models/individual_spec.rb +5 -12
  634. data/spec/models/inline_response400_spec.rb +11 -12
  635. data/spec/models/inline_response401_spec.rb +11 -12
  636. data/spec/models/inline_response403_spec.rb +11 -12
  637. data/spec/models/{individual_v1_spec.rb → inline_response404_spec.rb} +11 -18
  638. data/spec/models/inline_response409_spec.rb +46 -0
  639. data/spec/models/inline_response412_spec.rb +46 -0
  640. data/spec/models/{ofac_status2_spec.rb → invitation_status2_spec.rb} +8 -15
  641. data/spec/models/invitation_status_spec.rb +5 -12
  642. data/spec/models/invite_payee_request2_spec.rb +5 -12
  643. data/spec/models/invite_payee_request_spec.rb +5 -12
  644. data/spec/models/invite_user_request_spec.rb +6 -13
  645. data/spec/models/kyc_state_spec.rb +5 -12
  646. data/spec/models/link_for_response_spec.rb +5 -12
  647. data/spec/models/{list_payments_response_spec.rb → list_funding_accounts_response2_spec.rb} +8 -15
  648. data/spec/models/list_funding_accounts_response_spec.rb +5 -12
  649. data/spec/models/{paged_response_page_spec.rb → list_payments_response_v3_page_spec.rb} +8 -15
  650. data/spec/models/list_payments_response_v3_spec.rb +46 -0
  651. data/spec/models/list_payments_response_v4_spec.rb +5 -12
  652. data/spec/models/list_source_account_response_links_spec.rb +5 -12
  653. data/spec/models/list_source_account_response_page_spec.rb +5 -12
  654. data/spec/models/list_source_account_response_spec.rb +5 -12
  655. data/spec/models/list_source_account_response_v2_links_spec.rb +40 -0
  656. data/spec/models/list_source_account_response_v2_spec.rb +5 -12
  657. data/spec/models/list_source_account_response_v3_links_spec.rb +40 -0
  658. data/spec/models/list_source_account_response_v3_spec.rb +46 -0
  659. data/spec/models/localisation_details_spec.rb +40 -0
  660. data/spec/models/mfa_details_spec.rb +5 -12
  661. data/spec/models/mfa_type_spec.rb +5 -12
  662. data/spec/models/name2_spec.rb +52 -0
  663. data/spec/models/name_spec.rb +52 -0
  664. data/spec/models/notification_spec.rb +58 -0
  665. data/spec/models/notifications2_spec.rb +34 -0
  666. data/spec/models/notifications_spec.rb +5 -12
  667. data/spec/models/ofac_status_spec.rb +5 -12
  668. data/spec/models/onboarded_status2_spec.rb +5 -12
  669. data/spec/models/onboarded_status_spec.rb +5 -12
  670. data/spec/models/{list_payments_response_page_spec.rb → onboarding_status_changed_spec.rb} +13 -20
  671. data/spec/models/page_for_response_spec.rb +5 -12
  672. data/spec/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response_spec.rb +5 -12
  673. data/spec/models/paged_payee_invitation_status_response2_spec.rb +5 -12
  674. data/spec/models/paged_payee_invitation_status_response_page_spec.rb +5 -12
  675. data/spec/models/paged_payee_invitation_status_response_spec.rb +5 -12
  676. data/spec/models/paged_payee_response2_spec.rb +5 -12
  677. data/spec/models/paged_payee_response_links_spec.rb +5 -12
  678. data/spec/models/paged_payee_response_page_spec.rb +5 -12
  679. data/spec/models/paged_payee_response_spec.rb +5 -12
  680. data/spec/models/paged_payee_response_summary_spec.rb +6 -13
  681. data/spec/models/{get_payouts_response_v4_spec.rb → paged_payments_response_v3_spec.rb} +8 -15
  682. data/spec/models/paged_user_response_links_spec.rb +5 -12
  683. data/spec/models/paged_user_response_page_spec.rb +5 -12
  684. data/spec/models/paged_user_response_spec.rb +5 -12
  685. data/spec/models/password_request_spec.rb +5 -12
  686. data/spec/models/payable_issue2_spec.rb +40 -0
  687. data/spec/models/payable_issue_spec.rb +40 -0
  688. data/spec/models/payable_status_changed_spec.rb +58 -0
  689. data/spec/models/payee_address2_spec.rb +5 -12
  690. data/spec/models/payee_address_spec.rb +5 -12
  691. data/spec/models/payee_delta2_spec.rb +5 -12
  692. data/spec/models/payee_delta_response2_links_spec.rb +5 -12
  693. data/spec/models/payee_delta_response2_spec.rb +5 -12
  694. data/spec/models/payee_delta_response_links_spec.rb +5 -12
  695. data/spec/models/payee_delta_response_page_spec.rb +5 -12
  696. data/spec/models/payee_delta_response_spec.rb +5 -12
  697. data/spec/models/payee_delta_spec.rb +5 -12
  698. data/spec/models/{payee_response_v2_spec.rb → payee_detail_response2_spec.rb} +28 -35
  699. data/spec/models/{payee_response_v3_spec.rb → payee_detail_response_spec.rb} +14 -15
  700. data/spec/models/payee_details_changed_spec.rb +58 -0
  701. data/spec/models/payee_event_all_of_reasons_spec.rb +40 -0
  702. data/spec/models/payee_event_all_of_spec.rb +40 -0
  703. data/spec/models/{inline_response400_errors_spec.rb → payee_event_spec.rb} +17 -18
  704. data/spec/models/payee_invitation_status_response2_spec.rb +6 -13
  705. data/spec/models/payee_invitation_status_response_spec.rb +6 -13
  706. data/spec/models/payee_payor_ref_spec.rb +29 -12
  707. data/spec/models/payee_payor_ref_v3_spec.rb +17 -16
  708. data/spec/models/payee_type_spec.rb +5 -12
  709. data/spec/models/{payment_instruction_spec.rb → payee_user_self_update_request_spec.rb} +14 -21
  710. data/spec/models/{location_type_spec.rb → payment_audit_currency_spec.rb} +8 -15
  711. data/spec/models/payment_audit_currency_v3_spec.rb +5 -12
  712. data/spec/models/payment_channel_country_spec.rb +5 -12
  713. data/spec/models/payment_channel_rule_spec.rb +5 -12
  714. data/spec/models/payment_channel_rules_response_spec.rb +5 -12
  715. data/spec/models/payment_delta_response_spec.rb +5 -12
  716. data/spec/models/payment_delta_response_v1_spec.rb +46 -0
  717. data/spec/models/payment_delta_spec.rb +5 -12
  718. data/spec/models/payment_delta_v1_spec.rb +76 -0
  719. data/spec/models/payment_event_all_of_spec.rb +46 -0
  720. data/spec/models/{payment_event_response_v4_spec.rb → payment_event_response_spec.rb} +10 -17
  721. data/spec/models/payment_event_response_v3_spec.rb +6 -13
  722. data/spec/models/{accepted_payment_spec.rb → payment_event_spec.rb} +14 -21
  723. data/spec/models/{rejected_payment_spec.rb → payment_instruction_v3_spec.rb} +15 -22
  724. data/spec/models/payment_rails_spec.rb +5 -12
  725. data/spec/models/payment_rejected_or_returned_all_of_spec.rb +40 -0
  726. data/spec/models/payment_rejected_or_returned_spec.rb +82 -0
  727. data/spec/models/payment_response_v3_spec.rb +7 -14
  728. data/spec/models/payment_response_v4_payout_spec.rb +5 -12
  729. data/spec/models/payment_response_v4_spec.rb +55 -14
  730. data/spec/models/{payor_logo_request_spec.rb → payment_status_changed_all_of_spec.rb} +9 -16
  731. data/spec/models/payment_status_changed_spec.rb +70 -0
  732. data/spec/models/payment_v3_spec.rb +110 -0
  733. data/spec/models/payor_address_spec.rb +5 -12
  734. data/spec/models/payor_address_v2_spec.rb +5 -12
  735. data/spec/models/{payor_aml_transaction_v4_spec.rb → payor_aml_transaction_spec.rb} +8 -21
  736. data/spec/models/payor_aml_transaction_v3_spec.rb +5 -30
  737. data/spec/models/payor_branding_response_spec.rb +5 -12
  738. data/spec/models/payor_create_api_key_request_spec.rb +6 -13
  739. data/spec/models/payor_create_api_key_response_spec.rb +5 -12
  740. data/spec/models/payor_create_application_request_spec.rb +5 -12
  741. data/spec/models/payor_email_opt_out_request_spec.rb +5 -12
  742. data/spec/models/payor_links_response_links_spec.rb +6 -13
  743. data/spec/models/payor_links_response_payors_spec.rb +6 -13
  744. data/spec/models/payor_links_response_spec.rb +5 -12
  745. data/spec/models/payor_v1_spec.rb +12 -13
  746. data/spec/models/payor_v2_spec.rb +24 -13
  747. data/spec/models/payout_company_v3_spec.rb +34 -0
  748. data/spec/models/{individual_response_spec.rb → payout_individual_v3_spec.rb} +8 -15
  749. data/spec/models/payout_name_v3_spec.rb +40 -0
  750. data/spec/models/payout_payee_v3_spec.rb +46 -0
  751. data/spec/models/payout_payor_ids_spec.rb +46 -0
  752. data/spec/models/{payout_payor_v4_spec.rb → payout_payor_spec.rb} +8 -15
  753. data/spec/models/{payout_principal_v4_spec.rb → payout_principal_spec.rb} +8 -15
  754. data/spec/models/payout_status_spec.rb +28 -0
  755. data/spec/models/payout_status_v3_spec.rb +5 -12
  756. data/spec/models/{payout_summary_audit_v4_spec.rb → payout_summary_audit_spec.rb} +14 -15
  757. data/spec/models/payout_summary_audit_v3_spec.rb +5 -12
  758. data/spec/models/{payout_summary_response_spec.rb → payout_summary_response_v3_spec.rb} +14 -15
  759. data/spec/models/payout_type_spec.rb +28 -0
  760. data/spec/models/ping_spec.rb +46 -0
  761. data/spec/models/query_batch_response2_spec.rb +6 -13
  762. data/spec/models/query_batch_response_spec.rb +6 -13
  763. data/spec/models/{quote_fx_summary_spec.rb → quote_fx_summary_v3_spec.rb} +10 -17
  764. data/spec/models/{quote_response_spec.rb → quote_response_v3_spec.rb} +8 -15
  765. data/spec/models/{region_spec.rb → region_v2_spec.rb} +8 -15
  766. data/spec/models/register_sms_request_spec.rb +5 -12
  767. data/spec/models/rejected_payment_v3_spec.rb +94 -0
  768. data/spec/models/resend_token_request_spec.rb +6 -13
  769. data/spec/models/reset_password_request_spec.rb +5 -12
  770. data/spec/models/role_spec.rb +5 -12
  771. data/spec/models/role_update_request_spec.rb +5 -12
  772. data/spec/models/self_mfa_type_unregister_request_spec.rb +6 -13
  773. data/spec/models/self_update_password_request_spec.rb +5 -12
  774. data/spec/models/set_notifications_request_spec.rb +5 -12
  775. data/spec/models/source_account_response_spec.rb +12 -13
  776. data/spec/models/source_account_response_v2_spec.rb +12 -13
  777. data/spec/models/{payee_response_spec.rb → source_account_response_v3_spec.rb} +30 -45
  778. data/spec/models/{source_account_summary_v4_spec.rb → source_account_summary_spec.rb} +8 -15
  779. data/spec/models/source_account_summary_v3_spec.rb +5 -12
  780. data/spec/models/source_account_type_spec.rb +28 -0
  781. data/spec/models/{source_account_spec.rb → source_account_v3_spec.rb} +8 -15
  782. data/spec/models/source_event_spec.rb +46 -0
  783. data/spec/models/supported_countries_response_spec.rb +5 -12
  784. data/spec/models/supported_countries_response_v2_spec.rb +34 -0
  785. data/spec/models/supported_country_spec.rb +5 -20
  786. data/spec/models/supported_country_v2_spec.rb +46 -0
  787. data/spec/models/{supported_currency_response_spec.rb → supported_currency_response_v2_spec.rb} +8 -15
  788. data/spec/models/{supported_currency_spec.rb → supported_currency_v2_spec.rb} +8 -15
  789. data/spec/models/transfer_request2_spec.rb +46 -0
  790. data/spec/models/transfer_request_spec.rb +5 -12
  791. data/spec/models/transmission_type_spec.rb +28 -0
  792. data/spec/models/transmission_types2_spec.rb +46 -0
  793. data/spec/models/transmission_types_spec.rb +46 -0
  794. data/spec/models/unregister_mfa_request_spec.rb +6 -13
  795. data/spec/models/update_payee_details_request2_spec.rb +70 -0
  796. data/spec/models/{payee_payment_channel2_spec.rb → update_payee_details_request_spec.rb} +15 -26
  797. data/spec/models/update_remote_id_request2_spec.rb +40 -0
  798. data/spec/models/update_remote_id_request_spec.rb +5 -12
  799. data/spec/models/update_webhook_request_spec.rb +52 -0
  800. data/spec/models/user_details_update_request_spec.rb +5 -12
  801. data/spec/models/user_info_spec.rb +5 -12
  802. data/spec/models/user_response_spec.rb +8 -15
  803. data/spec/models/user_status_spec.rb +5 -12
  804. data/spec/models/user_type2_spec.rb +5 -12
  805. data/spec/models/user_type_spec.rb +5 -12
  806. data/spec/models/validate_password_response_spec.rb +5 -12
  807. data/spec/models/watchlist_status2_spec.rb +28 -0
  808. data/spec/models/watchlist_status_spec.rb +5 -12
  809. data/spec/models/webhook_response_spec.rb +64 -0
  810. data/spec/models/webhooks_response_spec.rb +46 -0
  811. data/spec/models/withdraw_payment_request_spec.rb +34 -0
  812. data/spec/spec_helper.rb +2 -2
  813. data/specs/api/countries_api_spec.rb +103 -0
  814. data/{spec/api/quote_payout_api_spec.rb → specs/api/currencies_api_spec.rb} +16 -15
  815. data/specs/api/funding_manager_api_spec.rb +372 -0
  816. data/{spec/api/get_payout_api_spec.rb → specs/api/funding_manager_private_api_spec.rb} +15 -15
  817. data/specs/api/login_api_spec.rb +82 -0
  818. data/specs/api/payee_invitation_api_spec.rb +161 -0
  819. data/specs/api/payees_api_spec.rb +186 -0
  820. data/specs/api/payment_audit_service_api_spec.rb +318 -0
  821. data/specs/api/payors_api_spec.rb +171 -0
  822. data/{spec/api/instruct_payout_api_spec.rb → specs/api/payors_private_api_spec.rb} +14 -14
  823. data/specs/api/payout_service_api_spec.rb +127 -0
  824. data/{spec/api/withdraw_payout_api_spec.rb → specs/api/tokens_api_spec.rb} +15 -14
  825. data/specs/api/users_api_spec.rb +284 -0
  826. data/velopayments.gemspec +3 -4
  827. metadata +449 -295
  828. data/docs/AcceptedPayment.md +0 -27
  829. data/docs/CompanyResponse.md +0 -19
  830. data/docs/CompanyV1.md +0 -21
  831. data/docs/CreateFundingAccountRequest.md +0 -23
  832. data/docs/CreateIndividual2Name.md +0 -23
  833. data/docs/CreatePayeesCSVRequest.md +0 -73
  834. data/docs/CreatePayeesCSVRequest2.md +0 -73
  835. data/docs/CreatePayoutRequest.md +0 -25
  836. data/docs/CurrencyType.md +0 -17
  837. data/docs/FxSummaryV4.md +0 -35
  838. data/docs/GetFundingsResponseAllOf.md +0 -17
  839. data/docs/GetPayoutApi.md +0 -61
  840. data/docs/GetPayoutsResponseV4.md +0 -21
  841. data/docs/IndividualResponse.md +0 -17
  842. data/docs/IndividualV1.md +0 -21
  843. data/docs/IndividualV1Name.md +0 -23
  844. data/docs/InlineResponse400Errors.md +0 -23
  845. data/docs/InlineResponse401Errors.md +0 -23
  846. data/docs/InlineResponse403Errors.md +0 -23
  847. data/docs/InstructPayoutApi.md +0 -60
  848. data/docs/InvitationStatusResponse.md +0 -17
  849. data/docs/Language.md +0 -16
  850. data/docs/Language2.md +0 -16
  851. data/docs/ListPaymentsResponse.md +0 -21
  852. data/docs/ListPaymentsResponsePage.md +0 -25
  853. data/docs/LocationType.md +0 -16
  854. data/docs/MarketingOptIn.md +0 -19
  855. data/docs/OfacStatus2.md +0 -16
  856. data/docs/PagedPayeeResponse2Summary.md +0 -25
  857. data/docs/PagedResponse.md +0 -19
  858. data/docs/PagedResponsePage.md +0 -25
  859. data/docs/Payee.md +0 -55
  860. data/docs/Payee2.md +0 -57
  861. data/docs/PayeeInvitationStatus.md +0 -21
  862. data/docs/PayeePaymentChannel.md +0 -29
  863. data/docs/PayeePaymentChannel2.md +0 -29
  864. data/docs/PayeePayorRefV2.md +0 -25
  865. data/docs/PayeeResponse.md +0 -55
  866. data/docs/PayeeResponse2.md +0 -55
  867. data/docs/PayeeResponseV2.md +0 -73
  868. data/docs/PayeeResponseV3.md +0 -71
  869. data/docs/PaymentAuditCurrencyV4.md +0 -16
  870. data/docs/PaymentEventResponseV4.md +0 -39
  871. data/docs/PaymentInstruction.md +0 -27
  872. data/docs/PayorAmlTransactionV4.md +0 -71
  873. data/docs/PayorLogoRequest.md +0 -17
  874. data/docs/PayoutHistoryApi.md +0 -221
  875. data/docs/PayoutPayorV4.md +0 -25
  876. data/docs/PayoutPrincipalV4.md +0 -19
  877. data/docs/PayoutStatusV4.md +0 -16
  878. data/docs/PayoutSummaryAuditV4.md +0 -45
  879. data/docs/PayoutSummaryResponse.md +0 -33
  880. data/docs/PayoutTypeV4.md +0 -16
  881. data/docs/QuoteFxSummary.md +0 -37
  882. data/docs/QuotePayoutApi.md +0 -61
  883. data/docs/QuoteResponse.md +0 -17
  884. data/docs/Region.md +0 -19
  885. data/docs/RejectedPayment.md +0 -33
  886. data/docs/SourceAccount.md +0 -23
  887. data/docs/SourceAccountSummaryV4.md +0 -21
  888. data/docs/SubmitPayoutApi.md +0 -60
  889. data/docs/SupportedCountriesResponse2.md +0 -17
  890. data/docs/SupportedCountry2.md +0 -21
  891. data/docs/SupportedCurrency.md +0 -19
  892. data/docs/SupportedCurrencyResponse.md +0 -17
  893. data/docs/UserResponse2.md +0 -45
  894. data/docs/UserResponse2Roles.md +0 -17
  895. data/docs/WithdrawPayoutApi.md +0 -60
  896. data/lib/velopayments/api/get_payout_api.rb +0 -84
  897. data/lib/velopayments/api/instruct_payout_api.rb +0 -84
  898. data/lib/velopayments/api/payout_history_api.rb +0 -285
  899. data/lib/velopayments/api/quote_payout_api.rb +0 -84
  900. data/lib/velopayments/api/submit_payout_api.rb +0 -86
  901. data/lib/velopayments/api/withdraw_payout_api.rb +0 -84
  902. data/lib/velopayments/models/create_payees_csv_request.rb +0 -1148
  903. data/lib/velopayments/models/create_payees_csv_request2.rb +0 -1148
  904. data/lib/velopayments/models/inline_response401_errors.rb +0 -236
  905. data/lib/velopayments/models/language2.rb +0 -45
  906. data/lib/velopayments/models/payee2.rb +0 -456
  907. data/lib/velopayments/models/payee_response.rb +0 -388
  908. data/spec/api/submit_payout_api_spec.rb +0 -47
  909. data/spec/models/create_funding_account_request_spec.rb +0 -59
  910. data/spec/models/create_payees_csv_request2_spec.rb +0 -225
  911. data/spec/models/create_payees_csv_request_spec.rb +0 -221
  912. data/spec/models/get_fundings_response_all_of_spec.rb +0 -41
  913. data/spec/models/inline_response403_errors_spec.rb +0 -59
  914. data/spec/models/invitation_status_response_spec.rb +0 -41
  915. data/spec/models/paged_payee_response2_summary_spec.rb +0 -65
  916. data/spec/models/payee_invitation_status_spec.rb +0 -57
  917. data/spec/models/payee_payor_ref_v2_spec.rb +0 -69
  918. data/spec/models/payment_audit_currency_v4_spec.rb +0 -35
  919. data/spec/models/payout_status_v4_spec.rb +0 -35
  920. data/spec/models/payout_type_v4_spec.rb +0 -35
  921. data/spec/models/supported_countries_response2_spec.rb +0 -41
  922. data/spec/models/supported_country2_spec.rb +0 -61
  923. data/spec/models/user_response2_spec.rb +0 -137
@@ -0,0 +1,224 @@
1
+ =begin
2
+ #Velo Payments APIs
3
+
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
+
6
+ The version of the OpenAPI document: 2.26.124
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.2.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module VeloPayments
17
+ class DebitStatusChangedAllOf
18
+ # The new status of the debit. One of \"PENDING\" \"PROCESSING\" \"REJECTED\" \"RELEASED\"
19
+ attr_accessor :status
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'status' => :'status'
25
+ }
26
+ end
27
+
28
+ # Returns all the JSON keys this model knows about
29
+ def self.acceptable_attributes
30
+ attribute_map.values
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.openapi_types
35
+ {
36
+ :'status' => :'String'
37
+ }
38
+ end
39
+
40
+ # List of attributes with nullable: true
41
+ def self.openapi_nullable
42
+ Set.new([
43
+ ])
44
+ end
45
+
46
+ # Initializes the object
47
+ # @param [Hash] attributes Model attributes in the form of hash
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::DebitStatusChangedAllOf` initialize method"
51
+ end
52
+
53
+ # check to see if the attribute exists and convert string to symbol for hash key
54
+ attributes = attributes.each_with_object({}) { |(k, v), h|
55
+ if (!self.class.attribute_map.key?(k.to_sym))
56
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::DebitStatusChangedAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
57
+ end
58
+ h[k.to_sym] = v
59
+ }
60
+
61
+ if attributes.key?(:'status')
62
+ self.status = attributes[:'status']
63
+ end
64
+ end
65
+
66
+ # Show invalid properties with the reasons. Usually used together with valid?
67
+ # @return Array for valid properties with the reasons
68
+ def list_invalid_properties
69
+ invalid_properties = Array.new
70
+ if @status.nil?
71
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
72
+ end
73
+
74
+ invalid_properties
75
+ end
76
+
77
+ # Check to see if the all the properties in the model are valid
78
+ # @return true if the model is valid
79
+ def valid?
80
+ return false if @status.nil?
81
+ true
82
+ end
83
+
84
+ # Checks equality by comparing each attribute.
85
+ # @param [Object] Object to be compared
86
+ def ==(o)
87
+ return true if self.equal?(o)
88
+ self.class == o.class &&
89
+ status == o.status
90
+ end
91
+
92
+ # @see the `==` method
93
+ # @param [Object] Object to be compared
94
+ def eql?(o)
95
+ self == o
96
+ end
97
+
98
+ # Calculates hash code according to all attributes.
99
+ # @return [Integer] Hash code
100
+ def hash
101
+ [status].hash
102
+ end
103
+
104
+ # Builds the object from hash
105
+ # @param [Hash] attributes Model attributes in the form of hash
106
+ # @return [Object] Returns the model itself
107
+ def self.build_from_hash(attributes)
108
+ new.build_from_hash(attributes)
109
+ end
110
+
111
+ # Builds the object from hash
112
+ # @param [Hash] attributes Model attributes in the form of hash
113
+ # @return [Object] Returns the model itself
114
+ def build_from_hash(attributes)
115
+ return nil unless attributes.is_a?(Hash)
116
+ self.class.openapi_types.each_pair do |key, type|
117
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
118
+ self.send("#{key}=", nil)
119
+ elsif type =~ /\AArray<(.*)>/i
120
+ # check to ensure the input is an array given that the attribute
121
+ # is documented as an array but the input is not
122
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
123
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
124
+ end
125
+ elsif !attributes[self.class.attribute_map[key]].nil?
126
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
127
+ end
128
+ end
129
+
130
+ self
131
+ end
132
+
133
+ # Deserializes the data based on type
134
+ # @param string type Data type
135
+ # @param string value Value to be deserialized
136
+ # @return [Object] Deserialized data
137
+ def _deserialize(type, value)
138
+ case type.to_sym
139
+ when :Time
140
+ Time.parse(value)
141
+ when :Date
142
+ Date.parse(value)
143
+ when :String
144
+ value.to_s
145
+ when :Integer
146
+ value.to_i
147
+ when :Float
148
+ value.to_f
149
+ when :Boolean
150
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
151
+ true
152
+ else
153
+ false
154
+ end
155
+ when :Object
156
+ # generic object (usually a Hash), return directly
157
+ value
158
+ when /\AArray<(?<inner_type>.+)>\z/
159
+ inner_type = Regexp.last_match[:inner_type]
160
+ value.map { |v| _deserialize(inner_type, v) }
161
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
162
+ k_type = Regexp.last_match[:k_type]
163
+ v_type = Regexp.last_match[:v_type]
164
+ {}.tap do |hash|
165
+ value.each do |k, v|
166
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
167
+ end
168
+ end
169
+ else # model
170
+ # models (e.g. Pet) or oneOf
171
+ klass = VeloPayments.const_get(type)
172
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
173
+ end
174
+ end
175
+
176
+ # Returns the string representation of the object
177
+ # @return [String] String presentation of the object
178
+ def to_s
179
+ to_hash.to_s
180
+ end
181
+
182
+ # to_body is an alias to to_hash (backward compatibility)
183
+ # @return [Hash] Returns the object in the form of hash
184
+ def to_body
185
+ to_hash
186
+ end
187
+
188
+ # Returns the object in the form of hash
189
+ # @return [Hash] Returns the object in the form of hash
190
+ def to_hash
191
+ hash = {}
192
+ self.class.attribute_map.each_pair do |attr, param|
193
+ value = self.send(attr)
194
+ if value.nil?
195
+ is_nullable = self.class.openapi_nullable.include?(attr)
196
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
197
+ end
198
+
199
+ hash[param] = _to_hash(value)
200
+ end
201
+ hash
202
+ end
203
+
204
+ # Outputs non-array value in the form of hash
205
+ # For object, use to_hash. Otherwise, just return the value
206
+ # @param [Object] value Any valid value
207
+ # @return [Hash] Returns the value in the form of hash
208
+ def _to_hash(value)
209
+ if value.is_a?(Array)
210
+ value.compact.map { |v| _to_hash(v) }
211
+ elsif value.is_a?(Hash)
212
+ {}.tap do |hash|
213
+ value.each { |k, v| hash[k] = _to_hash(v) }
214
+ end
215
+ elsif value.respond_to? :to_hash
216
+ value.to_hash
217
+ else
218
+ value
219
+ end
220
+ end
221
+
222
+ end
223
+
224
+ end
@@ -3,29 +3,37 @@
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.19.40
6
+ The version of the OpenAPI document: 2.26.124
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.3-SNAPSHOT
9
+ OpenAPI Generator version: 5.2.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module VeloPayments
16
17
  class Error
17
- # verbose message indicating the nature of the error Will be localised
18
+ # English language message indicating the nature of the error
18
19
  attr_accessor :error_message
19
20
 
21
+ # Unique numeric code that can be used for switching client behavior or to drive translated or customised error messages
22
+ attr_accessor :error_code
23
+
24
+ attr_accessor :localisation_details
25
+
20
26
  # the property or object that caused the error
21
27
  attr_accessor :location
22
28
 
23
29
  # the location type in the request that was the cause of the error
24
30
  attr_accessor :location_type
25
31
 
26
- # a camel-cased string that can be used by clients to localise client error messages
32
+ # a camel-cased string that can be used by clients to localise client error messages (deprecated)
27
33
  attr_accessor :reason_code
28
34
 
35
+ attr_accessor :error_data
36
+
29
37
  class EnumAttributeValidator
30
38
  attr_reader :datatype
31
39
  attr_reader :allowable_values
@@ -52,19 +60,30 @@ module VeloPayments
52
60
  def self.attribute_map
53
61
  {
54
62
  :'error_message' => :'errorMessage',
63
+ :'error_code' => :'errorCode',
64
+ :'localisation_details' => :'localisationDetails',
55
65
  :'location' => :'location',
56
66
  :'location_type' => :'locationType',
57
- :'reason_code' => :'reasonCode'
67
+ :'reason_code' => :'reasonCode',
68
+ :'error_data' => :'errorData'
58
69
  }
59
70
  end
60
71
 
72
+ # Returns all the JSON keys this model knows about
73
+ def self.acceptable_attributes
74
+ attribute_map.values
75
+ end
76
+
61
77
  # Attribute type mapping.
62
78
  def self.openapi_types
63
79
  {
64
80
  :'error_message' => :'String',
81
+ :'error_code' => :'String',
82
+ :'localisation_details' => :'LocalisationDetails',
65
83
  :'location' => :'String',
66
84
  :'location_type' => :'String',
67
- :'reason_code' => :'String'
85
+ :'reason_code' => :'String',
86
+ :'error_data' => :'ErrorData'
68
87
  }
69
88
  end
70
89
 
@@ -93,6 +112,14 @@ module VeloPayments
93
112
  self.error_message = attributes[:'error_message']
94
113
  end
95
114
 
115
+ if attributes.key?(:'error_code')
116
+ self.error_code = attributes[:'error_code']
117
+ end
118
+
119
+ if attributes.key?(:'localisation_details')
120
+ self.localisation_details = attributes[:'localisation_details']
121
+ end
122
+
96
123
  if attributes.key?(:'location')
97
124
  self.location = attributes[:'location']
98
125
  end
@@ -104,6 +131,10 @@ module VeloPayments
104
131
  if attributes.key?(:'reason_code')
105
132
  self.reason_code = attributes[:'reason_code']
106
133
  end
134
+
135
+ if attributes.key?(:'error_data')
136
+ self.error_data = attributes[:'error_data']
137
+ end
107
138
  end
108
139
 
109
140
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -137,9 +168,12 @@ module VeloPayments
137
168
  return true if self.equal?(o)
138
169
  self.class == o.class &&
139
170
  error_message == o.error_message &&
171
+ error_code == o.error_code &&
172
+ localisation_details == o.localisation_details &&
140
173
  location == o.location &&
141
174
  location_type == o.location_type &&
142
- reason_code == o.reason_code
175
+ reason_code == o.reason_code &&
176
+ error_data == o.error_data
143
177
  end
144
178
 
145
179
  # @see the `==` method
@@ -151,7 +185,7 @@ module VeloPayments
151
185
  # Calculates hash code according to all attributes.
152
186
  # @return [Integer] Hash code
153
187
  def hash
154
- [error_message, location, location_type, reason_code].hash
188
+ [error_message, error_code, localisation_details, location, location_type, reason_code, error_data].hash
155
189
  end
156
190
 
157
191
  # Builds the object from hash
@@ -167,7 +201,9 @@ module VeloPayments
167
201
  def build_from_hash(attributes)
168
202
  return nil unless attributes.is_a?(Hash)
169
203
  self.class.openapi_types.each_pair do |key, type|
170
- if type =~ /\AArray<(.*)>/i
204
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
205
+ self.send("#{key}=", nil)
206
+ elsif type =~ /\AArray<(.*)>/i
171
207
  # check to ensure the input is an array given that the attribute
172
208
  # is documented as an array but the input is not
173
209
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -175,7 +211,7 @@ module VeloPayments
175
211
  end
176
212
  elsif !attributes[self.class.attribute_map[key]].nil?
177
213
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
178
- end # or else data not found in attributes(hash), not an issue as the data can be optional
214
+ end
179
215
  end
180
216
 
181
217
  self
@@ -187,8 +223,8 @@ module VeloPayments
187
223
  # @return [Object] Deserialized data
188
224
  def _deserialize(type, value)
189
225
  case type.to_sym
190
- when :DateTime
191
- DateTime.parse(value)
226
+ when :Time
227
+ Time.parse(value)
192
228
  when :Date
193
229
  Date.parse(value)
194
230
  when :String
@@ -218,7 +254,9 @@ module VeloPayments
218
254
  end
219
255
  end
220
256
  else # model
221
- VeloPayments.const_get(type).build_from_hash(value)
257
+ # models (e.g. Pet) or oneOf
258
+ klass = VeloPayments.const_get(type)
259
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
222
260
  end
223
261
  end
224
262
 
@@ -244,7 +282,7 @@ module VeloPayments
244
282
  is_nullable = self.class.openapi_nullable.include?(attr)
245
283
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
246
284
  end
247
-
285
+
248
286
  hash[param] = _to_hash(value)
249
287
  end
250
288
  hash
@@ -267,5 +305,7 @@ module VeloPayments
267
305
  value
268
306
  end
269
307
  end
308
+
270
309
  end
310
+
271
311
  end
@@ -0,0 +1,229 @@
1
+ =begin
2
+ #Velo Payments APIs
3
+
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
+
6
+ The version of the OpenAPI document: 2.26.124
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.2.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module VeloPayments
17
+ class ErrorData
18
+ # The description of the error data content
19
+ attr_accessor :description
20
+
21
+ # Object containing typed error data specific to the API
22
+ attr_accessor :content
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+ :'description' => :'description',
28
+ :'content' => :'content'
29
+ }
30
+ end
31
+
32
+ # Returns all the JSON keys this model knows about
33
+ def self.acceptable_attributes
34
+ attribute_map.values
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ def self.openapi_types
39
+ {
40
+ :'description' => :'String',
41
+ :'content' => :'Object'
42
+ }
43
+ end
44
+
45
+ # List of attributes with nullable: true
46
+ def self.openapi_nullable
47
+ Set.new([
48
+ ])
49
+ end
50
+
51
+ # Initializes the object
52
+ # @param [Hash] attributes Model attributes in the form of hash
53
+ def initialize(attributes = {})
54
+ if (!attributes.is_a?(Hash))
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::ErrorData` initialize method"
56
+ end
57
+
58
+ # check to see if the attribute exists and convert string to symbol for hash key
59
+ attributes = attributes.each_with_object({}) { |(k, v), h|
60
+ if (!self.class.attribute_map.key?(k.to_sym))
61
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::ErrorData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
62
+ end
63
+ h[k.to_sym] = v
64
+ }
65
+
66
+ if attributes.key?(:'description')
67
+ self.description = attributes[:'description']
68
+ end
69
+
70
+ if attributes.key?(:'content')
71
+ self.content = attributes[:'content']
72
+ end
73
+ end
74
+
75
+ # Show invalid properties with the reasons. Usually used together with valid?
76
+ # @return Array for valid properties with the reasons
77
+ def list_invalid_properties
78
+ invalid_properties = Array.new
79
+ invalid_properties
80
+ end
81
+
82
+ # Check to see if the all the properties in the model are valid
83
+ # @return true if the model is valid
84
+ def valid?
85
+ true
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param [Object] Object to be compared
90
+ def ==(o)
91
+ return true if self.equal?(o)
92
+ self.class == o.class &&
93
+ description == o.description &&
94
+ content == o.content
95
+ end
96
+
97
+ # @see the `==` method
98
+ # @param [Object] Object to be compared
99
+ def eql?(o)
100
+ self == o
101
+ end
102
+
103
+ # Calculates hash code according to all attributes.
104
+ # @return [Integer] Hash code
105
+ def hash
106
+ [description, content].hash
107
+ end
108
+
109
+ # Builds the object from hash
110
+ # @param [Hash] attributes Model attributes in the form of hash
111
+ # @return [Object] Returns the model itself
112
+ def self.build_from_hash(attributes)
113
+ new.build_from_hash(attributes)
114
+ end
115
+
116
+ # Builds the object from hash
117
+ # @param [Hash] attributes Model attributes in the form of hash
118
+ # @return [Object] Returns the model itself
119
+ def build_from_hash(attributes)
120
+ return nil unless attributes.is_a?(Hash)
121
+ self.class.openapi_types.each_pair do |key, type|
122
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
123
+ self.send("#{key}=", nil)
124
+ elsif type =~ /\AArray<(.*)>/i
125
+ # check to ensure the input is an array given that the attribute
126
+ # is documented as an array but the input is not
127
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
128
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
129
+ end
130
+ elsif !attributes[self.class.attribute_map[key]].nil?
131
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
132
+ end
133
+ end
134
+
135
+ self
136
+ end
137
+
138
+ # Deserializes the data based on type
139
+ # @param string type Data type
140
+ # @param string value Value to be deserialized
141
+ # @return [Object] Deserialized data
142
+ def _deserialize(type, value)
143
+ case type.to_sym
144
+ when :Time
145
+ Time.parse(value)
146
+ when :Date
147
+ Date.parse(value)
148
+ when :String
149
+ value.to_s
150
+ when :Integer
151
+ value.to_i
152
+ when :Float
153
+ value.to_f
154
+ when :Boolean
155
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
156
+ true
157
+ else
158
+ false
159
+ end
160
+ when :Object
161
+ # generic object (usually a Hash), return directly
162
+ value
163
+ when /\AArray<(?<inner_type>.+)>\z/
164
+ inner_type = Regexp.last_match[:inner_type]
165
+ value.map { |v| _deserialize(inner_type, v) }
166
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
167
+ k_type = Regexp.last_match[:k_type]
168
+ v_type = Regexp.last_match[:v_type]
169
+ {}.tap do |hash|
170
+ value.each do |k, v|
171
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
172
+ end
173
+ end
174
+ else # model
175
+ # models (e.g. Pet) or oneOf
176
+ klass = VeloPayments.const_get(type)
177
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
178
+ end
179
+ end
180
+
181
+ # Returns the string representation of the object
182
+ # @return [String] String presentation of the object
183
+ def to_s
184
+ to_hash.to_s
185
+ end
186
+
187
+ # to_body is an alias to to_hash (backward compatibility)
188
+ # @return [Hash] Returns the object in the form of hash
189
+ def to_body
190
+ to_hash
191
+ end
192
+
193
+ # Returns the object in the form of hash
194
+ # @return [Hash] Returns the object in the form of hash
195
+ def to_hash
196
+ hash = {}
197
+ self.class.attribute_map.each_pair do |attr, param|
198
+ value = self.send(attr)
199
+ if value.nil?
200
+ is_nullable = self.class.openapi_nullable.include?(attr)
201
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
202
+ end
203
+
204
+ hash[param] = _to_hash(value)
205
+ end
206
+ hash
207
+ end
208
+
209
+ # Outputs non-array value in the form of hash
210
+ # For object, use to_hash. Otherwise, just return the value
211
+ # @param [Object] value Any valid value
212
+ # @return [Hash] Returns the value in the form of hash
213
+ def _to_hash(value)
214
+ if value.is_a?(Array)
215
+ value.compact.map { |v| _to_hash(v) }
216
+ elsif value.is_a?(Hash)
217
+ {}.tap do |hash|
218
+ value.each { |k, v| hash[k] = _to_hash(v) }
219
+ end
220
+ elsif value.respond_to? :to_hash
221
+ value.to_hash
222
+ else
223
+ value
224
+ end
225
+ end
226
+
227
+ end
228
+
229
+ end