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,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 PaymentEventResponseV4
17
+ class PaymentEventResponse
17
18
  # The id of the event.
18
19
  attr_accessor :event_id
19
20
 
@@ -85,15 +86,20 @@ module VeloPayments
85
86
  }
86
87
  end
87
88
 
89
+ # Returns all the JSON keys this model knows about
90
+ def self.acceptable_attributes
91
+ attribute_map.values
92
+ end
93
+
88
94
  # Attribute type mapping.
89
95
  def self.openapi_types
90
96
  {
91
97
  :'event_id' => :'String',
92
- :'event_date_time' => :'DateTime',
98
+ :'event_date_time' => :'Time',
93
99
  :'event_type' => :'String',
94
- :'source_currency' => :'PaymentAuditCurrencyV4',
100
+ :'source_currency' => :'PaymentAuditCurrency',
95
101
  :'source_amount' => :'Integer',
96
- :'payment_currency' => :'PaymentAuditCurrencyV4',
102
+ :'payment_currency' => :'PaymentAuditCurrency',
97
103
  :'payment_amount' => :'Integer',
98
104
  :'account_number' => :'String',
99
105
  :'routing_number' => :'String',
@@ -113,13 +119,13 @@ module VeloPayments
113
119
  # @param [Hash] attributes Model attributes in the form of hash
114
120
  def initialize(attributes = {})
115
121
  if (!attributes.is_a?(Hash))
116
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PaymentEventResponseV4` initialize method"
122
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PaymentEventResponse` initialize method"
117
123
  end
118
124
 
119
125
  # check to see if the attribute exists and convert string to symbol for hash key
120
126
  attributes = attributes.each_with_object({}) { |(k, v), h|
121
127
  if (!self.class.attribute_map.key?(k.to_sym))
122
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PaymentEventResponseV4`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
128
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PaymentEventResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
123
129
  end
124
130
  h[k.to_sym] = v
125
131
  }
@@ -198,7 +204,7 @@ module VeloPayments
198
204
  return false if @event_id.nil?
199
205
  return false if @event_date_time.nil?
200
206
  return false if @event_type.nil?
201
- event_type_validator = EnumAttributeValidator.new('String', ["PAYOUT_SUBMITTED", "PAYOUT_COMPLETED", "PAYOUT_INSTRUCTED_V3", "BANK_PAYMENT_REQUESTED", "SOURCE_AMOUNT_CONFIRMED", "PAYMENT_SUBMITTED", "PAYMENT_SUBMITTED_ACCEPTED", "PAYMENT_SUBMITTED_REJECTED", "PAYMENT_CONFIRMED", "PAYMENT_AWAITING_FUNDS", "PAYMENT_FUNDED", "PAYMENT_UNFUNDED", "PAYMENT_FAILED", "ACH_SUBMITTED_TO_ODFI", "PAYMENT_ACCEPTED_BY_RAILS", "ACH_RETURN_RECEIVED", "RETURN_PAYMENT_FUNDING_REQUESTED", "PAYOUT_BATCH_EXECUTED", "PAYOUT_BATCH_QUOTE_EXPIRED", "PAYOUT_BATCH_FUNDED", "PAYOUT_BATCH_FUNDS_RETURN_REQUEST", "PAYOUT_BATCH_FUNDS_RETURNED", "PAYOUT_FUNDS_REQUEST", "PAYOUT_FUNDS_GRANTED", "PAYOUT_FUNDS_DENIED", "PAYOUT_BATCH_QUOTED", "PAYOUT_QUOTED", "ACH_PAYMENT_RETURN_CANCELLED", "RETURN_PAYMENT_CANCELLATION_REQUESTED", "PAYOUT_WITHDRAWN"])
207
+ event_type_validator = EnumAttributeValidator.new('String', ["PAYOUT_SUBMITTED", "PAYOUT_COMPLETED", "PAYOUT_INSTRUCTED_V3", "BANK_PAYMENT_REQUESTED", "SOURCE_AMOUNT_CONFIRMED", "PAYMENT_SUBMITTED", "PAYMENT_SUBMITTED_ACCEPTED", "PAYMENT_SUBMITTED_REJECTED", "PAYMENT_CONFIRMED", "PAYMENT_AWAITING_FUNDS", "PAYMENT_FUNDED", "PAYMENT_UNFUNDED", "PAYMENT_FAILED", "ACH_SUBMITTED_TO_ODFI", "PAYMENT_ACCEPTED_BY_RAILS", "ACH_RETURN_RECEIVED", "RETURN_PAYMENT_FUNDING_REQUESTED", "PAYOUT_BATCH_EXECUTED", "PAYOUT_BATCH_QUOTE_EXPIRED", "PAYOUT_BATCH_FUNDED", "PAYOUT_BATCH_FUNDS_RETURN_REQUEST", "PAYOUT_BATCH_FUNDS_RETURNED", "PAYOUT_FUNDS_REQUEST", "PAYOUT_FUNDS_GRANTED", "PAYOUT_FUNDS_DENIED", "PAYOUT_BATCH_QUOTED", "PAYOUT_QUOTED", "ACH_PAYMENT_RETURN_CANCELLED", "RETURN_PAYMENT_CANCELLATION_REQUESTED", "PAYOUT_WITHDRAWN", "ORCHESTRATED_PAYMENT_BATCH_REQUESTED", "ORCHESTRATED_PAYMENT_BATCH_CONFIRMED", "ORCHESTRATED_PAYMENT_REQUESTED"])
202
208
  return false unless event_type_validator.valid?(@event_type)
203
209
  true
204
210
  end
@@ -206,7 +212,7 @@ module VeloPayments
206
212
  # Custom attribute writer method checking allowed values (enum).
207
213
  # @param [Object] event_type Object to be assigned
208
214
  def event_type=(event_type)
209
- validator = EnumAttributeValidator.new('String', ["PAYOUT_SUBMITTED", "PAYOUT_COMPLETED", "PAYOUT_INSTRUCTED_V3", "BANK_PAYMENT_REQUESTED", "SOURCE_AMOUNT_CONFIRMED", "PAYMENT_SUBMITTED", "PAYMENT_SUBMITTED_ACCEPTED", "PAYMENT_SUBMITTED_REJECTED", "PAYMENT_CONFIRMED", "PAYMENT_AWAITING_FUNDS", "PAYMENT_FUNDED", "PAYMENT_UNFUNDED", "PAYMENT_FAILED", "ACH_SUBMITTED_TO_ODFI", "PAYMENT_ACCEPTED_BY_RAILS", "ACH_RETURN_RECEIVED", "RETURN_PAYMENT_FUNDING_REQUESTED", "PAYOUT_BATCH_EXECUTED", "PAYOUT_BATCH_QUOTE_EXPIRED", "PAYOUT_BATCH_FUNDED", "PAYOUT_BATCH_FUNDS_RETURN_REQUEST", "PAYOUT_BATCH_FUNDS_RETURNED", "PAYOUT_FUNDS_REQUEST", "PAYOUT_FUNDS_GRANTED", "PAYOUT_FUNDS_DENIED", "PAYOUT_BATCH_QUOTED", "PAYOUT_QUOTED", "ACH_PAYMENT_RETURN_CANCELLED", "RETURN_PAYMENT_CANCELLATION_REQUESTED", "PAYOUT_WITHDRAWN"])
215
+ validator = EnumAttributeValidator.new('String', ["PAYOUT_SUBMITTED", "PAYOUT_COMPLETED", "PAYOUT_INSTRUCTED_V3", "BANK_PAYMENT_REQUESTED", "SOURCE_AMOUNT_CONFIRMED", "PAYMENT_SUBMITTED", "PAYMENT_SUBMITTED_ACCEPTED", "PAYMENT_SUBMITTED_REJECTED", "PAYMENT_CONFIRMED", "PAYMENT_AWAITING_FUNDS", "PAYMENT_FUNDED", "PAYMENT_UNFUNDED", "PAYMENT_FAILED", "ACH_SUBMITTED_TO_ODFI", "PAYMENT_ACCEPTED_BY_RAILS", "ACH_RETURN_RECEIVED", "RETURN_PAYMENT_FUNDING_REQUESTED", "PAYOUT_BATCH_EXECUTED", "PAYOUT_BATCH_QUOTE_EXPIRED", "PAYOUT_BATCH_FUNDED", "PAYOUT_BATCH_FUNDS_RETURN_REQUEST", "PAYOUT_BATCH_FUNDS_RETURNED", "PAYOUT_FUNDS_REQUEST", "PAYOUT_FUNDS_GRANTED", "PAYOUT_FUNDS_DENIED", "PAYOUT_BATCH_QUOTED", "PAYOUT_QUOTED", "ACH_PAYMENT_RETURN_CANCELLED", "RETURN_PAYMENT_CANCELLATION_REQUESTED", "PAYOUT_WITHDRAWN", "ORCHESTRATED_PAYMENT_BATCH_REQUESTED", "ORCHESTRATED_PAYMENT_BATCH_CONFIRMED", "ORCHESTRATED_PAYMENT_REQUESTED"])
210
216
  unless validator.valid?(event_type)
211
217
  fail ArgumentError, "invalid value for \"event_type\", must be one of #{validator.allowable_values}."
212
218
  end
@@ -257,7 +263,9 @@ module VeloPayments
257
263
  def build_from_hash(attributes)
258
264
  return nil unless attributes.is_a?(Hash)
259
265
  self.class.openapi_types.each_pair do |key, type|
260
- if type =~ /\AArray<(.*)>/i
266
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
267
+ self.send("#{key}=", nil)
268
+ elsif type =~ /\AArray<(.*)>/i
261
269
  # check to ensure the input is an array given that the attribute
262
270
  # is documented as an array but the input is not
263
271
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -265,7 +273,7 @@ module VeloPayments
265
273
  end
266
274
  elsif !attributes[self.class.attribute_map[key]].nil?
267
275
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
268
- end # or else data not found in attributes(hash), not an issue as the data can be optional
276
+ end
269
277
  end
270
278
 
271
279
  self
@@ -277,8 +285,8 @@ module VeloPayments
277
285
  # @return [Object] Deserialized data
278
286
  def _deserialize(type, value)
279
287
  case type.to_sym
280
- when :DateTime
281
- DateTime.parse(value)
288
+ when :Time
289
+ Time.parse(value)
282
290
  when :Date
283
291
  Date.parse(value)
284
292
  when :String
@@ -308,7 +316,9 @@ module VeloPayments
308
316
  end
309
317
  end
310
318
  else # model
311
- VeloPayments.const_get(type).build_from_hash(value)
319
+ # models (e.g. Pet) or oneOf
320
+ klass = VeloPayments.const_get(type)
321
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
312
322
  end
313
323
  end
314
324
 
@@ -334,7 +344,7 @@ module VeloPayments
334
344
  is_nullable = self.class.openapi_nullable.include?(attr)
335
345
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
336
346
  end
337
-
347
+
338
348
  hash[param] = _to_hash(value)
339
349
  end
340
350
  hash
@@ -357,5 +367,7 @@ module VeloPayments
357
367
  value
358
368
  end
359
369
  end
370
+
360
371
  end
372
+
361
373
  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 PaymentEventResponseV3
@@ -85,11 +86,16 @@ module VeloPayments
85
86
  }
86
87
  end
87
88
 
89
+ # Returns all the JSON keys this model knows about
90
+ def self.acceptable_attributes
91
+ attribute_map.values
92
+ end
93
+
88
94
  # Attribute type mapping.
89
95
  def self.openapi_types
90
96
  {
91
97
  :'event_id' => :'String',
92
- :'event_date_time' => :'DateTime',
98
+ :'event_date_time' => :'Time',
93
99
  :'event_type' => :'String',
94
100
  :'source_currency' => :'PaymentAuditCurrencyV3',
95
101
  :'source_amount' => :'Integer',
@@ -257,7 +263,9 @@ module VeloPayments
257
263
  def build_from_hash(attributes)
258
264
  return nil unless attributes.is_a?(Hash)
259
265
  self.class.openapi_types.each_pair do |key, type|
260
- if type =~ /\AArray<(.*)>/i
266
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
267
+ self.send("#{key}=", nil)
268
+ elsif type =~ /\AArray<(.*)>/i
261
269
  # check to ensure the input is an array given that the attribute
262
270
  # is documented as an array but the input is not
263
271
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -265,7 +273,7 @@ module VeloPayments
265
273
  end
266
274
  elsif !attributes[self.class.attribute_map[key]].nil?
267
275
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
268
- end # or else data not found in attributes(hash), not an issue as the data can be optional
276
+ end
269
277
  end
270
278
 
271
279
  self
@@ -277,8 +285,8 @@ module VeloPayments
277
285
  # @return [Object] Deserialized data
278
286
  def _deserialize(type, value)
279
287
  case type.to_sym
280
- when :DateTime
281
- DateTime.parse(value)
288
+ when :Time
289
+ Time.parse(value)
282
290
  when :Date
283
291
  Date.parse(value)
284
292
  when :String
@@ -308,7 +316,9 @@ module VeloPayments
308
316
  end
309
317
  end
310
318
  else # model
311
- VeloPayments.const_get(type).build_from_hash(value)
319
+ # models (e.g. Pet) or oneOf
320
+ klass = VeloPayments.const_get(type)
321
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
312
322
  end
313
323
  end
314
324
 
@@ -334,7 +344,7 @@ module VeloPayments
334
344
  is_nullable = self.class.openapi_nullable.include?(attr)
335
345
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
336
346
  end
337
-
347
+
338
348
  hash[param] = _to_hash(value)
339
349
  end
340
350
  hash
@@ -357,5 +367,7 @@ module VeloPayments
357
367
  value
358
368
  end
359
369
  end
370
+
360
371
  end
372
+
361
373
  end
@@ -3,32 +3,45 @@
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 PaymentInstruction
17
+ # Instruction for creating a payment
18
+ class PaymentInstructionV3
17
19
  # Your identifier for payee
18
20
  attr_accessor :remote_id
19
21
 
20
- # Payee's currency
22
+ # Valid ISO 4217 3 letter currency code. See the <a href=\"https://www.iso.org/iso-4217-currency-codes.html\" target=\"_blank\" a>ISO specification</a> for details.
21
23
  attr_accessor :currency
22
24
 
23
25
  # <p>Amount to send to Payee</p> <p>The maximum payment amount is dependent on the currency</p>
24
26
  attr_accessor :amount
25
27
 
28
+ # <p>Any value here will override the memo value in the parent payout</p> <p>This should be the reference field on the statement seen by the payee (but not via ACH)</p>
26
29
  attr_accessor :payment_memo
27
30
 
31
+ # Must match a valid source account name belonging to the payor
28
32
  attr_accessor :source_account_name
29
33
 
34
+ # A reference identifier for the payor for the given payee payment
30
35
  attr_accessor :payor_payment_id
31
36
 
37
+ attr_accessor :transmission_type
38
+
39
+ # <p>The identifier for the remote payments system if not Velo</p> <p>Should only be used after consultation with Velo Payments</p>
40
+ attr_accessor :remote_system_id
41
+
42
+ # <p>Metadata about the payment that may be relevant to the specific rails or remote system making the payout</p> <p>The structure of the data will be dictated by the requirements of the payment rails</p>
43
+ attr_accessor :payment_metadata
44
+
32
45
  # Attribute mapping from ruby-style variable name to JSON key.
33
46
  def self.attribute_map
34
47
  {
@@ -37,10 +50,18 @@ module VeloPayments
37
50
  :'amount' => :'amount',
38
51
  :'payment_memo' => :'paymentMemo',
39
52
  :'source_account_name' => :'sourceAccountName',
40
- :'payor_payment_id' => :'payorPaymentId'
53
+ :'payor_payment_id' => :'payorPaymentId',
54
+ :'transmission_type' => :'transmissionType',
55
+ :'remote_system_id' => :'remoteSystemId',
56
+ :'payment_metadata' => :'paymentMetadata'
41
57
  }
42
58
  end
43
59
 
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ attribute_map.values
63
+ end
64
+
44
65
  # Attribute type mapping.
45
66
  def self.openapi_types
46
67
  {
@@ -49,7 +70,10 @@ module VeloPayments
49
70
  :'amount' => :'Integer',
50
71
  :'payment_memo' => :'String',
51
72
  :'source_account_name' => :'String',
52
- :'payor_payment_id' => :'String'
73
+ :'payor_payment_id' => :'String',
74
+ :'transmission_type' => :'TransmissionType',
75
+ :'remote_system_id' => :'String',
76
+ :'payment_metadata' => :'String'
53
77
  }
54
78
  end
55
79
 
@@ -63,13 +87,13 @@ module VeloPayments
63
87
  # @param [Hash] attributes Model attributes in the form of hash
64
88
  def initialize(attributes = {})
65
89
  if (!attributes.is_a?(Hash))
66
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PaymentInstruction` initialize method"
90
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::PaymentInstructionV3` initialize method"
67
91
  end
68
92
 
69
93
  # check to see if the attribute exists and convert string to symbol for hash key
70
94
  attributes = attributes.each_with_object({}) { |(k, v), h|
71
95
  if (!self.class.attribute_map.key?(k.to_sym))
72
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PaymentInstruction`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
96
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::PaymentInstructionV3`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
73
97
  end
74
98
  h[k.to_sym] = v
75
99
  }
@@ -97,6 +121,18 @@ module VeloPayments
97
121
  if attributes.key?(:'payor_payment_id')
98
122
  self.payor_payment_id = attributes[:'payor_payment_id']
99
123
  end
124
+
125
+ if attributes.key?(:'transmission_type')
126
+ self.transmission_type = attributes[:'transmission_type']
127
+ end
128
+
129
+ if attributes.key?(:'remote_system_id')
130
+ self.remote_system_id = attributes[:'remote_system_id']
131
+ end
132
+
133
+ if attributes.key?(:'payment_metadata')
134
+ self.payment_metadata = attributes[:'payment_metadata']
135
+ end
100
136
  end
101
137
 
102
138
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -119,6 +155,19 @@ module VeloPayments
119
155
  invalid_properties.push('invalid value for "currency", currency cannot be nil.')
120
156
  end
121
157
 
158
+ if @currency.to_s.length > 3
159
+ invalid_properties.push('invalid value for "currency", the character length must be smaller than or equal to 3.')
160
+ end
161
+
162
+ if @currency.to_s.length < 3
163
+ invalid_properties.push('invalid value for "currency", the character length must be great than or equal to 3.')
164
+ end
165
+
166
+ pattern = Regexp.new(/^[A-Z]{3}$/)
167
+ if @currency !~ pattern
168
+ invalid_properties.push("invalid value for \"currency\", must conform to the pattern #{pattern}.")
169
+ end
170
+
122
171
  if @amount.nil?
123
172
  invalid_properties.push('invalid value for "amount", amount cannot be nil.')
124
173
  end
@@ -155,6 +204,22 @@ module VeloPayments
155
204
  invalid_properties.push('invalid value for "payor_payment_id", the character length must be great than or equal to 0.')
156
205
  end
157
206
 
207
+ if !@remote_system_id.nil? && @remote_system_id.to_s.length > 100
208
+ invalid_properties.push('invalid value for "remote_system_id", the character length must be smaller than or equal to 100.')
209
+ end
210
+
211
+ if !@remote_system_id.nil? && @remote_system_id.to_s.length < 1
212
+ invalid_properties.push('invalid value for "remote_system_id", the character length must be great than or equal to 1.')
213
+ end
214
+
215
+ if !@payment_metadata.nil? && @payment_metadata.to_s.length > 512
216
+ invalid_properties.push('invalid value for "payment_metadata", the character length must be smaller than or equal to 512.')
217
+ end
218
+
219
+ if !@payment_metadata.nil? && @payment_metadata.to_s.length < 0
220
+ invalid_properties.push('invalid value for "payment_metadata", the character length must be great than or equal to 0.')
221
+ end
222
+
158
223
  invalid_properties
159
224
  end
160
225
 
@@ -165,6 +230,9 @@ module VeloPayments
165
230
  return false if @remote_id.to_s.length > 100
166
231
  return false if @remote_id.to_s.length < 1
167
232
  return false if @currency.nil?
233
+ return false if @currency.to_s.length > 3
234
+ return false if @currency.to_s.length < 3
235
+ return false if @currency !~ Regexp.new(/^[A-Z]{3}$/)
168
236
  return false if @amount.nil?
169
237
  return false if @amount < 1
170
238
  return false if !@payment_memo.nil? && @payment_memo.to_s.length > 40
@@ -174,6 +242,10 @@ module VeloPayments
174
242
  return false if @source_account_name.to_s.length < 1
175
243
  return false if !@payor_payment_id.nil? && @payor_payment_id.to_s.length > 40
176
244
  return false if !@payor_payment_id.nil? && @payor_payment_id.to_s.length < 0
245
+ return false if !@remote_system_id.nil? && @remote_system_id.to_s.length > 100
246
+ return false if !@remote_system_id.nil? && @remote_system_id.to_s.length < 1
247
+ return false if !@payment_metadata.nil? && @payment_metadata.to_s.length > 512
248
+ return false if !@payment_metadata.nil? && @payment_metadata.to_s.length < 0
177
249
  true
178
250
  end
179
251
 
@@ -195,6 +267,29 @@ module VeloPayments
195
267
  @remote_id = remote_id
196
268
  end
197
269
 
270
+ # Custom attribute writer method with validation
271
+ # @param [Object] currency Value to be assigned
272
+ def currency=(currency)
273
+ if currency.nil?
274
+ fail ArgumentError, 'currency cannot be nil'
275
+ end
276
+
277
+ if currency.to_s.length > 3
278
+ fail ArgumentError, 'invalid value for "currency", the character length must be smaller than or equal to 3.'
279
+ end
280
+
281
+ if currency.to_s.length < 3
282
+ fail ArgumentError, 'invalid value for "currency", the character length must be great than or equal to 3.'
283
+ end
284
+
285
+ pattern = Regexp.new(/^[A-Z]{3}$/)
286
+ if currency !~ pattern
287
+ fail ArgumentError, "invalid value for \"currency\", must conform to the pattern #{pattern}."
288
+ end
289
+
290
+ @currency = currency
291
+ end
292
+
198
293
  # Custom attribute writer method with validation
199
294
  # @param [Object] amount Value to be assigned
200
295
  def amount=(amount)
@@ -255,6 +350,34 @@ module VeloPayments
255
350
  @payor_payment_id = payor_payment_id
256
351
  end
257
352
 
353
+ # Custom attribute writer method with validation
354
+ # @param [Object] remote_system_id Value to be assigned
355
+ def remote_system_id=(remote_system_id)
356
+ if !remote_system_id.nil? && remote_system_id.to_s.length > 100
357
+ fail ArgumentError, 'invalid value for "remote_system_id", the character length must be smaller than or equal to 100.'
358
+ end
359
+
360
+ if !remote_system_id.nil? && remote_system_id.to_s.length < 1
361
+ fail ArgumentError, 'invalid value for "remote_system_id", the character length must be great than or equal to 1.'
362
+ end
363
+
364
+ @remote_system_id = remote_system_id
365
+ end
366
+
367
+ # Custom attribute writer method with validation
368
+ # @param [Object] payment_metadata Value to be assigned
369
+ def payment_metadata=(payment_metadata)
370
+ if !payment_metadata.nil? && payment_metadata.to_s.length > 512
371
+ fail ArgumentError, 'invalid value for "payment_metadata", the character length must be smaller than or equal to 512.'
372
+ end
373
+
374
+ if !payment_metadata.nil? && payment_metadata.to_s.length < 0
375
+ fail ArgumentError, 'invalid value for "payment_metadata", the character length must be great than or equal to 0.'
376
+ end
377
+
378
+ @payment_metadata = payment_metadata
379
+ end
380
+
258
381
  # Checks equality by comparing each attribute.
259
382
  # @param [Object] Object to be compared
260
383
  def ==(o)
@@ -265,7 +388,10 @@ module VeloPayments
265
388
  amount == o.amount &&
266
389
  payment_memo == o.payment_memo &&
267
390
  source_account_name == o.source_account_name &&
268
- payor_payment_id == o.payor_payment_id
391
+ payor_payment_id == o.payor_payment_id &&
392
+ transmission_type == o.transmission_type &&
393
+ remote_system_id == o.remote_system_id &&
394
+ payment_metadata == o.payment_metadata
269
395
  end
270
396
 
271
397
  # @see the `==` method
@@ -277,7 +403,7 @@ module VeloPayments
277
403
  # Calculates hash code according to all attributes.
278
404
  # @return [Integer] Hash code
279
405
  def hash
280
- [remote_id, currency, amount, payment_memo, source_account_name, payor_payment_id].hash
406
+ [remote_id, currency, amount, payment_memo, source_account_name, payor_payment_id, transmission_type, remote_system_id, payment_metadata].hash
281
407
  end
282
408
 
283
409
  # Builds the object from hash
@@ -293,7 +419,9 @@ module VeloPayments
293
419
  def build_from_hash(attributes)
294
420
  return nil unless attributes.is_a?(Hash)
295
421
  self.class.openapi_types.each_pair do |key, type|
296
- if type =~ /\AArray<(.*)>/i
422
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
423
+ self.send("#{key}=", nil)
424
+ elsif type =~ /\AArray<(.*)>/i
297
425
  # check to ensure the input is an array given that the attribute
298
426
  # is documented as an array but the input is not
299
427
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -301,7 +429,7 @@ module VeloPayments
301
429
  end
302
430
  elsif !attributes[self.class.attribute_map[key]].nil?
303
431
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
304
- end # or else data not found in attributes(hash), not an issue as the data can be optional
432
+ end
305
433
  end
306
434
 
307
435
  self
@@ -313,8 +441,8 @@ module VeloPayments
313
441
  # @return [Object] Deserialized data
314
442
  def _deserialize(type, value)
315
443
  case type.to_sym
316
- when :DateTime
317
- DateTime.parse(value)
444
+ when :Time
445
+ Time.parse(value)
318
446
  when :Date
319
447
  Date.parse(value)
320
448
  when :String
@@ -344,7 +472,9 @@ module VeloPayments
344
472
  end
345
473
  end
346
474
  else # model
347
- VeloPayments.const_get(type).build_from_hash(value)
475
+ # models (e.g. Pet) or oneOf
476
+ klass = VeloPayments.const_get(type)
477
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
348
478
  end
349
479
  end
350
480
 
@@ -370,7 +500,7 @@ module VeloPayments
370
500
  is_nullable = self.class.openapi_nullable.include?(attr)
371
501
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
372
502
  end
373
-
503
+
374
504
  hash[param] = _to_hash(value)
375
505
  end
376
506
  hash
@@ -393,5 +523,7 @@ module VeloPayments
393
523
  value
394
524
  end
395
525
  end
526
+
396
527
  end
528
+
397
529
  end