# Forced transfer

Source: https://docs.settlemint.com/docs/operators/asset-servicing/forced-transfer
Execute custodian-only exception transfers for recovery, legal, or compliance cases.



A forced transfer moves tokens from one holder address to another without the
source holder's signature. It exists for exceptional recovery, legal, or
compliance cases where an authorised custodian must intervene on an asset.

Treat forced transfer as a governed operator workflow. The smallest safe test is
to open the forced-transfer action for a non-production asset, confirm that the
source holder, recipient, amount, and evidence are available, and stop before
submitting unless the exception has been approved.

<Callout type="warn" title="Custodian-only exception workflow">
  Forced transfers are not a routine transfer path. Bypassed controls include holder authorization, normal transfer initiation, standard freeze restrictions, and configured compliance-module transfer checks.

  At the contract layer, the asset pause state alone does not reject the action. The Asset Console can still make the action unavailable while an asset is paused.

  Forced transfers do not bypass recipient registration. Run the action through an operator with the Custodian role, send assets only to verified recipients, and keep the legal or recovery evidence with the operation record.
</Callout>

## When to use a forced transfer [#when-to-use-a-forced-transfer]

Use forced transfer only when the custodian has authority to resolve an
exception and the recipient is known before submission.

| Case                           | Example                                                                      |
| ------------------------------ | ---------------------------------------------------------------------------- |
| Court or insolvency order      | Move tokens to a court-appointed trustee or controlled account.              |
| Estate handling                | Move tokens from a deceased holder to a verified beneficiary wallet.         |
| Sanctions or compliance action | Move tokens out of an address that can no longer hold the asset.             |
| Lost wallet recovery           | Move tokens from a verified lost wallet to the holder's new verified wallet. |
| Operational correction         | Correct a documented exception approved by the asset operator.               |

Do not use forced transfer to avoid normal holder approval, compliance review,
or operational friction. If the holder can initiate the transfer and the
recipient passes the usual checks, use the standard transfer flow instead.

## Prerequisites [#prerequisites]

Before you start, make sure you have:

* the Custodian role for the asset
* a source holder address with enough token balance
* a registered and verified recipient address
* the approved transfer amount
* supporting evidence, such as a court order, probate document, sanctions case
  record, or account-recovery approval
* the internal approval required by your custody, compliance, and operational
  procedures

## What the operation does [#what-the-operation-does]

A forced transfer debits the source holder and credits the recipient in one
custodian-authorised transaction. It is deliberately different from a normal
holder transfer.

| Check or control                          | Normal transfer | Forced transfer                                                         |
| ----------------------------------------- | --------------- | ----------------------------------------------------------------------- |
| Holder signature or approval              | Required        | Not required                                                            |
| Custodian role                            | Not required    | Required                                                                |
| Standard freeze restrictions              | Apply           | Bypassed                                                                |
| Asset pause state                         | Blocks transfer | Not rejected at contract layer; console availability can still be gated |
| Configured compliance can-transfer check  | Applies         | Bypassed                                                                |
| Recipient registration and identity check | Applies         | Applies                                                                 |

The recipient check is the key boundary: a forced transfer can override the
source holder's participation, but it still sends tokens only to a registered
recipient for the asset.

## Steps [#steps]

<Steps>
  <Step>
    ### Open the forced-transfer action [#open-the-forced-transfer-action]

    Go to **Asset Management**, select the asset, then choose **Manage Asset** >
    **Forced transfer**.

    ![Manage Asset menu with Forced transfer](/docs/asset-servicing/forced-transfer-menu.webp)
  </Step>

  <Step>
    ### Check the exception before entering values [#check-the-exception-before-entering-values]

    Confirm that the case is approved, the recipient is registered, and the source
    holder has enough balance. If any part is missing, stop and resolve it before
    using the action.
  </Step>

  <Step>
    ### Enter transfer details [#enter-transfer-details]

    Fill in:

    * **From address**: the holder address losing tokens
    * **To address**: the verified recipient address
    * **Amount**: the token amount to move

    ![Forced transfer form](/docs/asset-servicing/forced-transfer-form.webp)
  </Step>

  <Step>
    ### Review and authenticate [#review-and-authenticate]

    Review the source address, recipient address, amount, and confirmation text.
    Authenticate with the required operator factor, such as PIN or OTP, and submit
    only when the form details match the approved exception case.
  </Step>

  <Step>
    ### Record the evidence [#record-the-evidence]

    Record the transaction hash, approving operator, reason for the exception, and
    supporting legal or recovery evidence. Keep the record where auditors can match
    the business approval to the on-chain movement.
  </Step>
</Steps>

## Production checks [#production-checks]

Forced transfers need stronger operational discipline than routine transfers.
Before using them in production:

* Limit the Custodian role to approved operators and review the assignment
  regularly.
* Define which evidence is required for each exception type.
* Decide who can approve the operation before the custodian submits it.
* Test the workflow on a non-production asset, including recipient rejection and
  insufficient-balance cases.
* Confirm how your deployment handles paused assets in the Asset Console and in
  contract-level emergency procedures.
* Monitor transaction status after submission and retain the operation record
  with the case file.
* If an integration retries the API submission, use the forced-transfer API's
  idempotency handling so a network retry does not create a duplicate queued
  operation.

## Troubleshooting [#troubleshooting]

| Issue                | What to check                                                                                                                                             |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Option not visible   | Verify that your operator account has the Custodian role for the asset and that the Asset Console makes the action available for the current asset state. |
| Insufficient balance | Check the source holder's balance before submitting the transfer.                                                                                         |
| Recipient rejected   | Verify that the recipient address is registered and eligible for the asset.                                                                               |
| Transaction reverts  | Check the source balance, recipient identity status, gas, wallet verification, and custody policy.                                                        |
| Asset is paused      | Pause can block this Asset Console workflow. Unpause the asset first, or follow your deployment's contract-level emergency procedure if one is approved.  |
| Evidence missing     | Stop the operation until the legal, recovery, or compliance evidence is attached to the case record.                                                      |

## Related operations [#related-operations]

The Custodian role also enables freeze, unfreeze, and wallet-recovery
operations. For API use, see [Execute forced transfers through the
API](/docs/developers/asset-servicing/forced-transfer) and
[Token holders and transfers](/docs/developers/api-integration/token-holders-transfers).
For reconciliation after the write, see [Token
events](/docs/developers/api-integration/token-events). For the
normal compliance path, see [Compliance transfer
flow](/docs/architects/flows/compliance-transfer). For permissions, see
[Per-Asset RBAC](/docs/architects/components/asset-contracts/rbac).
