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
@@ -3,18 +3,19 @@
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
  # Details of principal participating in a payout.
17
- class PayoutPrincipalV4
18
+ class PayoutPrincipal
18
19
  # Email address if principal is a user or ID if application.
19
20
  attr_accessor :principal
20
21
 
@@ -29,6 +30,11 @@ module VeloPayments
29
30
  }
30
31
  end
31
32
 
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
32
38
  # Attribute type mapping.
33
39
  def self.openapi_types
34
40
  {
@@ -47,13 +53,13 @@ module VeloPayments
47
53
  # @param [Hash] attributes Model attributes in the form of hash
48
54
  def initialize(attributes = {})
49
55
  if (!attributes.is_a?(Hash))
50
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PayoutPrincipalV4` initialize method"
56
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PayoutPrincipal` initialize method"
51
57
  end
52
58
 
53
59
  # check to see if the attribute exists and convert string to symbol for hash key
54
60
  attributes = attributes.each_with_object({}) { |(k, v), h|
55
61
  if (!self.class.attribute_map.key?(k.to_sym))
56
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PayoutPrincipalV4`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
62
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PayoutPrincipal`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
57
63
  end
58
64
  h[k.to_sym] = v
59
65
  }
@@ -124,7 +130,9 @@ module VeloPayments
124
130
  def build_from_hash(attributes)
125
131
  return nil unless attributes.is_a?(Hash)
126
132
  self.class.openapi_types.each_pair do |key, type|
127
- if type =~ /\AArray<(.*)>/i
133
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
134
+ self.send("#{key}=", nil)
135
+ elsif type =~ /\AArray<(.*)>/i
128
136
  # check to ensure the input is an array given that the attribute
129
137
  # is documented as an array but the input is not
130
138
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -132,7 +140,7 @@ module VeloPayments
132
140
  end
133
141
  elsif !attributes[self.class.attribute_map[key]].nil?
134
142
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
135
- end # or else data not found in attributes(hash), not an issue as the data can be optional
143
+ end
136
144
  end
137
145
 
138
146
  self
@@ -144,8 +152,8 @@ module VeloPayments
144
152
  # @return [Object] Deserialized data
145
153
  def _deserialize(type, value)
146
154
  case type.to_sym
147
- when :DateTime
148
- DateTime.parse(value)
155
+ when :Time
156
+ Time.parse(value)
149
157
  when :Date
150
158
  Date.parse(value)
151
159
  when :String
@@ -175,7 +183,9 @@ module VeloPayments
175
183
  end
176
184
  end
177
185
  else # model
178
- VeloPayments.const_get(type).build_from_hash(value)
186
+ # models (e.g. Pet) or oneOf
187
+ klass = VeloPayments.const_get(type)
188
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
179
189
  end
180
190
  end
181
191
 
@@ -201,7 +211,7 @@ module VeloPayments
201
211
  is_nullable = self.class.openapi_nullable.include?(attr)
202
212
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
203
213
  end
204
-
214
+
205
215
  hash[param] = _to_hash(value)
206
216
  end
207
217
  hash
@@ -224,5 +234,7 @@ module VeloPayments
224
234
  value
225
235
  end
226
236
  end
237
+
227
238
  end
239
+
228
240
  end
@@ -3,17 +3,18 @@
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
- class PayoutStatusV4
17
+ class PayoutStatus
17
18
  ACCEPTED = "ACCEPTED".freeze
18
19
  REJECTED = "REJECTED".freeze
19
20
  SUBMITTED = "SUBMITTED".freeze
@@ -35,8 +36,8 @@ module VeloPayments
35
36
  # @param [String] The enum value in the form of the string
36
37
  # @return [String] The enum value
37
38
  def build_from_hash(value)
38
- constantValues = PayoutStatusV4.constants.select { |c| PayoutStatusV4::const_get(c) == value }
39
- raise "Invalid ENUM value #{value} for class #PayoutStatusV4" if constantValues.empty?
39
+ constantValues = PayoutStatus.constants.select { |c| PayoutStatus::const_get(c) == value }
40
+ raise "Invalid ENUM value #{value} for class #PayoutStatus" if constantValues.empty?
40
41
  value
41
42
  end
42
43
  end
@@ -3,14 +3,15 @@
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 PayoutStatusV3
@@ -3,17 +3,18 @@
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
- class PayoutSummaryAuditV4
17
+ class PayoutSummaryAudit
17
18
  attr_accessor :payout_id
18
19
 
19
20
  attr_accessor :payor_id
@@ -34,6 +35,8 @@ module VeloPayments
34
35
 
35
36
  attr_accessor :total_returned_payments
36
37
 
38
+ attr_accessor :total_withdrawn_payments
39
+
37
40
  attr_accessor :source_account_summary
38
41
 
39
42
  attr_accessor :fx_summaries
@@ -57,6 +60,7 @@ module VeloPayments
57
60
  :'total_payments' => :'totalPayments',
58
61
  :'total_incomplete_payments' => :'totalIncompletePayments',
59
62
  :'total_returned_payments' => :'totalReturnedPayments',
63
+ :'total_withdrawn_payments' => :'totalWithdrawnPayments',
60
64
  :'source_account_summary' => :'sourceAccountSummary',
61
65
  :'fx_summaries' => :'fxSummaries',
62
66
  :'payout_memo' => :'payoutMemo',
@@ -65,23 +69,29 @@ module VeloPayments
65
69
  }
66
70
  end
67
71
 
72
+ # Returns all the JSON keys this model knows about
73
+ def self.acceptable_attributes
74
+ attribute_map.values
75
+ end
76
+
68
77
  # Attribute type mapping.
69
78
  def self.openapi_types
70
79
  {
71
80
  :'payout_id' => :'String',
72
81
  :'payor_id' => :'String',
73
- :'status' => :'PayoutStatusV4',
74
- :'date_time' => :'DateTime',
82
+ :'status' => :'PayoutStatus',
83
+ :'date_time' => :'Time',
75
84
  :'submitted_date_time' => :'String',
76
85
  :'instructed_date_time' => :'String',
77
- :'withdrawn_date_time' => :'DateTime',
86
+ :'withdrawn_date_time' => :'Time',
78
87
  :'total_payments' => :'Integer',
79
88
  :'total_incomplete_payments' => :'Integer',
80
89
  :'total_returned_payments' => :'Integer',
81
- :'source_account_summary' => :'Array<SourceAccountSummaryV4>',
82
- :'fx_summaries' => :'Array<FxSummaryV4>',
90
+ :'total_withdrawn_payments' => :'Integer',
91
+ :'source_account_summary' => :'Array<SourceAccountSummary>',
92
+ :'fx_summaries' => :'Array<FxSummary>',
83
93
  :'payout_memo' => :'String',
84
- :'payout_type' => :'PayoutTypeV4',
94
+ :'payout_type' => :'PayoutType',
85
95
  :'payor_name' => :'String'
86
96
  }
87
97
  end
@@ -96,13 +106,13 @@ module VeloPayments
96
106
  # @param [Hash] attributes Model attributes in the form of hash
97
107
  def initialize(attributes = {})
98
108
  if (!attributes.is_a?(Hash))
99
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PayoutSummaryAuditV4` initialize method"
109
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PayoutSummaryAudit` initialize method"
100
110
  end
101
111
 
102
112
  # check to see if the attribute exists and convert string to symbol for hash key
103
113
  attributes = attributes.each_with_object({}) { |(k, v), h|
104
114
  if (!self.class.attribute_map.key?(k.to_sym))
105
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PayoutSummaryAuditV4`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
115
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PayoutSummaryAudit`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
106
116
  end
107
117
  h[k.to_sym] = v
108
118
  }
@@ -147,6 +157,10 @@ module VeloPayments
147
157
  self.total_returned_payments = attributes[:'total_returned_payments']
148
158
  end
149
159
 
160
+ if attributes.key?(:'total_withdrawn_payments')
161
+ self.total_withdrawn_payments = attributes[:'total_withdrawn_payments']
162
+ end
163
+
150
164
  if attributes.key?(:'source_account_summary')
151
165
  if (value = attributes[:'source_account_summary']).is_a?(Array)
152
166
  self.source_account_summary = value
@@ -220,6 +234,7 @@ module VeloPayments
220
234
  total_payments == o.total_payments &&
221
235
  total_incomplete_payments == o.total_incomplete_payments &&
222
236
  total_returned_payments == o.total_returned_payments &&
237
+ total_withdrawn_payments == o.total_withdrawn_payments &&
223
238
  source_account_summary == o.source_account_summary &&
224
239
  fx_summaries == o.fx_summaries &&
225
240
  payout_memo == o.payout_memo &&
@@ -236,7 +251,7 @@ module VeloPayments
236
251
  # Calculates hash code according to all attributes.
237
252
  # @return [Integer] Hash code
238
253
  def hash
239
- [payout_id, payor_id, status, date_time, submitted_date_time, instructed_date_time, withdrawn_date_time, total_payments, total_incomplete_payments, total_returned_payments, source_account_summary, fx_summaries, payout_memo, payout_type, payor_name].hash
254
+ [payout_id, payor_id, status, date_time, submitted_date_time, instructed_date_time, withdrawn_date_time, total_payments, total_incomplete_payments, total_returned_payments, total_withdrawn_payments, source_account_summary, fx_summaries, payout_memo, payout_type, payor_name].hash
240
255
  end
241
256
 
242
257
  # Builds the object from hash
@@ -252,7 +267,9 @@ module VeloPayments
252
267
  def build_from_hash(attributes)
253
268
  return nil unless attributes.is_a?(Hash)
254
269
  self.class.openapi_types.each_pair do |key, type|
255
- if type =~ /\AArray<(.*)>/i
270
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
271
+ self.send("#{key}=", nil)
272
+ elsif type =~ /\AArray<(.*)>/i
256
273
  # check to ensure the input is an array given that the attribute
257
274
  # is documented as an array but the input is not
258
275
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -260,7 +277,7 @@ module VeloPayments
260
277
  end
261
278
  elsif !attributes[self.class.attribute_map[key]].nil?
262
279
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
263
- end # or else data not found in attributes(hash), not an issue as the data can be optional
280
+ end
264
281
  end
265
282
 
266
283
  self
@@ -272,8 +289,8 @@ module VeloPayments
272
289
  # @return [Object] Deserialized data
273
290
  def _deserialize(type, value)
274
291
  case type.to_sym
275
- when :DateTime
276
- DateTime.parse(value)
292
+ when :Time
293
+ Time.parse(value)
277
294
  when :Date
278
295
  Date.parse(value)
279
296
  when :String
@@ -303,7 +320,9 @@ module VeloPayments
303
320
  end
304
321
  end
305
322
  else # model
306
- VeloPayments.const_get(type).build_from_hash(value)
323
+ # models (e.g. Pet) or oneOf
324
+ klass = VeloPayments.const_get(type)
325
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
307
326
  end
308
327
  end
309
328
 
@@ -329,7 +348,7 @@ module VeloPayments
329
348
  is_nullable = self.class.openapi_nullable.include?(attr)
330
349
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
331
350
  end
332
-
351
+
333
352
  hash[param] = _to_hash(value)
334
353
  end
335
354
  hash
@@ -352,5 +371,7 @@ module VeloPayments
352
371
  value
353
372
  end
354
373
  end
374
+
355
375
  end
376
+
356
377
  end
@@ -3,14 +3,15 @@
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 PayoutSummaryAuditV3
@@ -56,6 +57,11 @@ module VeloPayments
56
57
  }
57
58
  end
58
59
 
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ attribute_map.values
63
+ end
64
+
59
65
  # Attribute type mapping.
60
66
  def self.openapi_types
61
67
  {
@@ -220,7 +226,9 @@ module VeloPayments
220
226
  def build_from_hash(attributes)
221
227
  return nil unless attributes.is_a?(Hash)
222
228
  self.class.openapi_types.each_pair do |key, type|
223
- if type =~ /\AArray<(.*)>/i
229
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
230
+ self.send("#{key}=", nil)
231
+ elsif type =~ /\AArray<(.*)>/i
224
232
  # check to ensure the input is an array given that the attribute
225
233
  # is documented as an array but the input is not
226
234
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -228,7 +236,7 @@ module VeloPayments
228
236
  end
229
237
  elsif !attributes[self.class.attribute_map[key]].nil?
230
238
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
231
- end # or else data not found in attributes(hash), not an issue as the data can be optional
239
+ end
232
240
  end
233
241
 
234
242
  self
@@ -240,8 +248,8 @@ module VeloPayments
240
248
  # @return [Object] Deserialized data
241
249
  def _deserialize(type, value)
242
250
  case type.to_sym
243
- when :DateTime
244
- DateTime.parse(value)
251
+ when :Time
252
+ Time.parse(value)
245
253
  when :Date
246
254
  Date.parse(value)
247
255
  when :String
@@ -271,7 +279,9 @@ module VeloPayments
271
279
  end
272
280
  end
273
281
  else # model
274
- VeloPayments.const_get(type).build_from_hash(value)
282
+ # models (e.g. Pet) or oneOf
283
+ klass = VeloPayments.const_get(type)
284
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
275
285
  end
276
286
  end
277
287
 
@@ -297,7 +307,7 @@ module VeloPayments
297
307
  is_nullable = self.class.openapi_nullable.include?(attr)
298
308
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
299
309
  end
300
-
310
+
301
311
  hash[param] = _to_hash(value)
302
312
  end
303
313
  hash
@@ -320,5 +330,7 @@ module VeloPayments
320
330
  value
321
331
  end
322
332
  end
333
+
323
334
  end
335
+
324
336
  end
@@ -3,17 +3,18 @@
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
- class PayoutSummaryResponse
17
+ class PayoutSummaryResponseV3
17
18
  attr_accessor :payout_id
18
19
 
19
20
  attr_accessor :status
@@ -24,6 +25,8 @@ module VeloPayments
24
25
 
25
26
  attr_accessor :payments_rejected
26
27
 
28
+ attr_accessor :payments_withdrawn
29
+
27
30
  attr_accessor :fx_summaries
28
31
 
29
32
  attr_accessor :accounts
@@ -40,6 +43,7 @@ module VeloPayments
40
43
  :'payments_submitted' => :'paymentsSubmitted',
41
44
  :'payments_accepted' => :'paymentsAccepted',
42
45
  :'payments_rejected' => :'paymentsRejected',
46
+ :'payments_withdrawn' => :'paymentsWithdrawn',
43
47
  :'fx_summaries' => :'fxSummaries',
44
48
  :'accounts' => :'accounts',
45
49
  :'accepted_payments' => :'acceptedPayments',
@@ -47,6 +51,11 @@ module VeloPayments
47
51
  }
48
52
  end
49
53
 
54
+ # Returns all the JSON keys this model knows about
55
+ def self.acceptable_attributes
56
+ attribute_map.values
57
+ end
58
+
50
59
  # Attribute type mapping.
51
60
  def self.openapi_types
52
61
  {
@@ -55,10 +64,11 @@ module VeloPayments
55
64
  :'payments_submitted' => :'Integer',
56
65
  :'payments_accepted' => :'Integer',
57
66
  :'payments_rejected' => :'Integer',
58
- :'fx_summaries' => :'Array<QuoteFxSummary>',
59
- :'accounts' => :'Array<SourceAccount>',
60
- :'accepted_payments' => :'Array<AcceptedPayment>',
61
- :'rejected_payments' => :'Array<RejectedPayment>'
67
+ :'payments_withdrawn' => :'Integer',
68
+ :'fx_summaries' => :'Array<QuoteFxSummaryV3>',
69
+ :'accounts' => :'Array<SourceAccountV3>',
70
+ :'accepted_payments' => :'Array<AcceptedPaymentV3>',
71
+ :'rejected_payments' => :'Array<RejectedPaymentV3>'
62
72
  }
63
73
  end
64
74
 
@@ -72,13 +82,13 @@ module VeloPayments
72
82
  # @param [Hash] attributes Model attributes in the form of hash
73
83
  def initialize(attributes = {})
74
84
  if (!attributes.is_a?(Hash))
75
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PayoutSummaryResponse` initialize method"
85
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PayoutSummaryResponseV3` initialize method"
76
86
  end
77
87
 
78
88
  # check to see if the attribute exists and convert string to symbol for hash key
79
89
  attributes = attributes.each_with_object({}) { |(k, v), h|
80
90
  if (!self.class.attribute_map.key?(k.to_sym))
81
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PayoutSummaryResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
91
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PayoutSummaryResponseV3`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
82
92
  end
83
93
  h[k.to_sym] = v
84
94
  }
@@ -103,6 +113,10 @@ module VeloPayments
103
113
  self.payments_rejected = attributes[:'payments_rejected']
104
114
  end
105
115
 
116
+ if attributes.key?(:'payments_withdrawn')
117
+ self.payments_withdrawn = attributes[:'payments_withdrawn']
118
+ end
119
+
106
120
  if attributes.key?(:'fx_summaries')
107
121
  if (value = attributes[:'fx_summaries']).is_a?(Array)
108
122
  self.fx_summaries = value
@@ -132,6 +146,10 @@ module VeloPayments
132
146
  # @return Array for valid properties with the reasons
133
147
  def list_invalid_properties
134
148
  invalid_properties = Array.new
149
+ if @payments_withdrawn.nil?
150
+ invalid_properties.push('invalid value for "payments_withdrawn", payments_withdrawn cannot be nil.')
151
+ end
152
+
135
153
  if @fx_summaries.nil?
136
154
  invalid_properties.push('invalid value for "fx_summaries", fx_summaries cannot be nil.')
137
155
  end
@@ -154,6 +172,7 @@ module VeloPayments
154
172
  # Check to see if the all the properties in the model are valid
155
173
  # @return true if the model is valid
156
174
  def valid?
175
+ return false if @payments_withdrawn.nil?
157
176
  return false if @fx_summaries.nil?
158
177
  return false if @accounts.nil?
159
178
  return false if @accepted_payments.nil?
@@ -171,6 +190,7 @@ module VeloPayments
171
190
  payments_submitted == o.payments_submitted &&
172
191
  payments_accepted == o.payments_accepted &&
173
192
  payments_rejected == o.payments_rejected &&
193
+ payments_withdrawn == o.payments_withdrawn &&
174
194
  fx_summaries == o.fx_summaries &&
175
195
  accounts == o.accounts &&
176
196
  accepted_payments == o.accepted_payments &&
@@ -186,7 +206,7 @@ module VeloPayments
186
206
  # Calculates hash code according to all attributes.
187
207
  # @return [Integer] Hash code
188
208
  def hash
189
- [payout_id, status, payments_submitted, payments_accepted, payments_rejected, fx_summaries, accounts, accepted_payments, rejected_payments].hash
209
+ [payout_id, status, payments_submitted, payments_accepted, payments_rejected, payments_withdrawn, fx_summaries, accounts, accepted_payments, rejected_payments].hash
190
210
  end
191
211
 
192
212
  # Builds the object from hash
@@ -202,7 +222,9 @@ module VeloPayments
202
222
  def build_from_hash(attributes)
203
223
  return nil unless attributes.is_a?(Hash)
204
224
  self.class.openapi_types.each_pair do |key, type|
205
- if type =~ /\AArray<(.*)>/i
225
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
226
+ self.send("#{key}=", nil)
227
+ elsif type =~ /\AArray<(.*)>/i
206
228
  # check to ensure the input is an array given that the attribute
207
229
  # is documented as an array but the input is not
208
230
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -210,7 +232,7 @@ module VeloPayments
210
232
  end
211
233
  elsif !attributes[self.class.attribute_map[key]].nil?
212
234
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
213
- end # or else data not found in attributes(hash), not an issue as the data can be optional
235
+ end
214
236
  end
215
237
 
216
238
  self
@@ -222,8 +244,8 @@ module VeloPayments
222
244
  # @return [Object] Deserialized data
223
245
  def _deserialize(type, value)
224
246
  case type.to_sym
225
- when :DateTime
226
- DateTime.parse(value)
247
+ when :Time
248
+ Time.parse(value)
227
249
  when :Date
228
250
  Date.parse(value)
229
251
  when :String
@@ -253,7 +275,9 @@ module VeloPayments
253
275
  end
254
276
  end
255
277
  else # model
256
- VeloPayments.const_get(type).build_from_hash(value)
278
+ # models (e.g. Pet) or oneOf
279
+ klass = VeloPayments.const_get(type)
280
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
257
281
  end
258
282
  end
259
283
 
@@ -279,7 +303,7 @@ module VeloPayments
279
303
  is_nullable = self.class.openapi_nullable.include?(attr)
280
304
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
281
305
  end
282
-
306
+
283
307
  hash[param] = _to_hash(value)
284
308
  end
285
309
  hash
@@ -302,5 +326,7 @@ module VeloPayments
302
326
  value
303
327
  end
304
328
  end
329
+
305
330
  end
331
+
306
332
  end