velopayments 2.17.8 → 2.18.31.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 (513) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +11 -6
  3. data/README.md +123 -35
  4. data/docs/AcceptedPayment.md +27 -0
  5. data/docs/AccessTokenResponse.md +29 -0
  6. data/docs/AccessTokenValidationRequest.md +17 -0
  7. data/docs/CheckTokenResponse.md +25 -0
  8. data/docs/CountriesApi.md +51 -2
  9. data/docs/CreateFundingAccountRequest.md +23 -0
  10. data/docs/CreatePayorLinkRequest.md +21 -0
  11. data/docs/CurrencyType.md +17 -0
  12. data/docs/DefaultApi.md +62 -0
  13. data/docs/EmailUpdateRequest.md +19 -0
  14. data/docs/FundingAccountResponse.md +27 -0
  15. data/docs/FundingManagerApi.md +197 -21
  16. data/docs/FundingPayorStatusAuditResponse.md +23 -0
  17. data/docs/GenerateOTPRequest.md +17 -0
  18. data/docs/GetPaymentsForPayoutResponseV3Summary.md +2 -0
  19. data/docs/GetPaymentsForPayoutResponseV4Summary.md +15 -13
  20. data/docs/GetPayoutApi.md +5 -5
  21. data/docs/GetPayoutsResponseV3.md +1 -3
  22. data/docs/GetPayoutsResponseV4.md +1 -3
  23. data/docs/InstructPayoutApi.md +5 -5
  24. data/docs/InviteUserRequest.md +35 -0
  25. data/docs/KycState.md +16 -0
  26. data/docs/LinkForResponse.md +19 -0
  27. data/docs/ListFundingAccountsResponse.md +21 -0
  28. data/docs/ListPaymentsResponse.md +1 -3
  29. data/docs/ListPaymentsResponseV4.md +21 -0
  30. data/docs/ListSourceAccountResponseV2.md +1 -1
  31. data/docs/LoginApi.md +212 -0
  32. data/docs/MFADetails.md +19 -0
  33. data/docs/MFAStatus.md +16 -0
  34. data/docs/MFAType.md +16 -0
  35. data/docs/OTPType.md +16 -0
  36. data/docs/PageForResponse.md +25 -0
  37. data/docs/PageResourceFundingPayorStatusAuditResponseFundingPayorStatusAuditResponse.md +21 -0
  38. data/docs/PagedUserResponse.md +21 -0
  39. data/docs/PagedUserResponseLinks.md +19 -0
  40. data/docs/{ListSourceAccountResponseV2Page.md → PagedUserResponsePage.md} +2 -2
  41. data/docs/PasswordRequest.md +17 -0
  42. data/docs/PayeeInvitationStatus.md +1 -1
  43. data/docs/PaymentAuditServiceApi.md +85 -24
  44. data/docs/PaymentRails.md +16 -0
  45. data/docs/PaymentResponseV3.md +30 -24
  46. data/docs/PaymentResponseV4.md +47 -41
  47. data/docs/PaymentResponseV4Payout.md +3 -1
  48. data/docs/PayorAmlTransactionV3.md +71 -0
  49. data/docs/PayorAmlTransactionV4.md +71 -0
  50. data/docs/PayorV1.md +2 -2
  51. data/docs/PayorV2.md +8 -4
  52. data/docs/PayorsApi.md +113 -2
  53. data/docs/PayorsPrivateApi.md +60 -0
  54. data/docs/PayoutHistoryApi.md +5 -5
  55. data/docs/PayoutSummaryAuditV3.md +0 -2
  56. data/docs/PayoutSummaryAuditV4.md +5 -3
  57. data/docs/PayoutSummaryResponse.md +2 -0
  58. data/docs/Region.md +19 -0
  59. data/docs/RegisterMFARequest.md +17 -0
  60. data/docs/RegisterMFAResponse.md +19 -0
  61. data/docs/RegisterSmsRequest.md +17 -0
  62. data/docs/ResendTokenRequest.md +19 -0
  63. data/docs/ResetPasswordRequest.md +17 -0
  64. data/docs/Role.md +17 -0
  65. data/docs/SelfMFATypeUnregisterRequest.md +17 -0
  66. data/docs/SelfUpdatePasswordRequest.md +19 -0
  67. data/docs/SupportedCountriesResponse2.md +17 -0
  68. data/docs/SupportedCountry2.md +21 -0
  69. data/docs/TokenType.md +16 -0
  70. data/docs/TokensApi.md +560 -0
  71. data/docs/TransferRequest.md +21 -0
  72. data/docs/UnregisterMFARequest.md +19 -0
  73. data/docs/UserInfo.md +21 -0
  74. data/docs/UserResponse.md +43 -0
  75. data/docs/UserResponse2.md +45 -0
  76. data/docs/UserResponse2Roles.md +17 -0
  77. data/docs/UserStatus.md +16 -0
  78. data/docs/UserType.md +16 -0
  79. data/docs/UserType2.md +16 -0
  80. data/docs/UsersApi.md +806 -0
  81. data/docs/ValidateMFARequest.md +17 -0
  82. data/docs/ValidateOTPRequest.md +17 -0
  83. data/docs/ValidatePasswordResponse.md +23 -0
  84. data/docs/WithdrawPayoutApi.md +5 -5
  85. data/lib/velopayments/api/countries_api.rb +61 -5
  86. data/lib/velopayments/api/currencies_api.rb +2 -2
  87. data/lib/velopayments/api/{auth_api.rb → default_api.rb} +23 -22
  88. data/lib/velopayments/api/funding_manager_api.rb +237 -22
  89. data/lib/velopayments/api/get_payout_api.rb +8 -8
  90. data/lib/velopayments/api/instruct_payout_api.rb +8 -8
  91. data/lib/velopayments/api/login_api.rb +265 -0
  92. data/lib/velopayments/api/payee_invitation_api.rb +2 -2
  93. data/lib/velopayments/api/payees_api.rb +2 -2
  94. data/lib/velopayments/api/payment_audit_service_api.rb +100 -36
  95. data/lib/velopayments/api/payors_api.rb +152 -2
  96. data/lib/velopayments/api/payors_private_api.rb +86 -0
  97. data/lib/velopayments/api/payout_history_api.rb +7 -7
  98. data/lib/velopayments/api/quote_payout_api.rb +2 -2
  99. data/lib/velopayments/api/submit_payout_api.rb +2 -2
  100. data/lib/velopayments/api/tokens_api.rb +785 -0
  101. data/lib/velopayments/api/users_api.rb +997 -0
  102. data/lib/velopayments/api/withdraw_payout_api.rb +8 -8
  103. data/lib/velopayments/api_client.rb +2 -2
  104. data/lib/velopayments/api_error.rb +2 -2
  105. data/lib/velopayments/configuration.rb +9 -2
  106. data/lib/velopayments/models/accepted_payment.rb +304 -0
  107. data/lib/velopayments/models/access_token_response.rb +270 -0
  108. data/lib/velopayments/models/access_token_validation_request.rb +240 -0
  109. data/lib/velopayments/models/auth_response.rb +13 -3
  110. data/lib/velopayments/models/auto_top_up_config.rb +15 -3
  111. data/lib/velopayments/models/challenge.rb +13 -3
  112. data/lib/velopayments/models/check_token_response.rb +244 -0
  113. data/lib/velopayments/models/company_response.rb +14 -3
  114. data/lib/velopayments/models/company_v1.rb +15 -3
  115. data/lib/velopayments/models/create_funding_account_request.rb +337 -0
  116. data/lib/velopayments/models/create_individual.rb +13 -3
  117. data/lib/velopayments/models/create_individual2.rb +13 -3
  118. data/lib/velopayments/models/create_payee.rb +15 -3
  119. data/lib/velopayments/models/create_payee2.rb +15 -3
  120. data/lib/velopayments/models/create_payee_address.rb +18 -3
  121. data/lib/velopayments/models/create_payee_address2.rb +18 -3
  122. data/lib/velopayments/models/create_payees_csv_request.rb +13 -3
  123. data/lib/velopayments/models/create_payees_csv_request2.rb +13 -3
  124. data/lib/velopayments/models/create_payees_csv_response.rb +13 -3
  125. data/lib/velopayments/models/create_payees_csv_response2.rb +13 -3
  126. data/lib/velopayments/models/create_payees_request.rb +13 -3
  127. data/lib/velopayments/models/create_payees_request2.rb +13 -3
  128. data/lib/velopayments/models/create_payment_channel.rb +13 -3
  129. data/lib/velopayments/models/create_payment_channel2.rb +13 -3
  130. data/lib/velopayments/models/create_payor_link_request.rb +273 -0
  131. data/lib/velopayments/models/create_payout_request.rb +13 -3
  132. data/lib/velopayments/models/{get_payouts_response_v3_summary.rb → currency_type.rb} +55 -48
  133. data/lib/velopayments/models/email_update_request.rb +246 -0
  134. data/lib/velopayments/models/error.rb +13 -3
  135. data/lib/velopayments/models/error_response.rb +15 -3
  136. data/lib/velopayments/models/failed_submission.rb +13 -3
  137. data/lib/velopayments/models/funding_account_response.rb +254 -0
  138. data/lib/velopayments/models/funding_audit.rb +25 -3
  139. data/lib/velopayments/models/funding_event.rb +13 -3
  140. data/lib/velopayments/models/funding_event_type.rb +2 -2
  141. data/lib/velopayments/models/funding_payor_status_audit_response.rb +233 -0
  142. data/lib/velopayments/models/funding_request_v1.rb +13 -3
  143. data/lib/velopayments/models/funding_request_v2.rb +13 -3
  144. data/lib/velopayments/models/fx_summary_v3.rb +13 -3
  145. data/lib/velopayments/models/fx_summary_v4.rb +13 -3
  146. data/lib/velopayments/models/generate_otp_request.rb +211 -0
  147. data/lib/velopayments/models/get_fundings_response.rb +13 -3
  148. data/lib/velopayments/models/get_fundings_response_all_of.rb +13 -3
  149. data/lib/velopayments/models/get_payments_for_payout_response_v3.rb +13 -3
  150. data/lib/velopayments/models/get_payments_for_payout_response_v3_page.rb +13 -3
  151. data/lib/velopayments/models/get_payments_for_payout_response_v3_summary.rb +24 -4
  152. data/lib/velopayments/models/get_payments_for_payout_response_v4.rb +13 -3
  153. data/lib/velopayments/models/get_payments_for_payout_response_v4_summary.rb +83 -64
  154. data/lib/velopayments/models/get_payout_statistics.rb +13 -3
  155. data/lib/velopayments/models/get_payouts_response_v3.rb +14 -13
  156. data/lib/velopayments/models/get_payouts_response_v3_links.rb +13 -3
  157. data/lib/velopayments/models/get_payouts_response_v3_page.rb +13 -3
  158. data/lib/velopayments/models/get_payouts_response_v4.rb +14 -13
  159. data/lib/velopayments/models/individual_response.rb +13 -3
  160. data/lib/velopayments/models/individual_v1.rb +13 -3
  161. data/lib/velopayments/models/individual_v1_name.rb +13 -3
  162. data/lib/velopayments/models/invitation_status.rb +2 -2
  163. data/lib/velopayments/models/invitation_status_response.rb +13 -3
  164. data/lib/velopayments/models/invite_payee_request.rb +13 -3
  165. data/lib/velopayments/models/invite_user_request.rb +490 -0
  166. data/lib/velopayments/models/kyc_state.rb +37 -0
  167. data/lib/velopayments/models/language.rb +2 -2
  168. data/lib/velopayments/models/{funding_delta_response_links.rb → link_for_response.rb} +16 -6
  169. data/lib/velopayments/models/{list_payments_response_summary.rb → list_funding_accounts_response.rb} +40 -43
  170. data/lib/velopayments/models/list_payments_response.rb +14 -13
  171. data/lib/velopayments/models/list_payments_response_page.rb +13 -3
  172. data/lib/velopayments/models/list_payments_response_v4.rb +229 -0
  173. data/lib/velopayments/models/list_source_account_response.rb +13 -3
  174. data/lib/velopayments/models/list_source_account_response_links.rb +13 -3
  175. data/lib/velopayments/models/list_source_account_response_page.rb +13 -3
  176. data/lib/velopayments/models/list_source_account_response_v2.rb +14 -4
  177. data/lib/velopayments/models/marketing_opt_in.rb +13 -3
  178. data/lib/velopayments/models/mfa_details.rb +216 -0
  179. data/lib/velopayments/models/mfa_status.rb +36 -0
  180. data/lib/velopayments/models/mfa_type.rb +37 -0
  181. data/lib/velopayments/models/notifications.rb +13 -3
  182. data/lib/velopayments/models/ofac_status.rb +2 -2
  183. data/lib/velopayments/models/onboarded_status.rb +2 -2
  184. data/lib/velopayments/models/otp_type.rb +35 -0
  185. data/lib/velopayments/models/{list_source_account_response_v2_page.rb → page_for_response.rb} +16 -6
  186. data/lib/velopayments/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response.rb +228 -0
  187. data/lib/velopayments/models/paged_payee_invitation_status_response.rb +13 -3
  188. data/lib/velopayments/models/paged_payee_response.rb +13 -3
  189. data/lib/velopayments/models/paged_payee_response2.rb +13 -3
  190. data/lib/velopayments/models/paged_payee_response2_summary.rb +13 -3
  191. data/lib/velopayments/models/paged_payee_response_links.rb +13 -3
  192. data/lib/velopayments/models/paged_payee_response_page.rb +13 -3
  193. data/lib/velopayments/models/paged_payee_response_summary.rb +13 -3
  194. data/lib/velopayments/models/paged_response.rb +13 -3
  195. data/lib/velopayments/models/paged_response_page.rb +13 -3
  196. data/lib/velopayments/models/{funding_delta_response.rb → paged_user_response.rb} +20 -10
  197. data/lib/velopayments/models/paged_user_response_links.rb +215 -0
  198. data/lib/velopayments/models/paged_user_response_page.rb +242 -0
  199. data/lib/velopayments/models/password_request.rb +240 -0
  200. data/lib/velopayments/models/payee.rb +19 -3
  201. data/lib/velopayments/models/payee_address.rb +18 -3
  202. data/lib/velopayments/models/payee_delta.rb +14 -3
  203. data/lib/velopayments/models/payee_delta_response.rb +13 -3
  204. data/lib/velopayments/models/payee_delta_response_links.rb +13 -3
  205. data/lib/velopayments/models/payee_delta_response_page.rb +13 -3
  206. data/lib/velopayments/models/payee_invitation_status.rb +13 -3
  207. data/lib/velopayments/models/payee_invitation_status_response.rb +13 -3
  208. data/lib/velopayments/models/payee_payment_channel.rb +13 -3
  209. data/lib/velopayments/models/payee_payor_ref.rb +13 -3
  210. data/lib/velopayments/models/payee_payor_ref2.rb +13 -3
  211. data/lib/velopayments/models/payee_response.rb +19 -3
  212. data/lib/velopayments/models/payee_response2.rb +19 -3
  213. data/lib/velopayments/models/payee_type.rb +2 -2
  214. data/lib/velopayments/models/payment_audit_currency_v3.rb +2 -2
  215. data/lib/velopayments/models/payment_audit_currency_v4.rb +2 -2
  216. data/lib/velopayments/models/payment_channel_country.rb +13 -3
  217. data/lib/velopayments/models/payment_channel_rule.rb +13 -3
  218. data/lib/velopayments/models/payment_channel_rules_response.rb +13 -3
  219. data/lib/velopayments/models/payment_delta.rb +19 -3
  220. data/lib/velopayments/models/payment_delta_response.rb +13 -3
  221. data/lib/velopayments/models/payment_event_response_v3.rb +13 -3
  222. data/lib/velopayments/models/payment_event_response_v4.rb +13 -3
  223. data/lib/velopayments/models/payment_instruction.rb +13 -3
  224. data/lib/velopayments/models/payment_rails.rb +36 -0
  225. data/lib/velopayments/models/payment_response_v3.rb +69 -7
  226. data/lib/velopayments/models/payment_response_v4.rb +66 -5
  227. data/lib/velopayments/models/payment_response_v4_payout.rb +23 -4
  228. data/lib/velopayments/models/payment_status.rb +2 -2
  229. data/lib/velopayments/models/payor_address.rb +18 -3
  230. data/lib/velopayments/models/payor_address_v2.rb +18 -3
  231. data/lib/velopayments/models/payor_aml_transaction_v3.rb +454 -0
  232. data/lib/velopayments/models/payor_aml_transaction_v4.rb +454 -0
  233. data/lib/velopayments/models/payor_branding_response.rb +16 -3
  234. data/lib/velopayments/models/payor_create_api_key_request.rb +14 -3
  235. data/lib/velopayments/models/payor_create_api_key_response.rb +13 -3
  236. data/lib/velopayments/models/payor_create_application_request.rb +14 -3
  237. data/lib/velopayments/models/payor_email_opt_out_request.rb +13 -3
  238. data/lib/velopayments/models/payor_links_response.rb +13 -3
  239. data/lib/velopayments/models/payor_links_response_links.rb +13 -3
  240. data/lib/velopayments/models/payor_links_response_payors.rb +13 -3
  241. data/lib/velopayments/models/payor_logo_request.rb +13 -3
  242. data/lib/velopayments/models/payor_v1.rb +14 -17
  243. data/lib/velopayments/models/payor_v2.rb +41 -21
  244. data/lib/velopayments/models/payout_payor_v4.rb +13 -3
  245. data/lib/velopayments/models/payout_principal_v4.rb +13 -3
  246. data/lib/velopayments/models/payout_status_v3.rb +2 -2
  247. data/lib/velopayments/models/payout_status_v4.rb +2 -2
  248. data/lib/velopayments/models/payout_summary_audit_v3.rb +14 -13
  249. data/lib/velopayments/models/payout_summary_audit_v4.rb +31 -13
  250. data/lib/velopayments/models/payout_summary_response.rb +30 -4
  251. data/lib/velopayments/models/payout_type_v4.rb +2 -2
  252. data/lib/velopayments/models/query_batch_response.rb +13 -3
  253. data/lib/velopayments/models/quote_fx_summary.rb +13 -3
  254. data/lib/velopayments/models/quote_response.rb +13 -3
  255. data/lib/velopayments/models/region.rb +215 -0
  256. data/lib/velopayments/models/register_mfa_request.rb +211 -0
  257. data/lib/velopayments/models/register_mfa_response.rb +217 -0
  258. data/lib/velopayments/models/register_sms_request.rb +233 -0
  259. data/lib/velopayments/models/rejected_payment.rb +13 -3
  260. data/lib/velopayments/models/resend_token_request.rb +280 -0
  261. data/lib/velopayments/models/reset_password_request.rb +212 -0
  262. data/lib/velopayments/models/role.rb +212 -0
  263. data/lib/velopayments/models/self_mfa_type_unregister_request.rb +246 -0
  264. data/lib/velopayments/models/self_update_password_request.rb +283 -0
  265. data/lib/velopayments/models/set_notifications_request.rb +13 -3
  266. data/lib/velopayments/models/source_account.rb +13 -3
  267. data/lib/velopayments/models/source_account_response.rb +15 -3
  268. data/lib/velopayments/models/source_account_response_v2.rb +15 -3
  269. data/lib/velopayments/models/source_account_summary_v3.rb +13 -3
  270. data/lib/velopayments/models/source_account_summary_v4.rb +13 -3
  271. data/lib/velopayments/models/supported_countries_response.rb +13 -3
  272. data/lib/velopayments/models/supported_countries_response2.rb +208 -0
  273. data/lib/velopayments/models/supported_country.rb +13 -3
  274. data/lib/velopayments/models/supported_country2.rb +260 -0
  275. data/lib/velopayments/models/supported_currency.rb +13 -3
  276. data/lib/velopayments/models/supported_currency_response.rb +13 -3
  277. data/lib/velopayments/models/token_type.rb +38 -0
  278. data/lib/velopayments/models/{funding_delta.rb → transfer_request.rb} +68 -57
  279. data/lib/velopayments/models/unregister_mfa_request.rb +280 -0
  280. data/lib/velopayments/models/update_remote_id_request.rb +13 -3
  281. data/lib/velopayments/models/user_info.rb +225 -0
  282. data/lib/velopayments/models/user_response.rb +495 -0
  283. data/lib/velopayments/models/user_response2.rb +505 -0
  284. data/lib/velopayments/models/user_response2_roles.rb +206 -0
  285. data/lib/velopayments/models/user_status.rb +37 -0
  286. data/lib/velopayments/models/user_type.rb +37 -0
  287. data/lib/velopayments/models/user_type2.rb +37 -0
  288. data/lib/velopayments/models/validate_mfa_request.rb +240 -0
  289. data/lib/velopayments/models/validate_otp_request.rb +240 -0
  290. data/lib/velopayments/models/validate_password_response.rb +262 -0
  291. data/lib/velopayments/models/watchlist_status.rb +2 -2
  292. data/lib/velopayments/version.rb +3 -3
  293. data/lib/velopayments.rb +60 -10
  294. data/oa3-config.json +1 -1
  295. data/spec/api/countries_api_spec.rb +14 -3
  296. data/spec/api/currencies_api_spec.rb +2 -2
  297. data/spec/api/{auth_api_spec.rb → default_api_spec.rb} +14 -14
  298. data/spec/api/funding_manager_api_spec.rb +54 -11
  299. data/spec/api/get_payout_api_spec.rb +4 -4
  300. data/spec/api/instruct_payout_api_spec.rb +4 -4
  301. data/spec/api/login_api_spec.rb +82 -0
  302. data/spec/api/payee_invitation_api_spec.rb +2 -2
  303. data/spec/api/payees_api_spec.rb +2 -2
  304. data/spec/api/payment_audit_service_api_spec.rb +27 -12
  305. data/spec/api/payors_api_spec.rb +29 -2
  306. data/spec/api/payors_private_api_spec.rb +47 -0
  307. data/spec/api/payout_history_api_spec.rb +4 -4
  308. data/spec/api/quote_payout_api_spec.rb +2 -2
  309. data/spec/api/submit_payout_api_spec.rb +2 -2
  310. data/spec/api/tokens_api_spec.rb +177 -0
  311. data/spec/api/users_api_spec.rb +222 -0
  312. data/spec/api/withdraw_payout_api_spec.rb +4 -4
  313. data/spec/api_client_spec.rb +2 -2
  314. data/spec/configuration_spec.rb +2 -2
  315. data/spec/models/accepted_payment_spec.rb +71 -0
  316. data/spec/models/access_token_response_spec.rb +77 -0
  317. data/spec/models/access_token_validation_request_spec.rb +41 -0
  318. data/spec/models/auth_response_spec.rb +2 -2
  319. data/spec/models/auto_top_up_config_spec.rb +2 -2
  320. data/spec/models/challenge_spec.rb +2 -2
  321. data/spec/models/{list_payments_response_summary_spec.rb → check_token_response_spec.rb} +13 -13
  322. data/spec/models/company_response_spec.rb +2 -2
  323. data/spec/models/company_v1_spec.rb +2 -2
  324. data/spec/models/create_funding_account_request_spec.rb +59 -0
  325. data/spec/models/create_individual2_spec.rb +2 -2
  326. data/spec/models/create_individual_spec.rb +2 -2
  327. data/spec/models/create_payee2_spec.rb +2 -2
  328. data/spec/models/create_payee_address2_spec.rb +2 -2
  329. data/spec/models/create_payee_address_spec.rb +2 -2
  330. data/spec/models/create_payee_spec.rb +2 -2
  331. data/spec/models/create_payees_csv_request2_spec.rb +2 -2
  332. data/spec/models/create_payees_csv_request_spec.rb +2 -2
  333. data/spec/models/create_payees_csv_response2_spec.rb +2 -2
  334. data/spec/models/create_payees_csv_response_spec.rb +2 -2
  335. data/spec/models/create_payees_request2_spec.rb +2 -2
  336. data/spec/models/create_payees_request_spec.rb +2 -2
  337. data/spec/models/create_payment_channel2_spec.rb +2 -2
  338. data/spec/models/create_payment_channel_spec.rb +2 -2
  339. data/spec/models/create_payor_link_request_spec.rb +57 -0
  340. data/spec/models/create_payout_request_spec.rb +2 -2
  341. data/spec/models/currency_type_spec.rb +41 -0
  342. data/spec/models/email_update_request_spec.rb +47 -0
  343. data/spec/models/error_response_spec.rb +2 -2
  344. data/spec/models/error_spec.rb +2 -2
  345. data/spec/models/failed_submission_spec.rb +2 -2
  346. data/spec/models/funding_account_response_spec.rb +71 -0
  347. data/spec/models/funding_audit_spec.rb +6 -2
  348. data/spec/models/funding_event_spec.rb +2 -2
  349. data/spec/models/funding_event_type_spec.rb +2 -2
  350. data/spec/models/{funding_delta_spec.rb → funding_payor_status_audit_response_spec.rb} +12 -12
  351. data/spec/models/funding_request_v1_spec.rb +2 -2
  352. data/spec/models/funding_request_v2_spec.rb +2 -2
  353. data/spec/models/fx_summary_v3_spec.rb +2 -2
  354. data/spec/models/fx_summary_v4_spec.rb +2 -2
  355. data/spec/models/generate_otp_request_spec.rb +41 -0
  356. data/spec/models/get_fundings_response_all_of_spec.rb +2 -2
  357. data/spec/models/get_fundings_response_spec.rb +2 -2
  358. data/spec/models/get_payments_for_payout_response_v3_page_spec.rb +2 -2
  359. data/spec/models/get_payments_for_payout_response_v3_spec.rb +2 -2
  360. data/spec/models/get_payments_for_payout_response_v3_summary_spec.rb +8 -2
  361. data/spec/models/get_payments_for_payout_response_v4_spec.rb +2 -2
  362. data/spec/models/get_payments_for_payout_response_v4_summary_spec.rb +22 -16
  363. data/spec/models/get_payout_statistics_spec.rb +2 -2
  364. data/spec/models/get_payouts_response_v3_links_spec.rb +2 -2
  365. data/spec/models/get_payouts_response_v3_page_spec.rb +2 -2
  366. data/spec/models/get_payouts_response_v3_spec.rb +2 -8
  367. data/spec/models/get_payouts_response_v4_spec.rb +2 -8
  368. data/spec/models/individual_response_spec.rb +2 -2
  369. data/spec/models/individual_v1_name_spec.rb +2 -2
  370. data/spec/models/individual_v1_spec.rb +2 -2
  371. data/spec/models/invitation_status_response_spec.rb +2 -2
  372. data/spec/models/invitation_status_spec.rb +2 -2
  373. data/spec/models/invite_payee_request_spec.rb +2 -2
  374. data/spec/models/invite_user_request_spec.rb +99 -0
  375. data/spec/models/kyc_state_spec.rb +35 -0
  376. data/spec/models/language_spec.rb +2 -2
  377. data/spec/models/{funding_delta_response_links_spec.rb → link_for_response_spec.rb} +8 -8
  378. data/spec/models/list_funding_accounts_response_spec.rb +53 -0
  379. data/spec/models/list_payments_response_page_spec.rb +2 -2
  380. data/spec/models/list_payments_response_spec.rb +2 -8
  381. data/spec/models/list_payments_response_v4_spec.rb +53 -0
  382. data/spec/models/list_source_account_response_links_spec.rb +2 -2
  383. data/spec/models/list_source_account_response_page_spec.rb +2 -2
  384. data/spec/models/list_source_account_response_spec.rb +2 -2
  385. data/spec/models/list_source_account_response_v2_spec.rb +2 -2
  386. data/spec/models/marketing_opt_in_spec.rb +2 -2
  387. data/spec/models/mfa_details_spec.rb +47 -0
  388. data/spec/models/mfa_status_spec.rb +35 -0
  389. data/spec/models/mfa_type_spec.rb +35 -0
  390. data/spec/models/notifications_spec.rb +2 -2
  391. data/spec/models/ofac_status_spec.rb +2 -2
  392. data/spec/models/onboarded_status_spec.rb +2 -2
  393. data/spec/models/otp_type_spec.rb +35 -0
  394. data/spec/models/{list_source_account_response_v2_page_spec.rb → page_for_response_spec.rb} +8 -8
  395. data/spec/models/page_resource_funding_payor_status_audit_response_funding_payor_status_audit_response_spec.rb +53 -0
  396. data/spec/models/paged_payee_invitation_status_response_spec.rb +2 -2
  397. data/spec/models/paged_payee_response2_spec.rb +2 -2
  398. data/spec/models/paged_payee_response2_summary_spec.rb +2 -2
  399. data/spec/models/paged_payee_response_links_spec.rb +2 -2
  400. data/spec/models/paged_payee_response_page_spec.rb +2 -2
  401. data/spec/models/paged_payee_response_spec.rb +2 -2
  402. data/spec/models/paged_payee_response_summary_spec.rb +2 -2
  403. data/spec/models/paged_response_page_spec.rb +2 -2
  404. data/spec/models/paged_response_spec.rb +2 -2
  405. data/spec/models/paged_user_response_links_spec.rb +47 -0
  406. data/spec/models/{get_payouts_response_v3_summary_spec.rb → paged_user_response_page_spec.rb} +13 -13
  407. data/spec/models/{funding_delta_response_spec.rb → paged_user_response_spec.rb} +8 -8
  408. data/spec/models/password_request_spec.rb +41 -0
  409. data/spec/models/payee_address_spec.rb +2 -2
  410. data/spec/models/payee_delta_response_links_spec.rb +2 -2
  411. data/spec/models/payee_delta_response_page_spec.rb +2 -2
  412. data/spec/models/payee_delta_response_spec.rb +2 -2
  413. data/spec/models/payee_delta_spec.rb +2 -2
  414. data/spec/models/payee_invitation_status_response_spec.rb +2 -2
  415. data/spec/models/payee_invitation_status_spec.rb +2 -2
  416. data/spec/models/payee_payment_channel_spec.rb +2 -2
  417. data/spec/models/payee_payor_ref2_spec.rb +2 -2
  418. data/spec/models/payee_payor_ref_spec.rb +2 -2
  419. data/spec/models/payee_response2_spec.rb +2 -2
  420. data/spec/models/payee_response_spec.rb +2 -2
  421. data/spec/models/payee_spec.rb +2 -2
  422. data/spec/models/payee_type_spec.rb +2 -2
  423. data/spec/models/payment_audit_currency_v3_spec.rb +2 -2
  424. data/spec/models/payment_audit_currency_v4_spec.rb +2 -2
  425. data/spec/models/payment_channel_country_spec.rb +2 -2
  426. data/spec/models/payment_channel_rule_spec.rb +2 -2
  427. data/spec/models/payment_channel_rules_response_spec.rb +2 -2
  428. data/spec/models/payment_delta_response_spec.rb +2 -2
  429. data/spec/models/payment_delta_spec.rb +2 -2
  430. data/spec/models/payment_event_response_v3_spec.rb +2 -2
  431. data/spec/models/payment_event_response_v4_spec.rb +2 -2
  432. data/spec/models/payment_instruction_spec.rb +2 -2
  433. data/spec/models/payment_rails_spec.rb +35 -0
  434. data/spec/models/payment_response_v3_spec.rb +20 -2
  435. data/spec/models/payment_response_v4_payout_spec.rb +8 -2
  436. data/spec/models/payment_response_v4_spec.rb +20 -2
  437. data/spec/models/payment_status_spec.rb +2 -2
  438. data/spec/models/payor_address_spec.rb +2 -2
  439. data/spec/models/payor_address_v2_spec.rb +2 -2
  440. data/spec/models/payor_aml_transaction_v3_spec.rb +203 -0
  441. data/spec/models/payor_aml_transaction_v4_spec.rb +203 -0
  442. data/spec/models/payor_branding_response_spec.rb +2 -2
  443. data/spec/models/payor_create_api_key_request_spec.rb +2 -2
  444. data/spec/models/payor_create_api_key_response_spec.rb +2 -2
  445. data/spec/models/payor_create_application_request_spec.rb +2 -2
  446. data/spec/models/payor_email_opt_out_request_spec.rb +2 -2
  447. data/spec/models/payor_links_response_links_spec.rb +2 -2
  448. data/spec/models/payor_links_response_payors_spec.rb +2 -2
  449. data/spec/models/payor_links_response_spec.rb +2 -2
  450. data/spec/models/payor_logo_request_spec.rb +2 -2
  451. data/spec/models/payor_v1_spec.rb +2 -6
  452. data/spec/models/payor_v2_spec.rb +14 -6
  453. data/spec/models/payout_payor_v4_spec.rb +2 -2
  454. data/spec/models/payout_principal_v4_spec.rb +2 -2
  455. data/spec/models/payout_status_v3_spec.rb +2 -2
  456. data/spec/models/payout_status_v4_spec.rb +2 -2
  457. data/spec/models/payout_summary_audit_v3_spec.rb +2 -8
  458. data/spec/models/payout_summary_audit_v4_spec.rb +8 -2
  459. data/spec/models/payout_summary_response_spec.rb +8 -2
  460. data/spec/models/payout_type_v4_spec.rb +2 -2
  461. data/spec/models/query_batch_response_spec.rb +2 -2
  462. data/spec/models/quote_fx_summary_spec.rb +2 -2
  463. data/spec/models/quote_response_spec.rb +2 -2
  464. data/spec/models/region_spec.rb +47 -0
  465. data/spec/models/register_mfa_request_spec.rb +41 -0
  466. data/spec/models/register_mfa_response_spec.rb +47 -0
  467. data/spec/models/register_sms_request_spec.rb +41 -0
  468. data/spec/models/rejected_payment_spec.rb +2 -2
  469. data/spec/models/resend_token_request_spec.rb +51 -0
  470. data/spec/models/reset_password_request_spec.rb +41 -0
  471. data/spec/models/role_spec.rb +41 -0
  472. data/spec/models/self_mfa_type_unregister_request_spec.rb +45 -0
  473. data/spec/models/self_update_password_request_spec.rb +47 -0
  474. data/spec/models/set_notifications_request_spec.rb +2 -2
  475. data/spec/models/source_account_response_spec.rb +2 -2
  476. data/spec/models/source_account_response_v2_spec.rb +2 -2
  477. data/spec/models/source_account_spec.rb +2 -2
  478. data/spec/models/source_account_summary_v3_spec.rb +2 -2
  479. data/spec/models/source_account_summary_v4_spec.rb +2 -2
  480. data/spec/models/supported_countries_response2_spec.rb +41 -0
  481. data/spec/models/supported_countries_response_spec.rb +2 -2
  482. data/spec/models/supported_country2_spec.rb +61 -0
  483. data/spec/models/supported_country_spec.rb +2 -2
  484. data/spec/models/supported_currency_response_spec.rb +2 -2
  485. data/spec/models/supported_currency_spec.rb +2 -2
  486. data/spec/models/token_type_spec.rb +35 -0
  487. data/spec/models/transfer_request_spec.rb +53 -0
  488. data/spec/models/unregister_mfa_request_spec.rb +51 -0
  489. data/spec/models/update_remote_id_request_spec.rb +2 -2
  490. data/spec/models/user_info_spec.rb +53 -0
  491. data/spec/models/user_response2_roles_spec.rb +41 -0
  492. data/spec/models/user_response2_spec.rb +137 -0
  493. data/spec/models/user_response_spec.rb +131 -0
  494. data/spec/models/user_status_spec.rb +35 -0
  495. data/spec/models/user_type2_spec.rb +35 -0
  496. data/spec/models/user_type_spec.rb +35 -0
  497. data/spec/models/validate_mfa_request_spec.rb +41 -0
  498. data/spec/models/validate_otp_request_spec.rb +41 -0
  499. data/spec/models/validate_password_response_spec.rb +59 -0
  500. data/spec/models/watchlist_status_spec.rb +2 -2
  501. data/spec/spec_helper.rb +2 -2
  502. data/velopayments.gemspec +2 -2
  503. metadata +358 -159
  504. data/Jenkinsfile +0 -41
  505. data/docs/AuthApi.md +0 -64
  506. data/docs/FundingDelta.md +0 -23
  507. data/docs/FundingDeltaResponse.md +0 -21
  508. data/docs/FundingDeltaResponseLinks.md +0 -19
  509. data/docs/GetPayoutsResponseV3Summary.md +0 -25
  510. data/docs/ListPaymentsResponseSummary.md +0 -25
  511. data/docs/PayorApplicationsApi.md +0 -119
  512. data/lib/velopayments/api/payor_applications_api.rb +0 -166
  513. data/spec/api/payor_applications_api_spec.rb +0 -62
@@ -3,10 +3,10 @@
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.17.8
6
+ The version of the OpenAPI document: 2.18.31
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -20,8 +20,6 @@ module VeloPayments
20
20
 
21
21
  attr_accessor :status
22
22
 
23
- attr_accessor :date_time
24
-
25
23
  attr_accessor :submitted_date_time
26
24
 
27
25
  attr_accessor :instructed_date_time
@@ -46,7 +44,6 @@ module VeloPayments
46
44
  :'payout_id' => :'payoutId',
47
45
  :'payor_id' => :'payorId',
48
46
  :'status' => :'status',
49
- :'date_time' => :'dateTime',
50
47
  :'submitted_date_time' => :'submittedDateTime',
51
48
  :'instructed_date_time' => :'instructedDateTime',
52
49
  :'withdrawn_date_time' => :'withdrawnDateTime',
@@ -65,7 +62,6 @@ module VeloPayments
65
62
  :'payout_id' => :'String',
66
63
  :'payor_id' => :'String',
67
64
  :'status' => :'PayoutStatusV3',
68
- :'date_time' => :'DateTime',
69
65
  :'submitted_date_time' => :'String',
70
66
  :'instructed_date_time' => :'String',
71
67
  :'withdrawn_date_time' => :'String',
@@ -78,6 +74,12 @@ module VeloPayments
78
74
  }
79
75
  end
80
76
 
77
+ # List of attributes with nullable: true
78
+ def self.openapi_nullable
79
+ Set.new([
80
+ ])
81
+ end
82
+
81
83
  # Initializes the object
82
84
  # @param [Hash] attributes Model attributes in the form of hash
83
85
  def initialize(attributes = {})
@@ -105,10 +107,6 @@ module VeloPayments
105
107
  self.status = attributes[:'status']
106
108
  end
107
109
 
108
- if attributes.key?(:'date_time')
109
- self.date_time = attributes[:'date_time']
110
- end
111
-
112
110
  if attributes.key?(:'submitted_date_time')
113
111
  self.submitted_date_time = attributes[:'submitted_date_time']
114
112
  end
@@ -186,7 +184,6 @@ module VeloPayments
186
184
  payout_id == o.payout_id &&
187
185
  payor_id == o.payor_id &&
188
186
  status == o.status &&
189
- date_time == o.date_time &&
190
187
  submitted_date_time == o.submitted_date_time &&
191
188
  instructed_date_time == o.instructed_date_time &&
192
189
  withdrawn_date_time == o.withdrawn_date_time &&
@@ -207,7 +204,7 @@ module VeloPayments
207
204
  # Calculates hash code according to all attributes.
208
205
  # @return [Integer] Hash code
209
206
  def hash
210
- [payout_id, payor_id, status, date_time, submitted_date_time, instructed_date_time, withdrawn_date_time, total_payments, total_incomplete_payments, total_failed_payments, source_account_summary, fx_summaries, payout_memo].hash
207
+ [payout_id, payor_id, status, submitted_date_time, instructed_date_time, withdrawn_date_time, total_payments, total_incomplete_payments, total_failed_payments, source_account_summary, fx_summaries, payout_memo].hash
211
208
  end
212
209
 
213
210
  # Builds the object from hash
@@ -296,7 +293,11 @@ module VeloPayments
296
293
  hash = {}
297
294
  self.class.attribute_map.each_pair do |attr, param|
298
295
  value = self.send(attr)
299
- next if value.nil?
296
+ if value.nil?
297
+ is_nullable = self.class.openapi_nullable.include?(attr)
298
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
299
+ end
300
+
300
301
  hash[param] = _to_hash(value)
301
302
  end
302
303
  hash
@@ -3,10 +3,10 @@
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.17.8
6
+ The version of the OpenAPI document: 2.18.31
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -16,7 +16,6 @@ module VeloPayments
16
16
  class PayoutSummaryAuditV4
17
17
  attr_accessor :payout_id
18
18
 
19
- # Deprecated in v2.16. Will be populated with submitting payor ID until removed in a later release.
20
19
  attr_accessor :payor_id
21
20
 
22
21
  attr_accessor :status
@@ -43,6 +42,8 @@ module VeloPayments
43
42
 
44
43
  attr_accessor :payout_type
45
44
 
45
+ attr_accessor :payor_name
46
+
46
47
  # Attribute mapping from ruby-style variable name to JSON key.
47
48
  def self.attribute_map
48
49
  {
@@ -59,7 +60,8 @@ module VeloPayments
59
60
  :'source_account_summary' => :'sourceAccountSummary',
60
61
  :'fx_summaries' => :'fxSummaries',
61
62
  :'payout_memo' => :'payoutMemo',
62
- :'payout_type' => :'payoutType'
63
+ :'payout_type' => :'payoutType',
64
+ :'payor_name' => :'payorName'
63
65
  }
64
66
  end
65
67
 
@@ -79,10 +81,17 @@ module VeloPayments
79
81
  :'source_account_summary' => :'Array<SourceAccountSummaryV4>',
80
82
  :'fx_summaries' => :'Array<FxSummaryV4>',
81
83
  :'payout_memo' => :'String',
82
- :'payout_type' => :'PayoutTypeV4'
84
+ :'payout_type' => :'PayoutTypeV4',
85
+ :'payor_name' => :'String'
83
86
  }
84
87
  end
85
88
 
89
+ # List of attributes with nullable: true
90
+ def self.openapi_nullable
91
+ Set.new([
92
+ ])
93
+ end
94
+
86
95
  # Initializes the object
87
96
  # @param [Hash] attributes Model attributes in the form of hash
88
97
  def initialize(attributes = {})
@@ -157,16 +166,16 @@ module VeloPayments
157
166
  if attributes.key?(:'payout_type')
158
167
  self.payout_type = attributes[:'payout_type']
159
168
  end
169
+
170
+ if attributes.key?(:'payor_name')
171
+ self.payor_name = attributes[:'payor_name']
172
+ end
160
173
  end
161
174
 
162
175
  # Show invalid properties with the reasons. Usually used together with valid?
163
176
  # @return Array for valid properties with the reasons
164
177
  def list_invalid_properties
165
178
  invalid_properties = Array.new
166
- if @payout_id.nil?
167
- invalid_properties.push('invalid value for "payout_id", payout_id cannot be nil.')
168
- end
169
-
170
179
  if @status.nil?
171
180
  invalid_properties.push('invalid value for "status", status cannot be nil.')
172
181
  end
@@ -179,16 +188,20 @@ module VeloPayments
179
188
  invalid_properties.push('invalid value for "payout_type", payout_type cannot be nil.')
180
189
  end
181
190
 
191
+ if @payor_name.nil?
192
+ invalid_properties.push('invalid value for "payor_name", payor_name cannot be nil.')
193
+ end
194
+
182
195
  invalid_properties
183
196
  end
184
197
 
185
198
  # Check to see if the all the properties in the model are valid
186
199
  # @return true if the model is valid
187
200
  def valid?
188
- return false if @payout_id.nil?
189
201
  return false if @status.nil?
190
202
  return false if @submitted_date_time.nil?
191
203
  return false if @payout_type.nil?
204
+ return false if @payor_name.nil?
192
205
  true
193
206
  end
194
207
 
@@ -210,7 +223,8 @@ module VeloPayments
210
223
  source_account_summary == o.source_account_summary &&
211
224
  fx_summaries == o.fx_summaries &&
212
225
  payout_memo == o.payout_memo &&
213
- payout_type == o.payout_type
226
+ payout_type == o.payout_type &&
227
+ payor_name == o.payor_name
214
228
  end
215
229
 
216
230
  # @see the `==` method
@@ -222,7 +236,7 @@ module VeloPayments
222
236
  # Calculates hash code according to all attributes.
223
237
  # @return [Integer] Hash code
224
238
  def hash
225
- [payout_id, payor_id, status, date_time, submitted_date_time, instructed_date_time, withdrawn_date_time, total_payments, total_incomplete_payments, total_returned_payments, source_account_summary, fx_summaries, payout_memo, payout_type].hash
239
+ [payout_id, payor_id, status, date_time, submitted_date_time, instructed_date_time, withdrawn_date_time, total_payments, total_incomplete_payments, total_returned_payments, source_account_summary, fx_summaries, payout_memo, payout_type, payor_name].hash
226
240
  end
227
241
 
228
242
  # Builds the object from hash
@@ -311,7 +325,11 @@ module VeloPayments
311
325
  hash = {}
312
326
  self.class.attribute_map.each_pair do |attr, param|
313
327
  value = self.send(attr)
314
- next if value.nil?
328
+ if value.nil?
329
+ is_nullable = self.class.openapi_nullable.include?(attr)
330
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
331
+ end
332
+
315
333
  hash[param] = _to_hash(value)
316
334
  end
317
335
  hash
@@ -3,10 +3,10 @@
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.17.8
6
+ The version of the OpenAPI document: 2.18.31
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -28,6 +28,8 @@ module VeloPayments
28
28
 
29
29
  attr_accessor :accounts
30
30
 
31
+ attr_accessor :accepted_payments
32
+
31
33
  attr_accessor :rejected_payments
32
34
 
33
35
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -40,6 +42,7 @@ module VeloPayments
40
42
  :'payments_rejected' => :'paymentsRejected',
41
43
  :'fx_summaries' => :'fxSummaries',
42
44
  :'accounts' => :'accounts',
45
+ :'accepted_payments' => :'acceptedPayments',
43
46
  :'rejected_payments' => :'rejectedPayments'
44
47
  }
45
48
  end
@@ -54,10 +57,17 @@ module VeloPayments
54
57
  :'payments_rejected' => :'Integer',
55
58
  :'fx_summaries' => :'Array<QuoteFxSummary>',
56
59
  :'accounts' => :'Array<SourceAccount>',
60
+ :'accepted_payments' => :'Array<AcceptedPayment>',
57
61
  :'rejected_payments' => :'Array<RejectedPayment>'
58
62
  }
59
63
  end
60
64
 
65
+ # List of attributes with nullable: true
66
+ def self.openapi_nullable
67
+ Set.new([
68
+ ])
69
+ end
70
+
61
71
  # Initializes the object
62
72
  # @param [Hash] attributes Model attributes in the form of hash
63
73
  def initialize(attributes = {})
@@ -105,6 +115,12 @@ module VeloPayments
105
115
  end
106
116
  end
107
117
 
118
+ if attributes.key?(:'accepted_payments')
119
+ if (value = attributes[:'accepted_payments']).is_a?(Array)
120
+ self.accepted_payments = value
121
+ end
122
+ end
123
+
108
124
  if attributes.key?(:'rejected_payments')
109
125
  if (value = attributes[:'rejected_payments']).is_a?(Array)
110
126
  self.rejected_payments = value
@@ -124,6 +140,10 @@ module VeloPayments
124
140
  invalid_properties.push('invalid value for "accounts", accounts cannot be nil.')
125
141
  end
126
142
 
143
+ if @accepted_payments.nil?
144
+ invalid_properties.push('invalid value for "accepted_payments", accepted_payments cannot be nil.')
145
+ end
146
+
127
147
  if @rejected_payments.nil?
128
148
  invalid_properties.push('invalid value for "rejected_payments", rejected_payments cannot be nil.')
129
149
  end
@@ -136,6 +156,7 @@ module VeloPayments
136
156
  def valid?
137
157
  return false if @fx_summaries.nil?
138
158
  return false if @accounts.nil?
159
+ return false if @accepted_payments.nil?
139
160
  return false if @rejected_payments.nil?
140
161
  true
141
162
  end
@@ -152,6 +173,7 @@ module VeloPayments
152
173
  payments_rejected == o.payments_rejected &&
153
174
  fx_summaries == o.fx_summaries &&
154
175
  accounts == o.accounts &&
176
+ accepted_payments == o.accepted_payments &&
155
177
  rejected_payments == o.rejected_payments
156
178
  end
157
179
 
@@ -164,7 +186,7 @@ module VeloPayments
164
186
  # Calculates hash code according to all attributes.
165
187
  # @return [Integer] Hash code
166
188
  def hash
167
- [payout_id, status, payments_submitted, payments_accepted, payments_rejected, fx_summaries, accounts, rejected_payments].hash
189
+ [payout_id, status, payments_submitted, payments_accepted, payments_rejected, fx_summaries, accounts, accepted_payments, rejected_payments].hash
168
190
  end
169
191
 
170
192
  # Builds the object from hash
@@ -253,7 +275,11 @@ module VeloPayments
253
275
  hash = {}
254
276
  self.class.attribute_map.each_pair do |attr, param|
255
277
  value = self.send(attr)
256
- next if value.nil?
278
+ if value.nil?
279
+ is_nullable = self.class.openapi_nullable.include?(attr)
280
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
281
+ end
282
+
257
283
  hash[param] = _to_hash(value)
258
284
  end
259
285
  hash
@@ -3,10 +3,10 @@
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.17.8
6
+ The version of the OpenAPI document: 2.18.31
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -3,10 +3,10 @@
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.17.8
6
+ The version of the OpenAPI document: 2.18.31
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -65,6 +65,12 @@ module VeloPayments
65
65
  }
66
66
  end
67
67
 
68
+ # List of attributes with nullable: true
69
+ def self.openapi_nullable
70
+ Set.new([
71
+ ])
72
+ end
73
+
68
74
  # Initializes the object
69
75
  # @param [Hash] attributes Model attributes in the form of hash
70
76
  def initialize(attributes = {})
@@ -233,7 +239,11 @@ module VeloPayments
233
239
  hash = {}
234
240
  self.class.attribute_map.each_pair do |attr, param|
235
241
  value = self.send(attr)
236
- next if value.nil?
242
+ if value.nil?
243
+ is_nullable = self.class.openapi_nullable.include?(attr)
244
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
245
+ end
246
+
237
247
  hash[param] = _to_hash(value)
238
248
  end
239
249
  hash
@@ -3,10 +3,10 @@
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.17.8
6
+ The version of the OpenAPI document: 2.18.31
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -92,6 +92,12 @@ module VeloPayments
92
92
  }
93
93
  end
94
94
 
95
+ # List of attributes with nullable: true
96
+ def self.openapi_nullable
97
+ Set.new([
98
+ ])
99
+ end
100
+
95
101
  # Initializes the object
96
102
  # @param [Hash] attributes Model attributes in the form of hash
97
103
  def initialize(attributes = {})
@@ -406,7 +412,11 @@ module VeloPayments
406
412
  hash = {}
407
413
  self.class.attribute_map.each_pair do |attr, param|
408
414
  value = self.send(attr)
409
- next if value.nil?
415
+ if value.nil?
416
+ is_nullable = self.class.openapi_nullable.include?(attr)
417
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
418
+ end
419
+
410
420
  hash[param] = _to_hash(value)
411
421
  end
412
422
  hash
@@ -3,10 +3,10 @@
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.17.8
6
+ The version of the OpenAPI document: 2.18.31
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.1-SNAPSHOT
9
+ OpenAPI Generator version: 4.2.3-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -30,6 +30,12 @@ module VeloPayments
30
30
  }
31
31
  end
32
32
 
33
+ # List of attributes with nullable: true
34
+ def self.openapi_nullable
35
+ Set.new([
36
+ ])
37
+ end
38
+
33
39
  # Initializes the object
34
40
  # @param [Hash] attributes Model attributes in the form of hash
35
41
  def initialize(attributes = {})
@@ -171,7 +177,11 @@ module VeloPayments
171
177
  hash = {}
172
178
  self.class.attribute_map.each_pair do |attr, param|
173
179
  value = self.send(attr)
174
- next if value.nil?
180
+ if value.nil?
181
+ is_nullable = self.class.openapi_nullable.include?(attr)
182
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
183
+ end
184
+
175
185
  hash[param] = _to_hash(value)
176
186
  end
177
187
  hash