> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anchorage.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Understand how deposits, transfers, and withdrawals work within Anchorage Digital's security model.

export const Check = () => <Icon icon="check" color="#049159" />;
export const Cross = () => <Icon icon="x" color="#dd0000" />;

At Anchorage Digital, every movement runs through the same controls that secure the assets themselves: segregated, HSM-secured vaults governed by policy-based quorum. The money-movement APIs are built so you can automate and scale movement without stepping outside that security model.

Funds come **in** through a deposit, sit in your wallets and vaults, and move **out** in one of two ways. Which way you use depends on two things: how much per-transaction control you want, and where the funds are going.

## Start here

* **Receive funds** — Create wallets and deposit addresses to bring digital assets into Anchorage Digital. See [Deposit](/knowledge-base/porto/developers/move-money/deposit).
* **Transfer** — Move assets between your wallets or to a trusted destination, without per-transaction quorum. See [Crypto transfer](/knowledge-base/porto/developers/move-money/transfer/crypto).
* **Withdraw** — Move assets with quorum approval on every request. See [Crypto withdrawal](/knowledge-base/porto/developers/move-money/withdraw/crypto).

## The mental model

A deposit is the only way funds enter Anchorage Digital, and receiving never requires quorum. Everything else is a movement out of—or between—your holdings. There are exactly two kinds, split by approval model.

<Frame>
  <img src="https://mintcdn.com/deployment-4/acPNZHOVq46gMy_P/knowledge-base/images/diagrams/new-move-money-mental-model.svg?fit=max&auto=format&n=acPNZHOVq46gMy_P&q=85&s=f1cc8fb9d51a95d82862253da0b266eb" alt="Diagram showing funds flowing from Deposit into Your wallets and vaults, then branching to Transfer (no per-transaction quorum) and Withdrawal (quorum on each request)." width="760" height="370" data-path="knowledge-base/images/diagrams/new-move-money-mental-model.svg" />
</Frame>

**Transfers** move assets without quorum approval on each request, which suits recurring or high-frequency flows. In exchange, they require one-time setup: an allowlisted destination and a permission group scoped to the operation.

**Withdrawals** require quorum approval on every request, giving you control over each individual movement through your vault policies.

Both transfers and withdrawals can go to an **internal** wallet you own or to an **external** destination outside Anchorage Digital. External movements add one requirement: the destination must be an allowlisted trusted destination.

<Note>
  This guide assumes you're familiar with quorum and approval rules. If you're not, start with [admin policies](/knowledge-base/porto/policies/admin-policies).
</Note>

## Where quorum applies

| Action                                   | Quorum on each request?                         |
| :--------------------------------------- | :---------------------------------------------- |
| Deposit (receive)                        | <Cross />                                       |
| Transfer (internal or external)          | <Cross /> (approval is front-loaded into setup) |
| Withdrawal (internal or external)        | <Check />                                       |
| Adding or removing a trusted destination | <Check />                                       |

## Support at a glance

Deposits are supported for digital assets. Trusted destinations for digital assets can be managed via API and the web platform.

### Trusted destination required

Trusted destinations (allowlisted addresses) let you pre-approve an external destination for use across the iOS app, web dashboard, and APIs.

|                    | Internal transfer API | External transfer API | Withdrawal API |
| :----------------- | :-------------------- | :-------------------- | :------------- |
| **Digital assets** | <Cross />             | <Check />             | <Cross />\*    |

<Warning>
  If you want to restrict Withdrawal API destinations to only trusted/allowlisted addresses, reach out to your point of contact to enable this.
</Warning>

## Before you move money: prerequisites

Internal movements work with standard API access. External movements—external transfers and withdrawals to new destinations—require one-time setup, and quorum is required at several of these steps.

1. **Allowlist a trusted destination** — Pre-approve the external address. Adding a trusted destination requires quorum approval. See [Trusted destinations](/knowledge-base/porto/developers/move-money/setup/trusted-destinations).
2. **Configure external transfer permissions** — Enable external transfers on the permission group the key uses. This permission is configurable: scope it to specific trusted destinations, or allow any quorum-approved trusted destination. See [Permission groups and API keys](/knowledge-base/porto/developers/move-money/setup/permission-groups).
3. **Create and activate an API key** — API keys with external transfer or withdrawal permissions require quorum approval before they can be used. See [Authentication](/knowledge-base/porto/developers/move-money/setup/authentication).

<Info>
  Keep internal and external transfer permissions in separate permission groups and API keys. Do not combine them.
</Info>

## Related

* [Transfers vs. withdrawals](/knowledge-base/porto/developers/move-money/transfers-vs-withdrawals) — The full comparison of the two approval models.
* [Trusted destinations](/knowledge-base/porto/developers/move-money/setup/trusted-destinations) — Allowlist external addresses.
* [Network and gas fees](/knowledge-base/porto/developers/network-gas-fees) — How blockchain fees work.
