# Restrict funds Restricting funds is a feature that enables financial institutions to block full or partial amounts in their clients’ accounts. This capability is essential in situations where specific funds must be excluded from the general asset pool available to unsecured creditors, ensuring they receive priority handling or special protection. The solution supports multiple approaches, allowing institutions to temporarily restrict access to account balances—either in whole or in part—during judicial or regulatory events such as liquidation or receivership. Because financial institutions need to act instantly, restricted funds empowers banks to freeze funds at a moment’s notice and later lift the restriction, restoring account access whenever required. # Feature highlights With restricted funds, you can transfer funds between the available balance and restricted funds in either direction. You can perform these operations through API requests or file uploads. Restricted funds can function on its own or alongside the [operation block](https://developers.pismo.io/pismo-docs/docs/operation-block) feature. In some scenarios—such as FDIC receivership—an institution might first need to block all operations across accounts within a division, program, or organization before applying specific fund restrictions. These endpoints let you restrict and release funds. | Endpoint | Description | | :---------------------------------------------------------------- | :------------------------------------------------------------------------------------------- | | [Create fund restriction](https://developers.pismo.io/pismo-docs/reference/post-corporate-v1-restricted-funds) | Specifies the amount to be restricted from an account. | | [Get fund restriction](https://developers.pismo.io/pismo-docs/reference/get-corporate-v1-restricted-funds) | Returns detailed information about a single restricted funds request by restricted funds ID. | | [List fund restrictions](https://developers.pismo.io/pismo-docs/reference/list-corporate-v1-restricted-funds) | List all restricted funds. | | [Release restrictions](https://developers.pismo.io/pismo-docs/reference/corporate-v2-list-operation-blocks) | Releases fund restrictions using a restricted funds ID. | ## File-based processing Restrict funds supports file uploads, enabling you to submit a single UTF-8 NDJSON file containing multiple [restrict funds](https://developers.pismo.io/pismo-docs/reference/post-corporate-v1-restricted-funds) and [release restriction](https://developers.pismo.io/pismo-docs/reference/patch-corporate-v1-restricted-funds) actions, rather than making separate API calls. For more information, refer to [ File-based processing](https://developers.pismo.io/pismo-docs/docs/file-based-processing). # Processing codes Each processing code represents a specific operation that impacts the balance by transferring funds between `available_balance` and `restricted_funds`. The default processing codes listed in this table define how each operation is handled internally and the type of transaction that is generated. | Processing Code | Description | Balance impact | Link | | --------------- | ---------------------------- | -------------- | ---------------------------------------- | | `PSM045` | `RESTRICT FUNDS` | `-1` | Linked to PC with balance impact = `-1`. | | `PSM046` | `RESTRICT FUNDS CANCEL` | `-1` | Linked to PC with balance impact = `1`. | | `PSM047` | `RELEASE RESTRICTION` | `-1` | Linked to PC with balance impact = `-1`. | | `PSM048` | `RELEASE RESTRICTION CANCEL` | `-1` | Linked to PC with balance impact = `-1`. | **Note** The values `-1` and `1` indicate the type of operation, where\ `1` = credits (account credited).\ `-1` = debits (account debited). # Example This example shows when a restriction is placed on your available balance, the amount is deducted from `available_balance` and transferred to `restricted_funds`. ### Before restriction ```json { "account_id": "ACCOUNT-A", "division_code": "my-division-code", "program_id": 1111, "status": "NORMAL", "external_account_id": "12345679", "currency_numeric_code": "840", "currency_alphabetic_code": "USD", "document_number": "9999999", "account_creation_datetime": "2025-09-04T00:00:00.000Z", "available_balance": 100, "earmarked_balance": 0, "overdraft_limit": 0, "ledger_balance": 100, "book_balance": 100, "value_dated_balance": 100, "future_dated_credits_balance": 0, "future_dated_debits_balance": 0, "uncleared_funds": 0, "uncleared_checks_balance": 0, "restricted_funds": 0 } ``` ### After restriction ```json { "account_id": "ACCOUNT-A", "division_code": "my-division-code", "program_id": 1111, "status": "NORMAL", "external_account_id": "12345679", "currency_numeric_code": "840", "currency_alphabetic_code": "USD", "document_number": "9999999", "account_creation_datetime": "2025-09-04T00:00:00.000Z", "available_balance": 0, "earmarked_balance": 0, "overdraft_limit": 0, "ledger_balance": 100, "book_balance": 100, "value_dated_balance": 100, "future_dated_credits_balance": 0, "future_dated_debits_balance": 0, "uncleared_funds": 0, "uncleared_checks_balance": 0, "restricted_funds": 100 } ``` However, when the restriction is lifted, the process is reversed: funds are moved from `restricted_funds` back to `available_balance`, making them available again for transactions. This mechanism provides precise control over fund availability, supporting operational rules and client-specific configurations.