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