{"componentChunkName":"component---src-templates-redoc-operation-js","path":"/openapi/liquidityapi/overview/","result":{"data":{"contentItem":{"type":"redoc-info","link":"/openapi/liquidityapi/overview/","data":{"redocStoreStr":"{\"menu\":{\"activeItemIdx\":-1},\"definition\":{\"data\":{\"openapi\":\"3.0.0\",\"info\":{\"title\":\"Liquidity Management API\",\"version\":\"1.0.0\"},\"servers\":[{\"url\":\"https://sandbox-security-uat.finzly.io/api/openbanking\",\"description\":\"Authentication\"}],\"security\":[{\"oAuth2\":[\"roles\"]}],\"tags\":[{\"name\":\"Liquidity Management\",\"description\":\"Funding-account balance inquiry and fund transfer for internal liquidity/treasury operations.\\n\"}],\"paths\":{\"/v1/funding-accounts/{fundingAccount}/balance\":{\"get\":{\"tags\":[\"Liquidity Management\"],\"summary\":\"Get funding account balance\",\"description\":\"Returns the current balance of a funding account.\\n\\nRequires an existing, active calling organization.\\n\",\"operationId\":\"getFundingAccountBalance\",\"servers\":[{\"url\":\"https://sandbox-security-uat.finzly.io/api/payments-management\",\"description\":\"Authentication\"}],\"parameters\":[{\"name\":\"fundingAccount\",\"in\":\"path\",\"description\":\"Identifier of the funding account to look up.\",\"required\":true,\"style\":\"simple\",\"explode\":false,\"schema\":{\"maxLength\":20,\"minLength\":1,\"type\":\"string\"}}],\"responses\":{\"200\":{\"description\":\"**OK (200).** The funding account balance was retrieved.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"accountBalance\":{\"type\":\"number\",\"description\":\"Current balance of the funding account.\",\"example\":125000.55}}},\"examples\":{\"balance\":{\"summary\":\"Funding account balance\",\"value\":{\"accountBalance\":125000.55}}}}}},\"400\":{\"description\":\"Invalid path parameter, or a validation failure reported by the downstream\\nliquidity service.\\n\\n| Code | Meaning |\\n| --- | --- |\\n| `FUND_ACC_REQUIRED` | fundingAccount is missing or blank. |\\n| `FUND_ACC_MAX` | fundingAccount exceeds 20 characters. |\\n| `FUND_BALANCE_NOTFOUND` | The downstream liquidity service returned no balance for the account. |\\n\\nError codes are not a closed enumeration.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\",\"example\":\"FUND_ACC_REQUIRED\",\"enum\":[\"FUND_ACC_REQUIRED\",\"FUND_ACC_MAX\",\"FUND_BALANCE_NOTFOUND\"]},\"message\":{\"type\":\"string\"}}}}}},\"examples\":{\"fundAccRequired\":{\"summary\":\"FUND_ACC_REQUIRED\",\"value\":{\"errors\":[{\"code\":\"FUND_ACC_REQUIRED\",\"message\":\"fundingAccount is required.\"}]}},\"fundBalanceNotfound\":{\"summary\":\"FUND_BALANCE_NOTFOUND\",\"value\":{\"errors\":[{\"code\":\"FUND_BALANCE_NOTFOUND\",\"message\":\"Funding account balance could not be retrieved.\"}]}}}}}},\"401\":{\"description\":\"**Unauthorized (401).** The request does not contain a valid Bearer JWT access token.\\nNo response body is returned.\\n\"},\"403\":{\"description\":\"Caller lacks the required authority, or the calling organization is missing or inactive.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\"},\"message\":{\"type\":\"string\"}}}}}},\"examples\":{\"accessDenied\":{\"summary\":\"ACCESS_DENIED\",\"value\":{\"errors\":[{\"code\":\"ACCESS_DENIED\",\"message\":\"Access is denied. The caller does not have the required authority to invoke this endpoint.\"}]}},\"fundingAccountNotConfigured\":{\"summary\":\"ACCESS_DENIED - funding account not configured\",\"value\":{\"errors\":[{\"code\":\"ACCESS_DENIED\",\"message\":\"The funding account 81006162 is not configured.\"}]}},\"fundTokenleNotfound\":{\"summary\":\"FUND_TOKENLE_NOTFOUND\",\"value\":{\"errors\":[{\"code\":\"FUND_TOKENLE_NOTFOUND\",\"message\":\"The calling organization does not exist in the system.\"}]}},\"fundTokenleStatus\":{\"summary\":\"FUND_TOKENLE_STATUS\",\"value\":{\"errors\":[{\"code\":\"FUND_TOKENLE_STATUS\",\"message\":\"The calling organization is not in active status.\"}]}}}}}},\"500\":{\"description\":\"An unexpected error occurred while processing the request.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\"},\"message\":{\"type\":\"string\"}}}}}},\"example\":{\"errors\":[{\"code\":\"PAYMENT_ERROR_02\",\"message\":\"Failed to complete the task, please try again later\"}]}}}}}}},\"/v1/funding-accounts/transfers\":{\"post\":{\"tags\":[\"Liquidity Management\"],\"summary\":\"Transfer funds between accounts\",\"description\":\"Moves funds from a source account to a destination account for internal liquidity/treasury\\noperations.\\n\\nRequires an existing, active calling organization.\\n\\n**Idempotency.** The `Idempotency-Key` header is a mandatory UUID forwarded to the liquidity\\nservice. Duplicate-request handling is determined by that service; clients must handle error\\nresponses when retrying a request.\\n\",\"operationId\":\"transferFund\",\"servers\":[{\"url\":\"https://sandbox-security-uat.finzly.io/api/payments-management\",\"description\":\"Authentication\"}],\"parameters\":[{\"name\":\"Idempotency-Key\",\"in\":\"header\",\"description\":\"A client-generated key identifying the request, forwarded to the liquidity service.\",\"required\":true,\"style\":\"simple\",\"explode\":false,\"schema\":{\"type\":\"string\",\"minLength\":1,\"maxLength\":128}}],\"requestBody\":{\"required\":true,\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"required\":[\"externalReferenceId\",\"sourceAccount\",\"destinationAccount\",\"amount\"],\"properties\":{\"externalReferenceId\":{\"type\":\"string\",\"minLength\":1,\"maxLength\":50,\"pattern\":\"^[\\\\p{L}\\\\p{N} ~!@#$%&(){}|^\\\\[\\\\]/_\\\\-+=?\\\\\\\\;:\\\"'<>.,*]+$\",\"description\":\"Caller-supplied reference identifying this request.\",\"example\":\"EXT-REF-0001\"},\"sourceAccount\":{\"type\":\"string\",\"minLength\":1,\"maxLength\":20,\"description\":\"Account the funds are transferred from.\",\"example\":\"110088\"},\"destinationAccount\":{\"type\":\"string\",\"minLength\":1,\"maxLength\":20,\"description\":\"Account the funds are transferred to.\",\"example\":\"110099\"},\"amount\":{\"type\":\"number\",\"minimum\":0,\"exclusiveMinimum\":true,\"description\":\"Amount to transfer. Must be greater than zero.\",\"example\":5000.58}}},\"examples\":{\"transferRequest\":{\"summary\":\"Fund transfer request\",\"value\":{\"externalReferenceId\":\"EXT-REF-0001\",\"sourceAccount\":\"110088\",\"destinationAccount\":\"110099\",\"amount\":5000.58}}}}}},\"responses\":{\"202\":{\"description\":\"**Accepted (202).** The fund transfer request was accepted for processing by the liquidity service.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"transactionId\":{\"type\":\"string\",\"format\":\"uuid\",\"description\":\"Identifier assigned to the transfer by the liquidity service.\"},\"externalReferenceId\":{\"type\":\"string\",\"description\":\"Echo of the caller-supplied externalReferenceId.\"}}},\"examples\":{\"transferAccepted\":{\"summary\":\"Fund transfer response\",\"value\":{\"transactionId\":\"a5381764-07b3-4e27-9a99-05027740cfc0\",\"externalReferenceId\":\"EXT-REF-0001\"}}}}}},\"400\":{\"description\":\"Invalid request body or headers, or a validation/processing failure reported by the\\ndownstream liquidity service.\\n\\n| Code | Meaning |\\n| --- | --- |\\n| `FUND_IDEMPOTENCYKEY_REQUIRED` | Idempotency-Key header is missing or blank. |\\n| `FUND_IDEMPOTENCYKEY_LMT` | Idempotency-Key must be between 1 and 128 characters. |\\n| `FUND_EXTREFID_REQUIRED` | externalReferenceId is missing or blank. |\\n| `FUND_EXTREFID_MAX` | externalReferenceId exceeds 50 characters. |\\n| `FUND_EXTREFID_PATTERN` | externalReferenceId contains invalid characters. |\\n| `FUND_SRCACC_REQUIRED` | sourceAccount is missing or blank. |\\n| `FUND_SRCACC_MAX` | sourceAccount exceeds 20 characters. |\\n| `FUND_DESTACC_REQUIRED` | destinationAccount is missing or blank. |\\n| `FUND_DESTACC_MAX` | destinationAccount exceeds 20 characters. |\\n| `FUND_AMOUNT_REQUIRED` | amount is missing. |\\n| `FUND_AMOUNT_POSITIVE` | amount must be greater than zero. |\\n\\nError codes are not a closed enumeration.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\"},\"message\":{\"type\":\"string\"}}}}}},\"examples\":{\"fundAmountPositive\":{\"summary\":\"FUND_AMOUNT_POSITIVE\",\"value\":{\"errors\":[{\"code\":\"FUND_AMOUNT_POSITIVE\",\"message\":\"amount must be greater than zero.\"}]}},\"paymentErrorDuplicatereq\":{\"summary\":\"PAYMENT_ERROR_DUPLICATEREQ\",\"value\":{\"errors\":[{\"code\":\"PAYMENT_ERROR_DUPLICATEREQ\",\"message\":\"This is duplicate request so ignoring it\"}]}}}}}},\"401\":{\"description\":\"**Unauthorized (401).** The request does not contain a valid Bearer JWT access token.\\nNo response body is returned.\\n\"},\"403\":{\"description\":\"Caller lacks the required authority, or the calling organization is missing or inactive.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\"},\"message\":{\"type\":\"string\"}}}}}},\"examples\":{\"accessDenied\":{\"summary\":\"ACCESS_DENIED\",\"value\":{\"errors\":[{\"code\":\"ACCESS_DENIED\",\"message\":\"Access is denied. The caller does not have the required authority to invoke this endpoint.\"}]}},\"fundTokenleNotfound\":{\"summary\":\"FUND_TOKENLE_NOTFOUND\",\"value\":{\"errors\":[{\"code\":\"FUND_TOKENLE_NOTFOUND\",\"message\":\"The calling organization does not exist in the system.\"}]}},\"fundTokenleStatus\":{\"summary\":\"FUND_TOKENLE_STATUS\",\"value\":{\"errors\":[{\"code\":\"FUND_TOKENLE_STATUS\",\"message\":\"The calling organization is not in active status.\"}]}}}}}},\"409\":{\"description\":\"Conflict reported by the downstream liquidity service (for example, a duplicate\\nidempotency key reused with a different request body).\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\"},\"message\":{\"type\":\"string\"}}}}}},\"example\":{\"errors\":[{\"code\":\"PAYMENT_ERROR_DUPLICATEREQ\",\"message\":\"This is duplicate request so ignoring it\"}]}}}},\"422\":{\"description\":\"The downstream liquidity service could not process the transfer.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\"},\"message\":{\"type\":\"string\"}}}}}},\"example\":{\"errors\":[{\"code\":\"PAYMENT_ERROR_01\",\"message\":\"Transfer could not be processed.\"}]}}}},\"500\":{\"description\":\"An unexpected error occurred while processing the request.\\n\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"errors\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"code\":{\"type\":\"string\"},\"message\":{\"type\":\"string\"}}}}}},\"example\":{\"errors\":[{\"code\":\"PAYMENT_ERROR_02\",\"message\":\"Failed to complete the task, please try again later\"}]}}}}}}}},\"components\":{\"securitySchemes\":{\"oAuth2\":{\"type\":\"oauth2\",\"description\":\"Finzly Connect API uses OAuth 2.0 authcodeflow with PKCE for end user authorization or implicit grant flow for system API accounts. A support request to Finzly is required to use implicit grant flow.\",\"flows\":{\"authorizationCode\":{\"authorizationUrl\":\"https://sandbox-security-uat.finzly.io/auth\",\"tokenUrl\":\"https://sandbox-security-uat.finzly.io/auth/realms/BANKOS.UAT.SANDBOX.CUSTOMER/protocol/openid-connect/token\",\"scopes\":{\"roles\":\"manage\"}}}}}}}},\"options\":{\"hideTryItPanel\":false,\"pagination\":\"item\",\"generateCodeSamples\":{\"languages\":[{\"lang\":\"curl\"},{\"lang\":\"JavaScript\"},{\"lang\":\"Node.js\"}]},\"disableSearch\":true,\"ctrlFHijack\":false,\"disableSidebar\":true,\"theme\":{\"overrides\":{\"DownloadButton\":{\"custom\":\"\"},\"NextSectionButton\":{\"custom\":\"\"}},\"codeBlock\":{\"tokens\":{}},\"schema\":{\"constraints\":{},\"examples\":{}},\"rightPanel\":{\"textColor\":\"#eeeeee\"},\"typography\":{\"heading1\":{},\"heading2\":{},\"heading3\":{},\"rightPanelHeading\":{}}}}}","redocHasSecurityDefinitions":false,"redocInfoPageLink":"","redocItemId":"overview","redocHasInfoPage":true,"settings":{"generateCodeSamples":{"languages":[{"lang":"curl"},{"lang":"JavaScript"},{"lang":"Node.js"}]}},"requestLogin":false,"lastModified":"2026-10-22T15:04:52.000Z"},"seo":{"title":"Liquidity Management API"}}},"pageContext":{"id":"ab8b0bf4-0aa5-51bc-8b33-52c0ed64cccdoverview__redocly content/openapi/liquidityapi/overview/","seo":{"title":"Liquidity Management API","description":null,"image":"","keywords":null,"jsonLd":null,"lang":null,"siteUrl":null},"pageId":"openapi/liquidityAPI.page.yaml#overview","pageBaseUrl":"/openapi/liquidityapi","type":"redoc-info","toc":{"enable":true,"maxDepth":4,"headings":null},"data":{},"catalogInfo":null,"link":"/openapi/liquidityapi/overview/","sidebarName":"training","isLanding":false,"showPrevButton":null,"showNextButton":null,"apiVersions":[{"definitionId":"liquidityApi","id":"liquidityApi","title":"liquidityApi","isDefault":true,"apiId":null}],"apiVersionId":null,"isDefaultApiVersion":true}},"staticQueryHashes":["1123603147","1302185487","1344209882","1398840060","1520077861","1975142765","2667623876","2950305614","3240152602","3743992808","561138138"]}