velopayments 2.18.113 → 2.23.78.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 (764) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +7 -0
  3. data/Gemfile +1 -1
  4. data/Makefile +8 -12
  5. data/README.md +161 -74
  6. data/docs/{AcceptedPayment.md → AcceptedPaymentV3.md} +3 -3
  7. data/docs/AutoTopUpConfig2.md +23 -0
  8. data/docs/Challenge.md +2 -2
  9. data/docs/Challenge2.md +19 -0
  10. data/docs/Company.md +21 -0
  11. data/docs/Company2.md +21 -0
  12. data/docs/CompanyResponse.md +2 -2
  13. data/docs/CompanyV1.md +3 -3
  14. data/docs/CountriesApi.md +21 -31
  15. data/docs/CreateFundingAccountRequestV2.md +29 -0
  16. data/docs/CreateIndividual.md +2 -2
  17. data/docs/CreateIndividual2.md +3 -3
  18. data/docs/CreateIndividual2Name.md +23 -0
  19. data/docs/CreatePayee.md +4 -4
  20. data/docs/CreatePayee2.md +7 -7
  21. data/docs/CreatePayeesCSVRequest.md +22 -22
  22. data/docs/CreatePayeesCSVRequest2.md +23 -23
  23. data/docs/CreatePayeesCSVResponse.md +2 -2
  24. data/docs/CreatePayeesCSVResponse2.md +2 -2
  25. data/docs/CreatePayeesCSVResponseRejectedCsvRows.md +21 -0
  26. data/docs/CreatePayeesRequest.md +1 -1
  27. data/docs/CreatePayeesRequest2.md +1 -1
  28. data/docs/CreatePaymentChannel.md +6 -6
  29. data/docs/CreatePaymentChannel2.md +6 -6
  30. data/docs/{CreatePayoutRequest.md → CreatePayoutRequestV3.md} +6 -6
  31. data/docs/CreateWebhookRequest.md +23 -0
  32. data/docs/CurrenciesApi.md +7 -12
  33. data/docs/FailedSubmission.md +2 -2
  34. data/docs/FailedSubmission2.md +19 -0
  35. data/docs/FundingAccountResponse.md +15 -7
  36. data/docs/FundingAccountResponse2.md +35 -0
  37. data/docs/FundingAccountType.md +16 -0
  38. data/docs/FundingAudit.md +5 -5
  39. data/docs/FundingEvent.md +1 -1
  40. data/docs/FundingManagerApi.md +337 -36
  41. data/docs/{DefaultApi.md → FundingManagerPrivateApi.md} +9 -9
  42. data/docs/FundingPayorStatusAuditResponse.md +2 -2
  43. data/docs/FundingRequestV3.md +19 -0
  44. data/docs/FxSummaryV3.md +1 -1
  45. data/docs/FxSummaryV4.md +1 -1
  46. data/docs/GetFundingsResponse.md +2 -2
  47. data/docs/GetFundingsResponseLinks.md +19 -0
  48. data/docs/GetPayeeListResponse.md +49 -0
  49. data/docs/GetPayeeListResponseCompany.md +19 -0
  50. data/docs/GetPayeeListResponseIndividual.md +17 -0
  51. data/docs/GetPaymentsForPayoutResponseV3Summary.md +3 -3
  52. data/docs/GetPaymentsForPayoutResponseV4.md +1 -1
  53. data/docs/GetPaymentsForPayoutResponseV4Summary.md +6 -4
  54. data/docs/GetPayoutsResponseV4.md +1 -1
  55. data/docs/Individual.md +21 -0
  56. data/docs/Individual2.md +21 -0
  57. data/docs/IndividualV1.md +2 -2
  58. data/docs/IndividualV1Name.md +4 -4
  59. data/docs/InlineResponse400.md +19 -0
  60. data/docs/InlineResponse400Errors.md +23 -0
  61. data/docs/InlineResponse401.md +19 -0
  62. data/docs/InlineResponse401Errors.md +23 -0
  63. data/docs/InlineResponse403.md +19 -0
  64. data/docs/InlineResponse403Errors.md +23 -0
  65. data/docs/InlineResponse404.md +19 -0
  66. data/docs/InlineResponse404Errors.md +23 -0
  67. data/docs/InlineResponse409.md +19 -0
  68. data/docs/InlineResponse409Errors.md +23 -0
  69. data/docs/InlineResponse412.md +19 -0
  70. data/docs/InlineResponse412Errors.md +23 -0
  71. data/docs/InvitationStatus2.md +16 -0
  72. data/docs/InvitePayeeRequest.md +1 -1
  73. data/docs/InvitePayeeRequest2.md +17 -0
  74. data/docs/InviteUserRequest.md +2 -2
  75. data/docs/{TokenType.md → Language2.md} +2 -2
  76. data/docs/ListFundingAccountsResponse2.md +21 -0
  77. data/docs/{ListPaymentsResponse.md → ListPaymentsResponseV3.md} +3 -3
  78. data/docs/{ListPaymentsResponsePage.md → ListPaymentsResponseV3Page.md} +2 -2
  79. data/docs/ListPaymentsResponseV4.md +1 -1
  80. data/docs/ListSourceAccountResponseV2.md +1 -1
  81. data/docs/ListSourceAccountResponseV2Links.md +19 -0
  82. data/docs/ListSourceAccountResponseV3.md +21 -0
  83. data/docs/ListSourceAccountResponseV3Links.md +19 -0
  84. data/docs/{PaymentStatus.md → LocationType.md} +2 -2
  85. data/docs/LoginApi.md +6 -2
  86. data/docs/MarketingOptIn.md +2 -2
  87. data/docs/Name.md +23 -0
  88. data/docs/Notifications2.md +17 -0
  89. data/docs/{MFAStatus.md → OfacStatus2.md} +2 -2
  90. data/docs/OnboardedStatus2.md +16 -0
  91. data/docs/PagedPayeeInvitationStatusResponse.md +1 -1
  92. data/docs/PagedPayeeInvitationStatusResponse2.md +21 -0
  93. data/docs/{PagedResponsePage.md → PagedPayeeInvitationStatusResponsePage.md} +2 -2
  94. data/docs/PagedPayeeResponse2.md +1 -1
  95. data/docs/PagedPayeeResponse2Summary.md +5 -5
  96. data/docs/PagedPayeeResponsePage.md +5 -5
  97. data/docs/PagedPayeeResponseSummary.md +5 -5
  98. data/docs/PagedPaymentsResponseV3.md +21 -0
  99. data/docs/Payee.md +11 -11
  100. data/docs/{PayeeResponse2.md → Payee2.md} +22 -20
  101. data/docs/PayeeAddress2.md +31 -0
  102. data/docs/PayeeDelta.md +1 -1
  103. data/docs/PayeeDelta2.md +29 -0
  104. data/docs/PayeeDeltaResponse2.md +21 -0
  105. data/docs/PayeeDeltaResponse2Links.md +19 -0
  106. data/docs/PayeeDetailResponse.md +73 -0
  107. data/docs/PayeeDetailResponse2.md +73 -0
  108. data/docs/PayeeInvitationApi.md +405 -60
  109. data/docs/PayeeInvitationStatus.md +1 -1
  110. data/docs/PayeeInvitationStatusResponse.md +3 -3
  111. data/docs/PayeeInvitationStatusResponse2.md +21 -0
  112. data/docs/PayeePaymentChannel.md +8 -8
  113. data/docs/PayeePaymentChannel2.md +29 -0
  114. data/docs/PayeePayorRef.md +1 -1
  115. data/docs/PayeePayorRef2.md +6 -2
  116. data/docs/PayeePayorRefV2.md +25 -0
  117. data/docs/PayeePayorRefV3.md +25 -0
  118. data/docs/PayeeResponse.md +11 -11
  119. data/docs/PayeeResponseV2.md +73 -0
  120. data/docs/{OTPType.md → PayeeType2.md} +2 -2
  121. data/docs/PayeeUserSelfUpdateRequest.md +27 -0
  122. data/docs/PayeesApi.md +753 -59
  123. data/docs/PaymentAuditServiceApi.md +271 -39
  124. data/docs/PaymentChannelCountry.md +3 -3
  125. data/docs/PaymentChannelRule.md +11 -11
  126. data/docs/PaymentDelta.md +1 -1
  127. data/docs/PaymentDeltaResponse.md +1 -1
  128. data/docs/PaymentDeltaResponseV4.md +21 -0
  129. data/docs/PaymentDeltaV4.md +31 -0
  130. data/docs/PaymentEventResponseV3.md +1 -1
  131. data/docs/PaymentEventResponseV4.md +1 -1
  132. data/docs/{PaymentInstruction.md → PaymentInstructionV3.md} +7 -5
  133. data/docs/PaymentResponseV3.md +1 -1
  134. data/docs/PaymentResponseV4.md +7 -1
  135. data/docs/PaymentV3.md +37 -0
  136. data/docs/PayorV1.md +3 -1
  137. data/docs/PayorV2.md +5 -1
  138. data/docs/PayorsApi.md +14 -14
  139. data/docs/{CurrencyType.md → PayoutCompanyV3.md} +3 -3
  140. data/docs/{GenerateOTPRequest.md → PayoutIndividualV3.md} +3 -3
  141. data/docs/PayoutNameV3.md +19 -0
  142. data/docs/PayoutPayeeV3.md +21 -0
  143. data/docs/PayoutServiceApi.md +393 -0
  144. data/docs/PayoutSummaryAuditV4.md +4 -2
  145. data/docs/{PayoutSummaryResponse.md → PayoutSummaryResponseV3.md} +8 -6
  146. data/docs/PingResponse.md +19 -0
  147. data/docs/QueryBatchResponse2.md +23 -0
  148. data/docs/{QuoteFxSummary.md → QuoteFxSummaryV3.md} +6 -6
  149. data/docs/QuoteResponseV3.md +17 -0
  150. data/docs/{Region.md → RegionV2.md} +2 -2
  151. data/docs/{RejectedPayment.md → RejectedPaymentV3.md} +3 -3
  152. data/docs/ResendTokenRequest.md +1 -1
  153. data/docs/RoleUpdateRequest.md +19 -0
  154. data/docs/SourceAccountResponse.md +3 -1
  155. data/docs/SourceAccountResponseV2.md +4 -2
  156. data/docs/SourceAccountResponseV3.md +47 -0
  157. data/docs/SourceAccountType.md +16 -0
  158. data/docs/{SourceAccount.md → SourceAccountV3.md} +3 -3
  159. data/docs/{SupportedCountriesResponse2.md → SupportedCountriesResponseV2.md} +2 -2
  160. data/docs/SupportedCountry.md +2 -2
  161. data/docs/SupportedCountryV2.md +3 -3
  162. data/docs/SupportedCurrencyResponseV2.md +17 -0
  163. data/docs/SupportedCurrencyV2.md +19 -0
  164. data/docs/TokensApi.md +0 -498
  165. data/docs/TransferRequest2.md +21 -0
  166. data/docs/TransmissionType.md +16 -0
  167. data/docs/TransmissionTypes.md +21 -0
  168. data/docs/TransmissionTypes2.md +21 -0
  169. data/docs/UnregisterMFARequest.md +1 -1
  170. data/docs/UpdatePayeeDetailsRequest.md +29 -0
  171. data/docs/UpdatePayeeDetailsRequest2.md +29 -0
  172. data/docs/UpdateRemoteIdRequest.md +2 -2
  173. data/docs/UpdateWebhookRequest.md +21 -0
  174. data/docs/UserDetailsUpdateRequest.md +31 -0
  175. data/docs/UserResponse.md +1 -1
  176. data/docs/UsersApi.md +170 -60
  177. data/docs/WatchlistStatus2.md +16 -0
  178. data/docs/WebhookResponse.md +25 -0
  179. data/docs/WebhooksApi.md +280 -0
  180. data/docs/WebhooksResponse.md +21 -0
  181. data/docs/WithdrawPaymentRequest.md +17 -0
  182. data/lib/velopayments.rb +102 -42
  183. data/lib/velopayments/api/countries_api.rb +40 -37
  184. data/lib/velopayments/api/currencies_api.rb +13 -12
  185. data/lib/velopayments/api/funding_manager_api.rb +536 -78
  186. data/lib/velopayments/api/{default_api.rb → funding_manager_private_api.rb} +15 -14
  187. data/lib/velopayments/api/login_api.rb +21 -14
  188. data/lib/velopayments/api/payee_invitation_api.rb +531 -116
  189. data/lib/velopayments/api/payees_api.rb +945 -73
  190. data/lib/velopayments/api/payment_audit_service_api.rb +448 -82
  191. data/lib/velopayments/api/payors_api.rb +48 -40
  192. data/lib/velopayments/api/payors_private_api.rb +6 -5
  193. data/lib/velopayments/api/payout_service_api.rb +506 -0
  194. data/lib/velopayments/api/tokens_api.rb +6 -698
  195. data/lib/velopayments/api/users_api.rb +280 -118
  196. data/lib/velopayments/api/webhooks_api.rb +350 -0
  197. data/lib/velopayments/api_client.rb +47 -44
  198. data/lib/velopayments/api_error.rb +2 -2
  199. data/lib/velopayments/configuration.rb +35 -8
  200. data/lib/velopayments/models/{accepted_payment.rb → accepted_payment_v3.rb} +36 -10
  201. data/lib/velopayments/models/access_token_response.rb +21 -7
  202. data/lib/velopayments/models/access_token_validation_request.rb +21 -7
  203. data/lib/velopayments/models/auth_response.rb +21 -7
  204. data/lib/velopayments/models/auto_top_up_config.rb +23 -7
  205. data/lib/velopayments/models/auto_top_up_config2.rb +248 -0
  206. data/lib/velopayments/models/challenge.rb +21 -7
  207. data/lib/velopayments/models/challenge2.rb +285 -0
  208. data/lib/velopayments/models/company.rb +312 -0
  209. data/lib/velopayments/models/company2.rb +312 -0
  210. data/lib/velopayments/models/company_response.rb +22 -7
  211. data/lib/velopayments/models/company_v1.rb +28 -12
  212. data/lib/velopayments/models/create_funding_account_request_v2.rb +441 -0
  213. data/lib/velopayments/models/create_individual.rb +21 -7
  214. data/lib/velopayments/models/create_individual2.rb +22 -8
  215. data/lib/velopayments/models/create_individual2_name.rb +351 -0
  216. data/lib/velopayments/models/create_payee.rb +24 -8
  217. data/lib/velopayments/models/create_payee2.rb +27 -11
  218. data/lib/velopayments/models/create_payee_address.rb +26 -7
  219. data/lib/velopayments/models/create_payee_address2.rb +26 -7
  220. data/lib/velopayments/models/create_payees_csv_request.rb +21 -7
  221. data/lib/velopayments/models/create_payees_csv_request2.rb +35 -15
  222. data/lib/velopayments/models/create_payees_csv_response.rb +22 -8
  223. data/lib/velopayments/models/create_payees_csv_response2.rb +22 -8
  224. data/lib/velopayments/models/create_payees_csv_response_rejected_csv_rows.rb +228 -0
  225. data/lib/velopayments/models/create_payees_request.rb +21 -7
  226. data/lib/velopayments/models/create_payees_request2.rb +21 -7
  227. data/lib/velopayments/models/create_payment_channel.rb +21 -7
  228. data/lib/velopayments/models/create_payment_channel2.rb +21 -7
  229. data/lib/velopayments/models/create_payor_link_request.rb +21 -7
  230. data/lib/velopayments/models/{create_payout_request.rb → create_payout_request_v3.rb} +40 -11
  231. data/lib/velopayments/models/create_webhook_request.rb +315 -0
  232. data/lib/velopayments/models/error.rb +23 -9
  233. data/lib/velopayments/models/error_response.rb +23 -7
  234. data/lib/velopayments/models/failed_submission.rb +22 -8
  235. data/lib/velopayments/models/failed_submission2.rb +219 -0
  236. data/lib/velopayments/models/funding_account_response.rb +116 -11
  237. data/lib/velopayments/models/{create_funding_account_request.rb → funding_account_response2.rb} +117 -96
  238. data/lib/velopayments/models/{token_type.rb → funding_account_type.rb} +8 -9
  239. data/lib/velopayments/models/funding_audit.rb +34 -18
  240. data/lib/velopayments/models/funding_event.rb +22 -8
  241. data/lib/velopayments/models/funding_event_type.rb +3 -2
  242. data/lib/velopayments/models/funding_payor_status_audit_response.rb +58 -8
  243. data/lib/velopayments/models/funding_request_v1.rb +21 -7
  244. data/lib/velopayments/models/funding_request_v2.rb +21 -7
  245. data/lib/velopayments/models/funding_request_v3.rb +259 -0
  246. data/lib/velopayments/models/fx_summary_v3.rb +22 -8
  247. data/lib/velopayments/models/fx_summary_v4.rb +22 -8
  248. data/lib/velopayments/models/get_fundings_response.rb +22 -15
  249. data/lib/velopayments/models/{get_fundings_response_all_of.rb → get_fundings_response_links.rb} +40 -19
  250. data/lib/velopayments/models/{payee_response2.rb → get_payee_list_response.rb} +100 -112
  251. data/lib/velopayments/models/get_payee_list_response_company.rb +268 -0
  252. data/lib/velopayments/models/{user_response2_roles.rb → get_payee_list_response_individual.rb} +25 -11
  253. data/lib/velopayments/models/get_payments_for_payout_response_v3.rb +21 -7
  254. data/lib/velopayments/models/get_payments_for_payout_response_v3_page.rb +21 -7
  255. data/lib/velopayments/models/get_payments_for_payout_response_v3_summary.rb +24 -10
  256. data/lib/velopayments/models/get_payments_for_payout_response_v4.rb +22 -8
  257. data/lib/velopayments/models/get_payments_for_payout_response_v4_summary.rb +36 -12
  258. data/lib/velopayments/models/get_payout_statistics.rb +21 -7
  259. data/lib/velopayments/models/get_payouts_response_v3.rb +21 -7
  260. data/lib/velopayments/models/get_payouts_response_v3_links.rb +21 -7
  261. data/lib/velopayments/models/get_payouts_response_v3_page.rb +21 -7
  262. data/lib/velopayments/models/get_payouts_response_v4.rb +22 -8
  263. data/lib/velopayments/models/individual.rb +264 -0
  264. data/lib/velopayments/models/individual2.rb +264 -0
  265. data/lib/velopayments/models/individual_response.rb +21 -7
  266. data/lib/velopayments/models/individual_v1.rb +45 -7
  267. data/lib/velopayments/models/individual_v1_name.rb +21 -7
  268. data/lib/velopayments/models/inline_response400.rb +225 -0
  269. data/lib/velopayments/models/inline_response400_errors.rb +240 -0
  270. data/lib/velopayments/models/inline_response401.rb +225 -0
  271. data/lib/velopayments/models/inline_response401_errors.rb +240 -0
  272. data/lib/velopayments/models/inline_response403.rb +225 -0
  273. data/lib/velopayments/models/inline_response403_errors.rb +240 -0
  274. data/lib/velopayments/models/inline_response404.rb +225 -0
  275. data/lib/velopayments/models/inline_response404_errors.rb +240 -0
  276. data/lib/velopayments/models/inline_response409.rb +225 -0
  277. data/lib/velopayments/models/inline_response409_errors.rb +240 -0
  278. data/lib/velopayments/models/inline_response412.rb +225 -0
  279. data/lib/velopayments/models/inline_response412_errors.rb +240 -0
  280. data/lib/velopayments/models/invitation_status.rb +3 -2
  281. data/lib/velopayments/models/{payment_status.rb → invitation_status2.rb} +8 -12
  282. data/lib/velopayments/models/invitation_status_response.rb +21 -7
  283. data/lib/velopayments/models/invite_payee_request.rb +21 -7
  284. data/lib/velopayments/models/{register_mfa_response.rb → invite_payee_request2.rb} +36 -28
  285. data/lib/velopayments/models/invite_user_request.rb +34 -17
  286. data/lib/velopayments/models/kyc_state.rb +3 -2
  287. data/lib/velopayments/models/language.rb +3 -2
  288. data/lib/velopayments/models/language2.rb +46 -0
  289. data/lib/velopayments/models/link_for_response.rb +21 -7
  290. data/lib/velopayments/models/list_funding_accounts_response.rb +21 -7
  291. data/lib/velopayments/models/list_funding_accounts_response2.rb +233 -0
  292. data/lib/velopayments/models/{list_payments_response.rb → list_payments_response_v3.rb} +25 -11
  293. data/lib/velopayments/models/{list_payments_response_page.rb → list_payments_response_v3_page.rb} +24 -10
  294. data/lib/velopayments/models/list_payments_response_v4.rb +22 -8
  295. data/lib/velopayments/models/list_source_account_response.rb +21 -7
  296. data/lib/velopayments/models/list_source_account_response_links.rb +21 -7
  297. data/lib/velopayments/models/list_source_account_response_page.rb +21 -7
  298. data/lib/velopayments/models/list_source_account_response_v2.rb +22 -8
  299. data/lib/velopayments/models/list_source_account_response_v2_links.rb +219 -0
  300. data/lib/velopayments/models/list_source_account_response_v3.rb +233 -0
  301. data/lib/velopayments/models/list_source_account_response_v3_links.rb +219 -0
  302. data/lib/velopayments/models/location_type.rb +40 -0
  303. data/lib/velopayments/models/marketing_opt_in.rb +22 -8
  304. data/lib/velopayments/models/mfa_details.rb +22 -7
  305. data/lib/velopayments/models/mfa_type.rb +3 -2
  306. data/lib/velopayments/models/name.rb +333 -0
  307. data/lib/velopayments/models/notifications.rb +21 -7
  308. data/lib/velopayments/models/{paged_response.rb → notifications2.rb} +31 -28
  309. data/lib/velopayments/models/ofac_status.rb +3 -2
  310. data/lib/velopayments/models/{otp_type.rb → ofac_status2.rb} +9 -6
  311. data/lib/velopayments/models/onboarded_status.rb +3 -2
  312. data/lib/velopayments/models/onboarded_status2.rb +39 -0
  313. data/lib/velopayments/models/page_for_response.rb +21 -7
  314. data/lib/velopayments/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response.rb +21 -7
  315. data/lib/velopayments/models/paged_payee_invitation_status_response.rb +22 -8
  316. data/lib/velopayments/models/paged_payee_invitation_status_response2.rb +233 -0
  317. data/lib/velopayments/models/{paged_response_page.rb → paged_payee_invitation_status_response_page.rb} +24 -10
  318. data/lib/velopayments/models/paged_payee_response.rb +21 -7
  319. data/lib/velopayments/models/paged_payee_response2.rb +22 -8
  320. data/lib/velopayments/models/paged_payee_response2_summary.rb +21 -7
  321. data/lib/velopayments/models/paged_payee_response_links.rb +21 -7
  322. data/lib/velopayments/models/paged_payee_response_page.rb +21 -7
  323. data/lib/velopayments/models/paged_payee_response_summary.rb +21 -7
  324. data/lib/velopayments/models/paged_payments_response_v3.rb +233 -0
  325. data/lib/velopayments/models/paged_user_response.rb +21 -7
  326. data/lib/velopayments/models/paged_user_response_links.rb +21 -7
  327. data/lib/velopayments/models/paged_user_response_page.rb +21 -7
  328. data/lib/velopayments/models/password_request.rb +21 -7
  329. data/lib/velopayments/models/payee.rb +29 -9
  330. data/lib/velopayments/models/payee2.rb +460 -0
  331. data/lib/velopayments/models/payee_address.rb +26 -7
  332. data/lib/velopayments/models/payee_address2.rb +497 -0
  333. data/lib/velopayments/models/payee_delta.rb +22 -7
  334. data/lib/velopayments/models/payee_delta2.rb +303 -0
  335. data/lib/velopayments/models/payee_delta_response.rb +21 -7
  336. data/lib/velopayments/models/payee_delta_response2.rb +233 -0
  337. data/lib/velopayments/models/payee_delta_response2_links.rb +219 -0
  338. data/lib/velopayments/models/payee_delta_response_links.rb +21 -7
  339. data/lib/velopayments/models/payee_delta_response_page.rb +21 -7
  340. data/lib/velopayments/models/payee_detail_response.rb +475 -0
  341. data/lib/velopayments/models/payee_detail_response2.rb +475 -0
  342. data/lib/velopayments/models/payee_invitation_status.rb +21 -7
  343. data/lib/velopayments/models/payee_invitation_status_response.rb +56 -8
  344. data/lib/velopayments/models/payee_invitation_status_response2.rb +272 -0
  345. data/lib/velopayments/models/payee_payment_channel.rb +68 -43
  346. data/lib/velopayments/models/payee_payment_channel2.rb +455 -0
  347. data/lib/velopayments/models/payee_payor_ref.rb +21 -7
  348. data/lib/velopayments/models/payee_payor_ref2.rb +45 -11
  349. data/lib/velopayments/models/payee_payor_ref_v2.rb +282 -0
  350. data/lib/velopayments/models/payee_payor_ref_v3.rb +248 -0
  351. data/lib/velopayments/models/payee_response.rb +29 -9
  352. data/lib/velopayments/models/payee_response_v2.rb +475 -0
  353. data/lib/velopayments/models/payee_type.rb +3 -2
  354. data/lib/velopayments/models/{mfa_status.rb → payee_type2.rb} +8 -7
  355. data/lib/velopayments/models/payee_user_self_update_request.rb +365 -0
  356. data/lib/velopayments/models/payment_audit_currency_v3.rb +3 -2
  357. data/lib/velopayments/models/payment_audit_currency_v4.rb +3 -2
  358. data/lib/velopayments/models/payment_channel_country.rb +33 -7
  359. data/lib/velopayments/models/payment_channel_rule.rb +48 -7
  360. data/lib/velopayments/models/payment_channel_rules_response.rb +21 -7
  361. data/lib/velopayments/models/payment_delta.rb +28 -8
  362. data/lib/velopayments/models/payment_delta_response.rb +22 -8
  363. data/lib/velopayments/models/payment_delta_response_v4.rb +233 -0
  364. data/lib/velopayments/models/payment_delta_v4.rb +289 -0
  365. data/lib/velopayments/models/payment_event_response_v3.rb +22 -8
  366. data/lib/velopayments/models/payment_event_response_v4.rb +22 -8
  367. data/lib/velopayments/models/{payment_instruction.rb → payment_instruction_v3.rb} +73 -53
  368. data/lib/velopayments/models/payment_rails.rb +3 -2
  369. data/lib/velopayments/models/payment_response_v3.rb +22 -8
  370. data/lib/velopayments/models/payment_response_v4.rb +50 -9
  371. data/lib/velopayments/models/payment_response_v4_payout.rb +21 -7
  372. data/lib/velopayments/models/payment_v3.rb +363 -0
  373. data/lib/velopayments/models/payor_address.rb +26 -7
  374. data/lib/velopayments/models/payor_address_v2.rb +26 -7
  375. data/lib/velopayments/models/payor_aml_transaction_v3.rb +21 -7
  376. data/lib/velopayments/models/payor_aml_transaction_v4.rb +21 -7
  377. data/lib/velopayments/models/payor_branding_response.rb +24 -7
  378. data/lib/velopayments/models/payor_create_api_key_request.rb +22 -7
  379. data/lib/velopayments/models/payor_create_api_key_response.rb +21 -7
  380. data/lib/velopayments/models/payor_create_application_request.rb +22 -7
  381. data/lib/velopayments/models/payor_email_opt_out_request.rb +21 -7
  382. data/lib/velopayments/models/payor_links_response.rb +21 -7
  383. data/lib/velopayments/models/payor_links_response_links.rb +21 -7
  384. data/lib/velopayments/models/payor_links_response_payors.rb +21 -7
  385. data/lib/velopayments/models/payor_logo_request.rb +21 -7
  386. data/lib/velopayments/models/payor_v1.rb +34 -11
  387. data/lib/velopayments/models/payor_v2.rb +44 -11
  388. data/lib/velopayments/models/payout_company_v3.rb +215 -0
  389. data/lib/velopayments/models/{generate_otp_request.rb → payout_individual_v3.rb} +34 -20
  390. data/lib/velopayments/models/payout_name_v3.rb +229 -0
  391. data/lib/velopayments/models/{validate_otp_request.rb → payout_payee_v3.rb} +53 -49
  392. data/lib/velopayments/models/payout_payor_v4.rb +21 -7
  393. data/lib/velopayments/models/payout_principal_v4.rb +21 -7
  394. data/lib/velopayments/models/payout_status_v3.rb +3 -2
  395. data/lib/velopayments/models/payout_status_v4.rb +3 -2
  396. data/lib/velopayments/models/payout_summary_audit_v3.rb +21 -7
  397. data/lib/velopayments/models/payout_summary_audit_v4.rb +33 -10
  398. data/lib/velopayments/models/{payout_summary_response.rb → payout_summary_response_v3.rb} +43 -15
  399. data/lib/velopayments/models/payout_type_v4.rb +3 -2
  400. data/lib/velopayments/models/{supported_currency.rb → ping_response.rb} +37 -24
  401. data/lib/velopayments/models/query_batch_response.rb +21 -7
  402. data/lib/velopayments/models/query_batch_response2.rb +274 -0
  403. data/lib/velopayments/models/{quote_fx_summary.rb → quote_fx_summary_v3.rb} +50 -12
  404. data/lib/velopayments/models/{quote_response.rb → quote_response_v3.rb} +25 -11
  405. data/lib/velopayments/models/{region.rb → region_v2.rb} +24 -10
  406. data/lib/velopayments/models/register_sms_request.rb +24 -10
  407. data/lib/velopayments/models/{rejected_payment.rb → rejected_payment_v3.rb} +36 -10
  408. data/lib/velopayments/models/resend_token_request.rb +23 -8
  409. data/lib/velopayments/models/reset_password_request.rb +21 -7
  410. data/lib/velopayments/models/role.rb +21 -7
  411. data/lib/velopayments/models/{email_update_request.rb → role_update_request.rb} +39 -22
  412. data/lib/velopayments/models/self_mfa_type_unregister_request.rb +21 -7
  413. data/lib/velopayments/models/self_update_password_request.rb +21 -7
  414. data/lib/velopayments/models/set_notifications_request.rb +21 -7
  415. data/lib/velopayments/models/source_account_response.rb +36 -11
  416. data/lib/velopayments/models/source_account_response_v2.rb +39 -14
  417. data/lib/velopayments/models/source_account_response_v3.rb +437 -0
  418. data/lib/velopayments/models/source_account_summary_v3.rb +21 -7
  419. data/lib/velopayments/models/source_account_summary_v4.rb +21 -7
  420. data/lib/velopayments/models/source_account_type.rb +37 -0
  421. data/lib/velopayments/models/{source_account.rb → source_account_v3.rb} +64 -10
  422. data/lib/velopayments/models/supported_countries_response.rb +21 -7
  423. data/lib/velopayments/models/{supported_countries_response2.rb → supported_countries_response_v2.rb} +24 -10
  424. data/lib/velopayments/models/supported_country.rb +52 -36
  425. data/lib/velopayments/models/supported_country_v2.rb +56 -38
  426. data/lib/velopayments/models/{supported_currency_response.rb → supported_currency_response_v2.rb} +25 -11
  427. data/lib/velopayments/models/supported_currency_v2.rb +256 -0
  428. data/lib/velopayments/models/transfer_request.rb +21 -7
  429. data/lib/velopayments/models/transfer_request2.rb +301 -0
  430. data/lib/velopayments/models/transmission_type.rb +38 -0
  431. data/lib/velopayments/models/transmission_types.rb +246 -0
  432. data/lib/velopayments/models/{validate_mfa_request.rb → transmission_types2.rb} +61 -45
  433. data/lib/velopayments/models/unregister_mfa_request.rb +25 -10
  434. data/lib/velopayments/models/update_payee_details_request.rb +266 -0
  435. data/lib/velopayments/models/update_payee_details_request2.rb +266 -0
  436. data/lib/velopayments/models/update_remote_id_request.rb +21 -7
  437. data/lib/velopayments/models/update_webhook_request.rb +288 -0
  438. data/lib/velopayments/models/{user_response2.rb → user_details_update_request.rb} +97 -181
  439. data/lib/velopayments/models/user_info.rb +21 -7
  440. data/lib/velopayments/models/user_response.rb +32 -17
  441. data/lib/velopayments/models/user_status.rb +3 -2
  442. data/lib/velopayments/models/user_type.rb +3 -2
  443. data/lib/velopayments/models/user_type2.rb +3 -2
  444. data/lib/velopayments/models/validate_password_response.rb +21 -7
  445. data/lib/velopayments/models/watchlist_status.rb +3 -2
  446. data/lib/velopayments/models/watchlist_status2.rb +40 -0
  447. data/lib/velopayments/models/{currency_type.rb → webhook_response.rb} +66 -49
  448. data/lib/velopayments/models/webhooks_response.rb +233 -0
  449. data/lib/velopayments/models/withdraw_payment_request.rb +244 -0
  450. data/lib/velopayments/version.rb +3 -3
  451. data/oa3-config.json +1 -1
  452. data/spec/api/countries_api_spec.rb +13 -13
  453. data/spec/api/currencies_api_spec.rb +5 -5
  454. data/spec/api/funding_manager_api_spec.rb +97 -20
  455. data/spec/api/{default_api_spec.rb → funding_manager_private_api_spec.rb} +11 -11
  456. data/spec/api/login_api_spec.rb +3 -2
  457. data/spec/api/payee_invitation_api_spec.rb +113 -31
  458. data/spec/api/payees_api_spec.rb +186 -16
  459. data/spec/api/payment_audit_service_api_spec.rb +74 -20
  460. data/spec/api/payors_api_spec.rb +9 -9
  461. data/spec/api/payors_private_api_spec.rb +2 -2
  462. data/spec/api/payout_service_api_spec.rb +127 -0
  463. data/spec/api/tokens_api_spec.rb +2 -131
  464. data/spec/api/users_api_spec.rb +43 -17
  465. data/spec/api/webhooks_api_spec.rb +96 -0
  466. data/spec/api_client_spec.rb +3 -3
  467. data/spec/configuration_spec.rb +2 -2
  468. data/spec/models/{accepted_payment_spec.rb → accepted_payment_v3_spec.rb} +8 -8
  469. data/spec/models/access_token_response_spec.rb +2 -2
  470. data/spec/models/access_token_validation_request_spec.rb +2 -2
  471. data/spec/models/auth_response_spec.rb +2 -2
  472. data/spec/models/auto_top_up_config2_spec.rb +59 -0
  473. data/spec/models/auto_top_up_config_spec.rb +2 -2
  474. data/spec/models/{paged_response_spec.rb → challenge2_spec.rb} +10 -10
  475. data/spec/models/challenge_spec.rb +2 -2
  476. data/spec/models/company2_spec.rb +53 -0
  477. data/spec/models/company_response_spec.rb +2 -2
  478. data/spec/models/company_spec.rb +53 -0
  479. data/spec/models/company_v1_spec.rb +2 -2
  480. data/spec/models/create_funding_account_request_v2_spec.rb +81 -0
  481. data/spec/models/create_individual2_name_spec.rb +59 -0
  482. data/spec/models/create_individual2_spec.rb +2 -2
  483. data/spec/models/create_individual_spec.rb +2 -2
  484. data/spec/models/create_payee2_spec.rb +2 -2
  485. data/spec/models/create_payee_address2_spec.rb +2 -2
  486. data/spec/models/create_payee_address_spec.rb +2 -2
  487. data/spec/models/create_payee_spec.rb +2 -2
  488. data/spec/models/create_payees_csv_request2_spec.rb +2 -2
  489. data/spec/models/create_payees_csv_request_spec.rb +2 -2
  490. data/spec/models/create_payees_csv_response2_spec.rb +2 -2
  491. data/spec/models/create_payees_csv_response_rejected_csv_rows_spec.rb +53 -0
  492. data/spec/models/create_payees_csv_response_spec.rb +2 -2
  493. data/spec/models/create_payees_request2_spec.rb +2 -2
  494. data/spec/models/create_payees_request_spec.rb +2 -2
  495. data/spec/models/create_payment_channel2_spec.rb +2 -2
  496. data/spec/models/create_payment_channel_spec.rb +2 -2
  497. data/spec/models/create_payor_link_request_spec.rb +2 -2
  498. data/spec/models/{create_payout_request_spec.rb → create_payout_request_v3_spec.rb} +8 -8
  499. data/spec/models/{create_funding_account_request_spec.rb → create_webhook_request_spec.rb} +12 -12
  500. data/spec/models/error_response_spec.rb +2 -2
  501. data/spec/models/error_spec.rb +3 -3
  502. data/spec/models/failed_submission2_spec.rb +47 -0
  503. data/spec/models/failed_submission_spec.rb +2 -2
  504. data/spec/models/funding_account_response2_spec.rb +95 -0
  505. data/spec/models/funding_account_response_spec.rb +26 -2
  506. data/spec/models/funding_account_type_spec.rb +35 -0
  507. data/spec/models/funding_audit_spec.rb +8 -8
  508. data/spec/models/funding_event_spec.rb +2 -2
  509. data/spec/models/funding_event_type_spec.rb +2 -2
  510. data/spec/models/funding_payor_status_audit_response_spec.rb +2 -2
  511. data/spec/models/funding_request_v1_spec.rb +2 -2
  512. data/spec/models/funding_request_v2_spec.rb +2 -2
  513. data/spec/models/funding_request_v3_spec.rb +47 -0
  514. data/spec/models/fx_summary_v3_spec.rb +2 -2
  515. data/spec/models/fx_summary_v4_spec.rb +2 -2
  516. data/spec/models/{register_mfa_response_spec.rb → get_fundings_response_links_spec.rb} +10 -10
  517. data/spec/models/get_fundings_response_spec.rb +2 -2
  518. data/spec/models/get_payee_list_response_company_spec.rb +47 -0
  519. data/spec/models/{get_fundings_response_all_of_spec.rb → get_payee_list_response_individual_spec.rb} +9 -9
  520. data/spec/models/get_payee_list_response_spec.rb +137 -0
  521. data/spec/models/get_payments_for_payout_response_v3_page_spec.rb +2 -2
  522. data/spec/models/get_payments_for_payout_response_v3_spec.rb +2 -2
  523. data/spec/models/get_payments_for_payout_response_v3_summary_spec.rb +2 -2
  524. data/spec/models/get_payments_for_payout_response_v4_spec.rb +2 -2
  525. data/spec/models/get_payments_for_payout_response_v4_summary_spec.rb +8 -2
  526. data/spec/models/get_payout_statistics_spec.rb +2 -2
  527. data/spec/models/get_payouts_response_v3_links_spec.rb +2 -2
  528. data/spec/models/get_payouts_response_v3_page_spec.rb +2 -2
  529. data/spec/models/get_payouts_response_v3_spec.rb +2 -2
  530. data/spec/models/get_payouts_response_v4_spec.rb +2 -2
  531. data/spec/models/individual2_spec.rb +53 -0
  532. data/spec/models/individual_response_spec.rb +2 -2
  533. data/spec/models/individual_spec.rb +53 -0
  534. data/spec/models/individual_v1_name_spec.rb +2 -2
  535. data/spec/models/individual_v1_spec.rb +2 -2
  536. data/spec/models/inline_response400_errors_spec.rb +59 -0
  537. data/spec/models/inline_response400_spec.rb +47 -0
  538. data/spec/models/inline_response401_errors_spec.rb +59 -0
  539. data/spec/models/inline_response401_spec.rb +47 -0
  540. data/spec/models/inline_response403_errors_spec.rb +59 -0
  541. data/spec/models/inline_response403_spec.rb +47 -0
  542. data/spec/models/inline_response404_errors_spec.rb +59 -0
  543. data/spec/models/inline_response404_spec.rb +47 -0
  544. data/spec/models/inline_response409_errors_spec.rb +59 -0
  545. data/spec/models/inline_response409_spec.rb +47 -0
  546. data/spec/models/inline_response412_errors_spec.rb +59 -0
  547. data/spec/models/inline_response412_spec.rb +47 -0
  548. data/spec/models/invitation_status2_spec.rb +35 -0
  549. data/spec/models/invitation_status_response_spec.rb +2 -2
  550. data/spec/models/invitation_status_spec.rb +2 -2
  551. data/spec/models/{generate_otp_request_spec.rb → invite_payee_request2_spec.rb} +9 -9
  552. data/spec/models/invite_payee_request_spec.rb +2 -2
  553. data/spec/models/invite_user_request_spec.rb +2 -2
  554. data/spec/models/kyc_state_spec.rb +2 -2
  555. data/spec/models/{otp_type_spec.rb → language2_spec.rb} +8 -8
  556. data/spec/models/language_spec.rb +2 -2
  557. data/spec/models/link_for_response_spec.rb +2 -2
  558. data/spec/models/list_funding_accounts_response2_spec.rb +53 -0
  559. data/spec/models/list_funding_accounts_response_spec.rb +2 -2
  560. data/spec/models/{list_payments_response_page_spec.rb → list_payments_response_v3_page_spec.rb} +8 -8
  561. data/spec/models/{list_payments_response_spec.rb → list_payments_response_v3_spec.rb} +8 -8
  562. data/spec/models/list_payments_response_v4_spec.rb +2 -2
  563. data/spec/models/list_source_account_response_links_spec.rb +2 -2
  564. data/spec/models/list_source_account_response_page_spec.rb +2 -2
  565. data/spec/models/list_source_account_response_spec.rb +2 -2
  566. data/spec/models/list_source_account_response_v2_links_spec.rb +47 -0
  567. data/spec/models/list_source_account_response_v2_spec.rb +2 -2
  568. data/spec/models/list_source_account_response_v3_links_spec.rb +47 -0
  569. data/spec/models/list_source_account_response_v3_spec.rb +53 -0
  570. data/spec/models/{payment_status_spec.rb → location_type_spec.rb} +8 -8
  571. data/spec/models/marketing_opt_in_spec.rb +2 -2
  572. data/spec/models/mfa_details_spec.rb +2 -2
  573. data/spec/models/mfa_type_spec.rb +2 -2
  574. data/spec/models/name_spec.rb +59 -0
  575. data/spec/models/{currency_type_spec.rb → notifications2_spec.rb} +9 -9
  576. data/spec/models/notifications_spec.rb +2 -2
  577. data/spec/models/{mfa_status_spec.rb → ofac_status2_spec.rb} +8 -8
  578. data/spec/models/ofac_status_spec.rb +2 -2
  579. data/spec/models/onboarded_status2_spec.rb +35 -0
  580. data/spec/models/onboarded_status_spec.rb +2 -2
  581. data/spec/models/page_for_response_spec.rb +2 -2
  582. data/spec/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response_spec.rb +2 -2
  583. data/spec/models/paged_payee_invitation_status_response2_spec.rb +53 -0
  584. data/spec/models/{paged_response_page_spec.rb → paged_payee_invitation_status_response_page_spec.rb} +8 -8
  585. data/spec/models/paged_payee_invitation_status_response_spec.rb +2 -2
  586. data/spec/models/paged_payee_response2_spec.rb +2 -2
  587. data/spec/models/paged_payee_response2_summary_spec.rb +2 -2
  588. data/spec/models/paged_payee_response_links_spec.rb +2 -2
  589. data/spec/models/paged_payee_response_page_spec.rb +2 -2
  590. data/spec/models/paged_payee_response_spec.rb +2 -2
  591. data/spec/models/paged_payee_response_summary_spec.rb +2 -2
  592. data/spec/models/paged_payments_response_v3_spec.rb +53 -0
  593. data/spec/models/paged_user_response_links_spec.rb +2 -2
  594. data/spec/models/paged_user_response_page_spec.rb +2 -2
  595. data/spec/models/paged_user_response_spec.rb +2 -2
  596. data/spec/models/password_request_spec.rb +2 -2
  597. data/spec/models/{payee_response2_spec.rb → payee2_spec.rb} +20 -10
  598. data/spec/models/payee_address2_spec.rb +83 -0
  599. data/spec/models/payee_address_spec.rb +2 -2
  600. data/spec/models/payee_delta2_spec.rb +77 -0
  601. data/spec/models/payee_delta_response2_links_spec.rb +47 -0
  602. data/spec/models/payee_delta_response2_spec.rb +53 -0
  603. data/spec/models/payee_delta_response_links_spec.rb +2 -2
  604. data/spec/models/payee_delta_response_page_spec.rb +2 -2
  605. data/spec/models/payee_delta_response_spec.rb +2 -2
  606. data/spec/models/payee_delta_spec.rb +2 -2
  607. data/spec/models/payee_detail_response2_spec.rb +209 -0
  608. data/spec/models/payee_detail_response_spec.rb +209 -0
  609. data/spec/models/payee_invitation_status_response2_spec.rb +57 -0
  610. data/spec/models/payee_invitation_status_response_spec.rb +6 -2
  611. data/spec/models/payee_invitation_status_spec.rb +2 -2
  612. data/spec/models/payee_payment_channel2_spec.rb +81 -0
  613. data/spec/models/payee_payment_channel_spec.rb +3 -3
  614. data/spec/models/payee_payor_ref2_spec.rb +14 -2
  615. data/spec/models/payee_payor_ref_spec.rb +2 -2
  616. data/spec/models/payee_payor_ref_v2_spec.rb +69 -0
  617. data/spec/models/payee_payor_ref_v3_spec.rb +65 -0
  618. data/spec/models/payee_response_spec.rb +2 -2
  619. data/spec/models/payee_response_v2_spec.rb +209 -0
  620. data/spec/models/payee_spec.rb +2 -2
  621. data/spec/models/{token_type_spec.rb → payee_type2_spec.rb} +8 -8
  622. data/spec/models/payee_type_spec.rb +2 -2
  623. data/spec/models/payee_user_self_update_request_spec.rb +71 -0
  624. data/spec/models/payment_audit_currency_v3_spec.rb +2 -2
  625. data/spec/models/payment_audit_currency_v4_spec.rb +2 -2
  626. data/spec/models/payment_channel_country_spec.rb +2 -2
  627. data/spec/models/payment_channel_rule_spec.rb +2 -2
  628. data/spec/models/payment_channel_rules_response_spec.rb +2 -2
  629. data/spec/models/payment_delta_response_spec.rb +2 -2
  630. data/spec/models/payment_delta_response_v4_spec.rb +53 -0
  631. data/spec/models/payment_delta_spec.rb +2 -2
  632. data/spec/models/payment_delta_v4_spec.rb +83 -0
  633. data/spec/models/payment_event_response_v3_spec.rb +2 -2
  634. data/spec/models/payment_event_response_v4_spec.rb +2 -2
  635. data/spec/models/{payment_instruction_spec.rb → payment_instruction_v3_spec.rb} +14 -12
  636. data/spec/models/payment_rails_spec.rb +2 -2
  637. data/spec/models/payment_response_v3_spec.rb +2 -2
  638. data/spec/models/payment_response_v4_payout_spec.rb +2 -2
  639. data/spec/models/payment_response_v4_spec.rb +20 -2
  640. data/spec/models/payment_v3_spec.rb +105 -0
  641. data/spec/models/payor_address_spec.rb +2 -2
  642. data/spec/models/payor_address_v2_spec.rb +2 -2
  643. data/spec/models/payor_aml_transaction_v3_spec.rb +2 -2
  644. data/spec/models/payor_aml_transaction_v4_spec.rb +2 -2
  645. data/spec/models/payor_branding_response_spec.rb +2 -2
  646. data/spec/models/payor_create_api_key_request_spec.rb +2 -2
  647. data/spec/models/payor_create_api_key_response_spec.rb +2 -2
  648. data/spec/models/payor_create_application_request_spec.rb +2 -2
  649. data/spec/models/payor_email_opt_out_request_spec.rb +2 -2
  650. data/spec/models/payor_links_response_links_spec.rb +2 -2
  651. data/spec/models/payor_links_response_payors_spec.rb +2 -2
  652. data/spec/models/payor_links_response_spec.rb +2 -2
  653. data/spec/models/payor_logo_request_spec.rb +2 -2
  654. data/spec/models/payor_v1_spec.rb +8 -2
  655. data/spec/models/payor_v2_spec.rb +14 -2
  656. data/spec/models/{validate_mfa_request_spec.rb → payout_company_v3_spec.rb} +9 -9
  657. data/spec/models/{user_response2_roles_spec.rb → payout_individual_v3_spec.rb} +8 -8
  658. data/spec/models/payout_name_v3_spec.rb +47 -0
  659. data/spec/models/payout_payee_v3_spec.rb +53 -0
  660. data/spec/models/payout_payor_v4_spec.rb +2 -2
  661. data/spec/models/payout_principal_v4_spec.rb +2 -2
  662. data/spec/models/payout_status_v3_spec.rb +2 -2
  663. data/spec/models/payout_status_v4_spec.rb +2 -2
  664. data/spec/models/payout_summary_audit_v3_spec.rb +2 -2
  665. data/spec/models/payout_summary_audit_v4_spec.rb +8 -2
  666. data/spec/models/{payout_summary_response_spec.rb → payout_summary_response_v3_spec.rb} +14 -8
  667. data/spec/models/payout_type_v4_spec.rb +2 -2
  668. data/spec/models/ping_response_spec.rb +47 -0
  669. data/spec/models/query_batch_response2_spec.rb +63 -0
  670. data/spec/models/query_batch_response_spec.rb +2 -2
  671. data/spec/models/{quote_fx_summary_spec.rb → quote_fx_summary_v3_spec.rb} +8 -8
  672. data/spec/models/{quote_response_spec.rb → quote_response_v3_spec.rb} +8 -8
  673. data/spec/models/{region_spec.rb → region_v2_spec.rb} +8 -8
  674. data/spec/models/register_sms_request_spec.rb +2 -2
  675. data/spec/models/{rejected_payment_spec.rb → rejected_payment_v3_spec.rb} +8 -8
  676. data/spec/models/resend_token_request_spec.rb +2 -2
  677. data/spec/models/reset_password_request_spec.rb +2 -2
  678. data/spec/models/role_spec.rb +2 -2
  679. data/spec/models/{email_update_request_spec.rb → role_update_request_spec.rb} +9 -9
  680. data/spec/models/self_mfa_type_unregister_request_spec.rb +2 -2
  681. data/spec/models/self_update_password_request_spec.rb +2 -2
  682. data/spec/models/set_notifications_request_spec.rb +2 -2
  683. data/spec/models/source_account_response_spec.rb +8 -2
  684. data/spec/models/source_account_response_v2_spec.rb +8 -2
  685. data/spec/models/{user_response2_spec.rb → source_account_response_v3_spec.rb} +30 -32
  686. data/spec/models/source_account_summary_v3_spec.rb +2 -2
  687. data/spec/models/source_account_summary_v4_spec.rb +2 -2
  688. data/spec/models/source_account_type_spec.rb +35 -0
  689. data/spec/models/{source_account_spec.rb → source_account_v3_spec.rb} +8 -8
  690. data/spec/models/supported_countries_response_spec.rb +2 -2
  691. data/spec/models/{supported_countries_response2_spec.rb → supported_countries_response_v2_spec.rb} +8 -8
  692. data/spec/models/supported_country_spec.rb +2 -10
  693. data/spec/models/supported_country_v2_spec.rb +2 -10
  694. data/spec/models/{supported_currency_response_spec.rb → supported_currency_response_v2_spec.rb} +8 -8
  695. data/spec/models/{supported_currency_spec.rb → supported_currency_v2_spec.rb} +8 -8
  696. data/spec/models/transfer_request2_spec.rb +53 -0
  697. data/spec/models/transfer_request_spec.rb +2 -2
  698. data/spec/models/transmission_type_spec.rb +35 -0
  699. data/spec/models/transmission_types2_spec.rb +53 -0
  700. data/spec/models/transmission_types_spec.rb +53 -0
  701. data/spec/models/unregister_mfa_request_spec.rb +3 -3
  702. data/spec/models/update_payee_details_request2_spec.rb +77 -0
  703. data/spec/models/update_payee_details_request_spec.rb +77 -0
  704. data/spec/models/update_remote_id_request_spec.rb +2 -2
  705. data/spec/models/update_webhook_request_spec.rb +53 -0
  706. data/spec/models/user_details_update_request_spec.rb +83 -0
  707. data/spec/models/user_info_spec.rb +2 -2
  708. data/spec/models/user_response_spec.rb +2 -2
  709. data/spec/models/user_status_spec.rb +2 -2
  710. data/spec/models/user_type2_spec.rb +2 -2
  711. data/spec/models/user_type_spec.rb +2 -2
  712. data/spec/models/validate_password_response_spec.rb +2 -2
  713. data/spec/models/watchlist_status2_spec.rb +35 -0
  714. data/spec/models/watchlist_status_spec.rb +2 -2
  715. data/spec/models/{check_token_response_spec.rb → webhook_response_spec.rb} +13 -13
  716. data/spec/models/webhooks_response_spec.rb +53 -0
  717. data/spec/models/{register_mfa_request_spec.rb → withdraw_payment_request_spec.rb} +9 -9
  718. data/spec/spec_helper.rb +2 -2
  719. data/specs/api/countries_api_spec.rb +103 -0
  720. data/{spec/api/get_payout_api_spec.rb → specs/api/currencies_api_spec.rb} +16 -15
  721. data/specs/api/funding_manager_api_spec.rb +372 -0
  722. data/{spec/api/withdraw_payout_api_spec.rb → specs/api/funding_manager_private_api_spec.rb} +14 -14
  723. data/specs/api/login_api_spec.rb +82 -0
  724. data/specs/api/payee_invitation_api_spec.rb +203 -0
  725. data/specs/api/payees_api_spec.rb +285 -0
  726. data/specs/api/payment_audit_service_api_spec.rb +468 -0
  727. data/specs/api/payors_api_spec.rb +171 -0
  728. data/{spec/api/instruct_payout_api_spec.rb → specs/api/payors_private_api_spec.rb} +14 -14
  729. data/specs/api/payout_service_api_spec.rb +127 -0
  730. data/{spec/api/quote_payout_api_spec.rb → specs/api/tokens_api_spec.rb} +16 -15
  731. data/specs/api/users_api_spec.rb +284 -0
  732. data/velopayments.gemspec +3 -4
  733. metadata +556 -322
  734. data/docs/CheckTokenResponse.md +0 -25
  735. data/docs/CreateFundingAccountRequest.md +0 -23
  736. data/docs/EmailUpdateRequest.md +0 -19
  737. data/docs/GetFundingsResponseAllOf.md +0 -17
  738. data/docs/GetPayoutApi.md +0 -61
  739. data/docs/InstructPayoutApi.md +0 -60
  740. data/docs/PagedResponse.md +0 -19
  741. data/docs/PayoutHistoryApi.md +0 -221
  742. data/docs/QuotePayoutApi.md +0 -61
  743. data/docs/QuoteResponse.md +0 -17
  744. data/docs/RegisterMFARequest.md +0 -17
  745. data/docs/RegisterMFAResponse.md +0 -19
  746. data/docs/SubmitPayoutApi.md +0 -60
  747. data/docs/SupportedCurrency.md +0 -19
  748. data/docs/SupportedCurrencyResponse.md +0 -17
  749. data/docs/UserResponse2.md +0 -45
  750. data/docs/UserResponse2Roles.md +0 -17
  751. data/docs/ValidateMFARequest.md +0 -17
  752. data/docs/ValidateOTPRequest.md +0 -17
  753. data/docs/WithdrawPayoutApi.md +0 -60
  754. data/lib/velopayments/api/get_payout_api.rb +0 -84
  755. data/lib/velopayments/api/instruct_payout_api.rb +0 -82
  756. data/lib/velopayments/api/payout_history_api.rb +0 -285
  757. data/lib/velopayments/api/quote_payout_api.rb +0 -84
  758. data/lib/velopayments/api/submit_payout_api.rb +0 -84
  759. data/lib/velopayments/api/withdraw_payout_api.rb +0 -82
  760. data/lib/velopayments/models/check_token_response.rb +0 -234
  761. data/lib/velopayments/models/register_mfa_request.rb +0 -201
  762. data/spec/api/payout_history_api_spec.rb +0 -95
  763. data/spec/api/submit_payout_api_spec.rb +0 -47
  764. data/spec/models/validate_otp_request_spec.rb +0 -41
@@ -3,19 +3,21 @@
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.18.113
6
+ The version of the OpenAPI document: 2.23.78
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 5.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 RejectedPayment
17
+ class RejectedPaymentV3
17
18
  attr_accessor :remote_id
18
19
 
20
+ # Valid ISO 4217 3 letter currency code. See the <a href=\"https://www.iso.org/iso-4217-currency-codes.html\" target=\"_blank\" a>ISO specification</a> for details.
19
21
  attr_accessor :currency_type
20
22
 
21
23
  attr_accessor :amount
@@ -62,17 +64,23 @@ module VeloPayments
62
64
  }
63
65
  end
64
66
 
67
+ # List of attributes with nullable: true
68
+ def self.openapi_nullable
69
+ Set.new([
70
+ ])
71
+ end
72
+
65
73
  # Initializes the object
66
74
  # @param [Hash] attributes Model attributes in the form of hash
67
75
  def initialize(attributes = {})
68
76
  if (!attributes.is_a?(Hash))
69
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::RejectedPayment` initialize method"
77
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::RejectedPaymentV3` initialize method"
70
78
  end
71
79
 
72
80
  # check to see if the attribute exists and convert string to symbol for hash key
73
81
  attributes = attributes.each_with_object({}) { |(k, v), h|
74
82
  if (!self.class.attribute_map.key?(k.to_sym))
75
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::RejectedPayment`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
83
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::RejectedPaymentV3`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
76
84
  end
77
85
  h[k.to_sym] = v
78
86
  }
@@ -134,6 +142,11 @@ module VeloPayments
134
142
  invalid_properties.push('invalid value for "currency_type", the character length must be great than or equal to 3.')
135
143
  end
136
144
 
145
+ pattern = Regexp.new(/^[A-Z]{3}$/)
146
+ if @currency_type !~ pattern
147
+ invalid_properties.push("invalid value for \"currency_type\", must conform to the pattern #{pattern}.")
148
+ end
149
+
137
150
  if @amount.nil?
138
151
  invalid_properties.push('invalid value for "amount", amount cannot be nil.')
139
152
  end
@@ -160,6 +173,7 @@ module VeloPayments
160
173
  return false if @currency_type.nil?
161
174
  return false if @currency_type.to_s.length > 3
162
175
  return false if @currency_type.to_s.length < 3
176
+ return false if @currency_type !~ Regexp.new(/^[A-Z]{3}$/)
163
177
  return false if @amount.nil?
164
178
  return false if @source_account_name.nil?
165
179
  return false if @payor_payment_id.nil?
@@ -182,6 +196,11 @@ module VeloPayments
182
196
  fail ArgumentError, 'invalid value for "currency_type", the character length must be great than or equal to 3.'
183
197
  end
184
198
 
199
+ pattern = Regexp.new(/^[A-Z]{3}$/)
200
+ if currency_type !~ pattern
201
+ fail ArgumentError, "invalid value for \"currency_type\", must conform to the pattern #{pattern}."
202
+ end
203
+
185
204
  @currency_type = currency_type
186
205
  end
187
206
 
@@ -226,7 +245,9 @@ module VeloPayments
226
245
  def build_from_hash(attributes)
227
246
  return nil unless attributes.is_a?(Hash)
228
247
  self.class.openapi_types.each_pair do |key, type|
229
- if type =~ /\AArray<(.*)>/i
248
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
249
+ self.send("#{key}=", nil)
250
+ elsif type =~ /\AArray<(.*)>/i
230
251
  # check to ensure the input is an array given that the attribute
231
252
  # is documented as an array but the input is not
232
253
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -234,7 +255,7 @@ module VeloPayments
234
255
  end
235
256
  elsif !attributes[self.class.attribute_map[key]].nil?
236
257
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
237
- end # or else data not found in attributes(hash), not an issue as the data can be optional
258
+ end
238
259
  end
239
260
 
240
261
  self
@@ -246,8 +267,8 @@ module VeloPayments
246
267
  # @return [Object] Deserialized data
247
268
  def _deserialize(type, value)
248
269
  case type.to_sym
249
- when :DateTime
250
- DateTime.parse(value)
270
+ when :Time
271
+ Time.parse(value)
251
272
  when :Date
252
273
  Date.parse(value)
253
274
  when :String
@@ -299,7 +320,11 @@ module VeloPayments
299
320
  hash = {}
300
321
  self.class.attribute_map.each_pair do |attr, param|
301
322
  value = self.send(attr)
302
- next if value.nil?
323
+ if value.nil?
324
+ is_nullable = self.class.openapi_nullable.include?(attr)
325
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
326
+ end
327
+
303
328
  hash[param] = _to_hash(value)
304
329
  end
305
330
  hash
@@ -322,5 +347,6 @@ module VeloPayments
322
347
  value
323
348
  end
324
349
  end
350
+
325
351
  end
326
352
  end
@@ -3,21 +3,22 @@
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.18.113
6
+ The version of the OpenAPI document: 2.23.78
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 5.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 ResendTokenRequest
17
18
  # The type of the token to resend
18
19
  attr_accessor :token_type
19
20
 
20
- # Optional property that MUST be suppied when manually verifying a user <P> The user's smsNumber is registered via a separate endpoint and an OTP sent to them
21
+ # <p>Optional property that MUST be suppied when manually verifying a user</p> <p>The user's smsNumber is registered via a separate endpoint and an OTP sent to them</p>
21
22
  attr_accessor :verification_code
22
23
 
23
24
  class EnumAttributeValidator
@@ -58,6 +59,13 @@ module VeloPayments
58
59
  }
59
60
  end
60
61
 
62
+ # List of attributes with nullable: true
63
+ def self.openapi_nullable
64
+ Set.new([
65
+ :'verification_code'
66
+ ])
67
+ end
68
+
61
69
  # Initializes the object
62
70
  # @param [Hash] attributes Model attributes in the form of hash
63
71
  def initialize(attributes = {})
@@ -170,7 +178,9 @@ module VeloPayments
170
178
  def build_from_hash(attributes)
171
179
  return nil unless attributes.is_a?(Hash)
172
180
  self.class.openapi_types.each_pair do |key, type|
173
- if type =~ /\AArray<(.*)>/i
181
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
182
+ self.send("#{key}=", nil)
183
+ elsif type =~ /\AArray<(.*)>/i
174
184
  # check to ensure the input is an array given that the attribute
175
185
  # is documented as an array but the input is not
176
186
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -178,7 +188,7 @@ module VeloPayments
178
188
  end
179
189
  elsif !attributes[self.class.attribute_map[key]].nil?
180
190
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
181
- end # or else data not found in attributes(hash), not an issue as the data can be optional
191
+ end
182
192
  end
183
193
 
184
194
  self
@@ -190,8 +200,8 @@ module VeloPayments
190
200
  # @return [Object] Deserialized data
191
201
  def _deserialize(type, value)
192
202
  case type.to_sym
193
- when :DateTime
194
- DateTime.parse(value)
203
+ when :Time
204
+ Time.parse(value)
195
205
  when :Date
196
206
  Date.parse(value)
197
207
  when :String
@@ -243,7 +253,11 @@ module VeloPayments
243
253
  hash = {}
244
254
  self.class.attribute_map.each_pair do |attr, param|
245
255
  value = self.send(attr)
246
- next if value.nil?
256
+ if value.nil?
257
+ is_nullable = self.class.openapi_nullable.include?(attr)
258
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
259
+ end
260
+
247
261
  hash[param] = _to_hash(value)
248
262
  end
249
263
  hash
@@ -266,5 +280,6 @@ module VeloPayments
266
280
  value
267
281
  end
268
282
  end
283
+
269
284
  end
270
285
  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.18.113
6
+ The version of the OpenAPI document: 2.23.78
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 5.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 ResetPasswordRequest
@@ -31,6 +32,12 @@ module VeloPayments
31
32
  }
32
33
  end
33
34
 
35
+ # List of attributes with nullable: true
36
+ def self.openapi_nullable
37
+ Set.new([
38
+ ])
39
+ end
40
+
34
41
  # Initializes the object
35
42
  # @param [Hash] attributes Model attributes in the form of hash
36
43
  def initialize(attributes = {})
@@ -102,7 +109,9 @@ module VeloPayments
102
109
  def build_from_hash(attributes)
103
110
  return nil unless attributes.is_a?(Hash)
104
111
  self.class.openapi_types.each_pair do |key, type|
105
- if type =~ /\AArray<(.*)>/i
112
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
113
+ self.send("#{key}=", nil)
114
+ elsif type =~ /\AArray<(.*)>/i
106
115
  # check to ensure the input is an array given that the attribute
107
116
  # is documented as an array but the input is not
108
117
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -110,7 +119,7 @@ module VeloPayments
110
119
  end
111
120
  elsif !attributes[self.class.attribute_map[key]].nil?
112
121
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
113
- end # or else data not found in attributes(hash), not an issue as the data can be optional
122
+ end
114
123
  end
115
124
 
116
125
  self
@@ -122,8 +131,8 @@ module VeloPayments
122
131
  # @return [Object] Deserialized data
123
132
  def _deserialize(type, value)
124
133
  case type.to_sym
125
- when :DateTime
126
- DateTime.parse(value)
134
+ when :Time
135
+ Time.parse(value)
127
136
  when :Date
128
137
  Date.parse(value)
129
138
  when :String
@@ -175,7 +184,11 @@ module VeloPayments
175
184
  hash = {}
176
185
  self.class.attribute_map.each_pair do |attr, param|
177
186
  value = self.send(attr)
178
- next if value.nil?
187
+ if value.nil?
188
+ is_nullable = self.class.openapi_nullable.include?(attr)
189
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
190
+ end
191
+
179
192
  hash[param] = _to_hash(value)
180
193
  end
181
194
  hash
@@ -198,5 +211,6 @@ module VeloPayments
198
211
  value
199
212
  end
200
213
  end
214
+
201
215
  end
202
216
  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.18.113
6
+ The version of the OpenAPI document: 2.23.78
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 5.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 Role
@@ -31,6 +32,12 @@ module VeloPayments
31
32
  }
32
33
  end
33
34
 
35
+ # List of attributes with nullable: true
36
+ def self.openapi_nullable
37
+ Set.new([
38
+ ])
39
+ end
40
+
34
41
  # Initializes the object
35
42
  # @param [Hash] attributes Model attributes in the form of hash
36
43
  def initialize(attributes = {})
@@ -102,7 +109,9 @@ module VeloPayments
102
109
  def build_from_hash(attributes)
103
110
  return nil unless attributes.is_a?(Hash)
104
111
  self.class.openapi_types.each_pair do |key, type|
105
- if type =~ /\AArray<(.*)>/i
112
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
113
+ self.send("#{key}=", nil)
114
+ elsif type =~ /\AArray<(.*)>/i
106
115
  # check to ensure the input is an array given that the attribute
107
116
  # is documented as an array but the input is not
108
117
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -110,7 +119,7 @@ module VeloPayments
110
119
  end
111
120
  elsif !attributes[self.class.attribute_map[key]].nil?
112
121
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
113
- end # or else data not found in attributes(hash), not an issue as the data can be optional
122
+ end
114
123
  end
115
124
 
116
125
  self
@@ -122,8 +131,8 @@ module VeloPayments
122
131
  # @return [Object] Deserialized data
123
132
  def _deserialize(type, value)
124
133
  case type.to_sym
125
- when :DateTime
126
- DateTime.parse(value)
134
+ when :Time
135
+ Time.parse(value)
127
136
  when :Date
128
137
  Date.parse(value)
129
138
  when :String
@@ -175,7 +184,11 @@ module VeloPayments
175
184
  hash = {}
176
185
  self.class.attribute_map.each_pair do |attr, param|
177
186
  value = self.send(attr)
178
- next if value.nil?
187
+ if value.nil?
188
+ is_nullable = self.class.openapi_nullable.include?(attr)
189
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
190
+ end
191
+
179
192
  hash[param] = _to_hash(value)
180
193
  end
181
194
  hash
@@ -198,5 +211,6 @@ module VeloPayments
198
211
  value
199
212
  end
200
213
  end
214
+
201
215
  end
202
216
  end
@@ -3,27 +3,28 @@
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.18.113
6
+ The version of the OpenAPI document: 2.23.78
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 5.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 EmailUpdateRequest
17
- # the email address of the invited user
18
- attr_accessor :email
17
+ class RoleUpdateRequest
18
+ # <p>The role(s) for the user</p> <p>The role must exist</p> <p>The role can be a custom role or a system role but the invoker must have the permissions to assign the role</p> <p>System roles are: backoffice.admin, payor.master_admin, payor.admin, payor.support</p>
19
+ attr_accessor :roles
19
20
 
20
- # Optional property that MUST be suppied when manually verifying a user The user's smsNumber is registered via a separate endpoint and an OTP sent to them
21
+ # <p>Optional property that MUST be suppied when manually verifying a user</p> <p>The user's smsNumber is registered via a separate endpoint and an OTP sent to them</p>
21
22
  attr_accessor :verification_code
22
23
 
23
24
  # Attribute mapping from ruby-style variable name to JSON key.
24
25
  def self.attribute_map
25
26
  {
26
- :'email' => :'email',
27
+ :'roles' => :'roles',
27
28
  :'verification_code' => :'verificationCode'
28
29
  }
29
30
  end
@@ -31,28 +32,37 @@ module VeloPayments
31
32
  # Attribute type mapping.
32
33
  def self.openapi_types
33
34
  {
34
- :'email' => :'String',
35
+ :'roles' => :'Array<String>',
35
36
  :'verification_code' => :'String'
36
37
  }
37
38
  end
38
39
 
40
+ # List of attributes with nullable: true
41
+ def self.openapi_nullable
42
+ Set.new([
43
+ :'verification_code'
44
+ ])
45
+ end
46
+
39
47
  # Initializes the object
40
48
  # @param [Hash] attributes Model attributes in the form of hash
41
49
  def initialize(attributes = {})
42
50
  if (!attributes.is_a?(Hash))
43
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::EmailUpdateRequest` initialize method"
51
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeloPayments::RoleUpdateRequest` initialize method"
44
52
  end
45
53
 
46
54
  # check to see if the attribute exists and convert string to symbol for hash key
47
55
  attributes = attributes.each_with_object({}) { |(k, v), h|
48
56
  if (!self.class.attribute_map.key?(k.to_sym))
49
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::EmailUpdateRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
57
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeloPayments::RoleUpdateRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
50
58
  end
51
59
  h[k.to_sym] = v
52
60
  }
53
61
 
54
- if attributes.key?(:'email')
55
- self.email = attributes[:'email']
62
+ if attributes.key?(:'roles')
63
+ if (value = attributes[:'roles']).is_a?(Array)
64
+ self.roles = value
65
+ end
56
66
  end
57
67
 
58
68
  if attributes.key?(:'verification_code')
@@ -64,8 +74,8 @@ module VeloPayments
64
74
  # @return Array for valid properties with the reasons
65
75
  def list_invalid_properties
66
76
  invalid_properties = Array.new
67
- if @email.nil?
68
- invalid_properties.push('invalid value for "email", email cannot be nil.')
77
+ if @roles.nil?
78
+ invalid_properties.push('invalid value for "roles", roles cannot be nil.')
69
79
  end
70
80
 
71
81
  if !@verification_code.nil? && @verification_code.to_s.length > 6
@@ -82,7 +92,7 @@ module VeloPayments
82
92
  # Check to see if the all the properties in the model are valid
83
93
  # @return true if the model is valid
84
94
  def valid?
85
- return false if @email.nil?
95
+ return false if @roles.nil?
86
96
  return false if !@verification_code.nil? && @verification_code.to_s.length > 6
87
97
  return false if !@verification_code.nil? && @verification_code.to_s.length < 6
88
98
  true
@@ -107,7 +117,7 @@ module VeloPayments
107
117
  def ==(o)
108
118
  return true if self.equal?(o)
109
119
  self.class == o.class &&
110
- email == o.email &&
120
+ roles == o.roles &&
111
121
  verification_code == o.verification_code
112
122
  end
113
123
 
@@ -120,7 +130,7 @@ module VeloPayments
120
130
  # Calculates hash code according to all attributes.
121
131
  # @return [Integer] Hash code
122
132
  def hash
123
- [email, verification_code].hash
133
+ [roles, verification_code].hash
124
134
  end
125
135
 
126
136
  # Builds the object from hash
@@ -136,7 +146,9 @@ module VeloPayments
136
146
  def build_from_hash(attributes)
137
147
  return nil unless attributes.is_a?(Hash)
138
148
  self.class.openapi_types.each_pair do |key, type|
139
- if type =~ /\AArray<(.*)>/i
149
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
150
+ self.send("#{key}=", nil)
151
+ elsif type =~ /\AArray<(.*)>/i
140
152
  # check to ensure the input is an array given that the attribute
141
153
  # is documented as an array but the input is not
142
154
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -144,7 +156,7 @@ module VeloPayments
144
156
  end
145
157
  elsif !attributes[self.class.attribute_map[key]].nil?
146
158
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
147
- end # or else data not found in attributes(hash), not an issue as the data can be optional
159
+ end
148
160
  end
149
161
 
150
162
  self
@@ -156,8 +168,8 @@ module VeloPayments
156
168
  # @return [Object] Deserialized data
157
169
  def _deserialize(type, value)
158
170
  case type.to_sym
159
- when :DateTime
160
- DateTime.parse(value)
171
+ when :Time
172
+ Time.parse(value)
161
173
  when :Date
162
174
  Date.parse(value)
163
175
  when :String
@@ -209,7 +221,11 @@ module VeloPayments
209
221
  hash = {}
210
222
  self.class.attribute_map.each_pair do |attr, param|
211
223
  value = self.send(attr)
212
- next if value.nil?
224
+ if value.nil?
225
+ is_nullable = self.class.openapi_nullable.include?(attr)
226
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
227
+ end
228
+
213
229
  hash[param] = _to_hash(value)
214
230
  end
215
231
  hash
@@ -232,5 +248,6 @@ module VeloPayments
232
248
  value
233
249
  end
234
250
  end
251
+
235
252
  end
236
253
  end