Custody manages the organisation's custody provider catalogue. Add provider configurations, choose which ones accept new accounts, and manage their credentials and execution health. Each existing custody account keeps its provider binding when you add or turn off another configuration.
Account creation and execution have separate controls. Turning off New accounts removes a configuration from account creation.
Quarantine execution stops signing and sending transactions through that configuration and requires an audit reason.
The “Custody” page on the “Providers” tab, with “Add provider” at the top.
The “Platform key store” card shows its execution health and the rows “Availability” with “New accounts”, “Investors” with “Default provider” and “Offered to investors”, and “Connection” with “Networks” and “Signing”, then “Latest audit event”. The card ends with “Quarantine execution” and “Delete provider”.
Steps
Review the provider catalogue
In the sidebar, open
CustodyunderBusiness operations. The page opens onProviders. An organisation owner or platform administrator also seesCases, even when custody operations are off. Cases lists organisation operations cases with acknowledge and resolve controls and notes. When custody operations are on, theReconciliationtab sits beside it. See Custody reconciliation. Each configuration shows its provider, network scope, signing type, execution health, and availability for new accounts.Default for new investorsidentifies the configuration offered during investor onboarding.A configuration can be available for new accounts while its execution health needs attention. Check both states before directing participants to it.
Add a provider configuration
Select Add provider at the top of the page. In the sheet, fill the form in this order:
- Provider. Select the provider. Each one shows a line that says where the keys are held and who signs, with a “Self-custody” or “Built-in” badge.
- Network identifier. For an EVM network the identifier is a positive integer chain ID, and the platform refuses anything else with “Enter the network identifier as a positive whole number (the EVM chain ID).”
- For a provider that DALP manages, choose the “Ledger” and the Credential source: “Platform vault” or “Organisation credentials”. The onboarding custody provider step uses the same form, without the network field, and labels the source “Credentials” with “Held by the platform” and “Supplied by this organisation”.
- The provider's own fields. Supply the labelled fields the form shows for that provider. Credential fields are masked and write-only: use the show control to check what you typed. The platform never displays a stored credential. A provider without a known field set uses a masked key and value editor. A browser wallet does not require server-held signing credentials.
- For a configuration on your organisation's own credentials, you can select Exclusive to this organisation. Keys from an exclusive configuration are used only in this organisation, and accounts from other organisations cannot be used with it: a member who already has an account in another organisation creates a new one here. You choose this when you add the configuration and cannot change it afterwards. The option is not offered for platform credentials or a browser wallet, and the provider card shows the setting read-only.
- Reason (optional). Up to 1,000 characters, recorded in the audit trail.
- Select Add and probe provider. The platform checks the configuration before making it available for account creation. If the probe fails, correct the reported network, connection, or credential issue before trying again.
Privy and Dynamic offer embedded wallets, which a member creates inside the Console and signs with personally. Neither stores a signing credential on the platform. Each one asks for its own fields:
- Privy tenant chooses whose account the wallets live in: “Platform-managed Privy” or “Organisation Privy tenant”. Privy then needs the “Privy app ID”, and “Privy client ID (optional)” can stay empty.
- Dynamic tenant chooses whose account the wallets live in: “Platform-managed Dynamic” or “Organisation Dynamic environment”. Dynamic then needs the “Dynamic environment ID”.
Once the configuration is enabled for new accounts, a member creates the wallet with Add wallet, as Manage the participant's custody accounts describes.
The “Add provider” sheet over the “Custody” page.
Under “Provider” is the list of providers, each with a line that says where the keys are held and who signs. Below it are the “Network identifier” field and the “Add and probe provider” button.
For Utila, enter the fields that Utila fields lists.
Switch new accounts on or off
Use the New accounts switch in the “Availability” row of the configuration. Its value reads “Available”, “Paused while unhealthy” or “Disabled”. A configuration can be available for new accounts while its execution health needs attention. Check both states before directing participants to it.
Switching “New accounts” off on a configuration that is offered to investors or is the default opens “Disable new accounts?”. For an offered configuration it says “This provider is offered to investors. Disabling new accounts also withdraws it from investors. Enabling new accounts later does not offer it again. You must turn on ”Offered to investors“ yourself.” For the default it adds that the switch removes it as the default and the owner must designate the default provider again. Select Disable and withdraw to continue or “Cancel” to keep it.
Make a provider the default and offer it to investors
The Investors row holds two settings:
- Default provider reads “Default for new investors” on the default and “Not the default” on the others, which carry “Make default”. To use a healthy, enabled configuration during investor onboarding, select “Make default”.
- Offered to investors reads “Investors can choose it” or “Not offered”. The default is always offered to investors, and its “Offered to investors” switch is locked with “Always offered while it is the default investor provider”.
Both “Make default” and “Offered to investors” stay locked with “Available once the provider is healthy and open to new accounts.” until the configuration reads “Healthy” and “New accounts” reads “Available”.
To let investors choose another healthy configuration enabled for new accounts, turn on Offered to investors on it. When more than one configuration is offered, the investor portal asks the investor to choose during onboarding between an embedded wallet, a browser wallet and a managed account, and suggests the default. A Privy configuration is offered as the embedded wallet. Any other embedded-wallet configuration is listed as not available and cannot be selected. When only the default is offered, the investor goes straight to it.
A configuration that is not offered is never listed, and the platform refuses a participant that an investor creates on it. An Owner of the active organisation or a platform administrator can still create a participant's managed account on it, provided it is healthy, enabled for new accounts, and lists the account's network. When the organisation offers no configuration to investors, any member can create managed accounts on a healthy configuration that is enabled for new accounts, for the participants they create. Turning off new accounts on a configuration withdraws its offer.
Changing this selection does not move existing accounts to another provider. Check Default for new investors after saving.
Add a network to a managed provider
You cannot remove a network from a configuration after you add it, so add a chain only when the configuration will serve it.
In the “Connection” row of a configuration whose “Signing” reads “Managed by DALP” and whose provider supports EVM, select Add network beside “Networks”. Enter the “EVM chain ID” and select “Add network”, or “Cancel”.
An invalid entry reads “Enter a positive whole number.” and a success toasts “Network added to custody provider”. The platform checks that the provider can sign on that network before adding it. Existing networks and accounts stay in place. “Networks” shows a network the organisation runs or may add by its name, and any other network by its chain ID. Adding the same chain again makes no change. You can then select the network on Networks, under “Infrastructure” in the sidebar.
For Utila, the platform checks the chain against the networks stored in the configuration's Networks field, not against anything you type in this step. “Add network” is refused for a chain that has no line there. To add a chain to a Utila configuration, first rotate the credentials with the new chain ID network name line added to “Networks”, as Rotate managed credentials describes, then enter the chain ID here and select “Add network”.
Use the provider actions menu
The Provider actions menu in the card header holds four actions:
- Test connection checks the provider connection.
- Reconcile wallet roles reapplies, at the provider, the role the platform records for each wallet of that configuration, so a custodian policy can tell an investor wallet from an infrastructure wallet. On DFNS, Fireblocks and Ripple Custody it also renames each wallet that still carries a name the platform chose, so the name states the wallet's role and the organisation's current name. On Ripple Custody it rewrites the account description for that role too, and each rename waits for approval under your Ripple policies like any other account intent. A wallet name that a person chose stays as it is.
- Rotate credentials is offered only for a configuration whose credentials DALP manages.
- Copy configuration ID toasts “Configuration ID copied”.
Rotate managed credentials
Open the “Provider actions” menu and select Rotate credentials. The sheet “Rotate credentials for <provider>” says “Replace credentials at the provider. The configuration is probed after rotation.” and has no reason field.
Fill in only the metadata and credential fields you want to change. A field left empty reads “Leave empty to keep the current value.” and keeps its stored value. “Replace every credential” appears only for a configuration on organisation credentials, not for the platform vault, and replaces the whole credential set with the fields you enter (“Enter the whole credential. Optional fields left empty are removed.”). Then select Probe and rotate credentials. The platform probes the replacement against the provider and saves it only when the probe succeeds. A failed probe leaves the current credentials in place. Rotation preserves the configuration's provider and credential source.
For Utila, the rotation form opens with the stored metadata, Networks included, and the platform saves the fields as the form holds them when you rotate. Edit “Networks” to add, change or remove a chain line. A chain with no line has no signing lane, so do not remove the line of a chain that has accounts.
To add a chain: bind the chain in “Networks”, leave every credential field empty so the stored key stays, and rotate. The platform probes with the new “Networks” before it saves them. Then select “Add network” for the chain. Fill in only the key, standby key or “Signing agent secret” you replace, and leave the others empty to keep their stored values.
Select “Replace every credential” to remove the optional standby key or “Signing agent secret”: the credentials you enter then replace the whole set.
To undo a rotation, rotate again with the earlier values. Each rotation is probed before it is saved, so the earlier values must still work in the provider.
If another administrator rotates the same configuration at the same time, a version conflict can reject one request. Refresh the configuration and check the saved state before retrying. Do not assume that an error means no change was saved.
Quarantine or recover execution
Select Quarantine execution in the danger area at the foot of the card. The sheet “Quarantine <provider>” asks for the “Audit reason for quarantine or recovery” (“Recorded in the audit log.”). “Quarantine execution” stays unavailable until the reason is not empty, and “Cancel” closes the sheet. The card then shows the notice “Execution is quarantined and signs nothing” and the health reads “Quarantined”. Each notice names its provider in its title, and a screen reader announces “Recover execution” together with that title, so several quarantined providers stay apart.
Correct the underlying incident, then select Recover execution on that notice, enter a new reason and confirm in “Recover <provider>”. The Console probes the provider first and recovers the configuration only when the probe succeeds. When the probe fails, it reads “The provider failed the probe, so execution stays quarantined. Fix the provider, then recover again.”
Delete a provider
Delete provider sits beside “Quarantine execution” in the danger area. The sheet “Delete <provider>” says “Deletes the configuration. The platform refuses while any account or custody record still uses it.” Select “Delete provider” to confirm. The Console toasts “Unused provider deleted”. There is no reason field.
Utila fields
Utila custody appears in the provider list only when the deployment operator has switched Utila on with custody., as Prerequisites describes. If the provider list does not show it, ask the platform operator who runs the deployment to switch it on. Before you start, the Utila vault admin creates the service account and the platform operator lists the DALP egress addresses, as Set up Utila custody describes. Then enter:
Network identifier names the network the configuration serves. “Networks” maps every network the configuration will serve to its Utila network name, so list each of them there. The form marks every optional field with (optional) after its label. List the chain from “Network identifier” in “Networks” too. A chain with no Utila network in “Networks” is refused, and the refusal names the fix. The form shows “Enter one network per line: a chain ID, a space, then the network name.” for a line that does not follow the format.
Provider card
Each configuration is a card, named for its provider. From the top:
The latest audit event names one of these actions:
- Quarantined
- Recovered
- Custodian tenant recorded
- Custodian tenant backfilled
- Designated as the investor provider
- Offered to investors
- Withdrawn from investors
- Designation as the investor provider removed
- Switched off for new accounts
- Switched on for new accounts
A quarantine or recovery also shows, in brackets, the reason typed for it. Quarantine, recovery, designation as the investor provider, offering the configuration to investors or withdrawing it, and switching new accounts off or on each record an audit event. Disabling new accounts on a configuration that was offered to investors, or that was the investor provider, also records that it was withdrawn or is no longer the investor provider. Adding a configuration, rotating its credentials and deleting it are recorded in the Audit trail with the configuration before and after. They do not appear under Latest audit event.
Custody providers and the custody gateway
The provider configurations on this page hold the platform's own custody accounts. They do not create gateways, enable coins or grant gateway roles. A client's custody gateway is set up on the custody gateway add-on under “Asset lifecycle”. A coin set to wait for custody on the add-on holds the client's receipts until the custodian accepts the coins. Set up the custody gateway says how, Create a client gateway opens one, and Review deposits and withdrawals covers the records it produces.
Troubleshooting
No custody providers enabled
Add a provider configuration and confirm that it is healthy and available for new accounts. Participants need an available configuration before they can create custody accounts.
A credential rotation fails
Read the reported error before retrying. Check the field values, the provider connection and the network scope. Rotation cannot change the provider or credential source. Create a separate configuration for that change.
Disabling new accounts did not stop existing accounts
This control affects account creation. Use quarantine when execution through the configuration must stop, and record the reason. Existing accounts retain their provider binding.
Add provider or Add network is refused with CUSTODY_PROVIDER_CONFIG_INVALID
The platform answers HTTP 422 when the provider has no signing lane on the network. A caller error does not clear on retry. For Fireblocks, the message says either that the workspace lists no blockchain with that chain ID, in which case you ask Fireblocks to enable it for the workspace, or that Fireblocks has retired the native asset of that chain, in which case you choose a custody provider that signs on it. Probe the provider configuration again after the change. When a participant creates an account on a network that the selected provider does not serve, the same code carries the requested network and the networks the provider does serve.
Delete provider is rejected
The platform checks whether the configuration is still in use before deleting it. Keep the configuration while accounts depend on it. Turn off new accounts or quarantine execution when that is the required outcome.
For historical tab names and their current operator surfaces, read Legacy custody books. The reference explains which journal tasks are retired and where Cases, destination review and reconciliation remain.