# Create an asset with the Asset Designer

Source: https://docs.settlemint.com/docs/operators/user-guides/asset-creation/create-asset
Use the DALP Asset Designer wizard to choose an instrument template, configure compliance controls, set initial roles, and deploy a tokenized asset.



The DALP Asset Designer is the console workflow for creating a tokenized asset. The wizard starts from a published instrument template, then collects asset basics, template fields, compliance controls, initial asset roles, and wallet verification.

This guide is for operators using the web interface. If you need to automate the same workflow, use the [API guide for asset creation](/docs/developers/developer-guides/asset-creation/create-asset).

The Asset Designer wizard guides you through selecting an asset class, choosing a published instrument template, configuring any template fields, and enabling compliance modules.

**Common use cases:**

* **[Bond issuance](/docs/operators/user-guides/asset-creation/create-bond)** - Create fixed-income securities with maturity dates, coupon payments, treasury funding, and redemption controls
* **Equity tokenization** - Issue shares with voting rights and dividend distribution
* **Fund launch** - Create investment fund units with NAV tracking
* **Stablecoin creation** - Deploy collateral-backed stable value instruments
* **Deposit certificates** - Tokenize bank deposits or cash equivalents
* **[Precious metal tokenization](/docs/operators/user-guides/asset-creation/create-precious-metal-asset)** - Configure metal-backed assets with weight, purity, storage, and valuation fields
* **Real estate fractionalization** - Divide property ownership into tradeable fractions

## Prerequisites [#prerequisites]

* **Asset manager role** - You must have the Asset manager role assigned on the system access manager
* **Completed onboarding** - Your account must be fully onboarded with a verified identity
* **Wallet setup** - Your wallet must be configured with PIN or OTP verification
* **Instrument template available** - A published instrument template for your desired asset class must be available and backed by a usable token factory

## Asset classes and templates [#asset-classes-and-templates]

The Asset Designer uses the asset classes, published instrument templates, and usable token factories configured for your system. DALP shows only asset classes that have at least one usable published template.

If your system has exactly one available asset class, the wizard selects it for you and starts at template selection.

System configurations commonly group templates into these classes:

| Asset class      | Common templates            | Description                                             |
| ---------------- | --------------------------- | ------------------------------------------------------- |
| Fixed Income     | Bond                        | Debt securities with maturity dates and fixed payments  |
| Flexible Income  | Equity, Fund                | Variable return assets like shares and investment funds |
| Cash Equivalent  | Stablecoin, Deposit         | Stable value assets pegged to fiat currencies           |
| Real World Asset | Precious Metal, Real Estate | Tokenized physical assets and property ownership        |

If your organization has custom asset classes or templates, use the names and fields shown in your console as the source of truth.

## How composition works [#how-composition-works]

An Asset Designer deployment combines four layers:

| Layer                        | What it decides                                                                                          | When you configure it                                                                                                               |
| ---------------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Asset class                  | The business category shown in the console, such as Fixed Income or Real World Asset.                    | Select it first so the wizard can show matching published templates.                                                                |
| Instrument template          | The deployable asset type, required token features, template defaults, and any template metadata fields. | Select it after the asset class. Disabled templates name the missing prerequisite token when one is required.                       |
| Asset basics and metadata    | The asset name, symbol, decimals, jurisdiction, and any template-specific fields.                        | Complete these before compliance because the selected template and asset type determine which details the wizard needs.             |
| Compliance and initial roles | The transfer, holder, minting, redemption, and operational controls applied to the asset.                | Configure them before the summary so the final deployment includes both policy controls and the wallets that can operate the asset. |

Use this order to avoid mixing concepts: the template defines what the asset can be, metadata describes the specific instrument, compliance modules decide who may interact with it, and initial roles decide who can operate it after deployment.

## Steps [#steps]

<Steps>
  <Step>
    ### Open the asset designer [#open-the-asset-designer]

    Click **Asset designer** in the sidebar under **Asset management** to open the Asset Designer wizard.

    The wizard runs as a routed flow under `/asset-designer`. Each step has its own URL, so browser Back and Forward move between Asset Designer steps instead of leaving the flow. If you refresh the page while creating an asset, the wizard restores your in-progress values and returns you to the current step in the same browser session.

    If you use DALP navigation to leave the `/asset-designer` wizard after manually choosing an asset class, selecting a template, entering an asset name or symbol, choosing a compliance template, or setting initial permissions, DALP asks you to confirm before discarding the wizard state. After a successful deployment, confirmed in-app leave, or sign-out, the saved wizard state is cleared.

    ![Asset designer button in sidebar](/docs/asset-creation/asset-designer-sidebar.webp)
  </Step>

  <Step>
    ### Select asset class [#select-asset-class]

    Choose the asset class that matches your security type. DALP shows only classes that have at least one usable published template. Choosing a different class clears the previous template selection, template-specific metadata, and feature inputs so stale values do not carry into the next asset.

    ![Asset class selection](/docs/asset-creation/select-asset-class.webp)
  </Step>

  <Step>
    ### Select instrument template [#select-instrument-template]

    Choose the published instrument template for the asset you want to create. The wizard shows the required features and compliance options attached to each available template. Required features are token behaviors the selected template attaches during deployment, not optional choices you remove during issuance.

    If a template needs a prerequisite token that is not available in your tenant, the template card stays disabled and names the missing prerequisite. Use the card action to create the needed token or [register an existing external token](/docs/operators/user-guides/asset-servicing/register-external-token), then return to the wizard and select the template after the prerequisite is available.

    ![Instrument template selection](/docs/asset-creation/select-asset-type.webp)
  </Step>

  <Step>
    ### Review template-required features [#review-template-required-features]

    Instrument templates can include **Required features**. When a template has required features, the Asset Designer shows them as badges during template selection. The deployed asset inherits those token-level behaviors from the selected template, then asks for additional inputs only for the badges that need configuration.

    #### Template-specific fields and defaults [#template-specific-fields-and-defaults]

    Selecting an instrument template can prefill feature settings and metadata values in the wizard. The Asset Designer clears feature-specific values from the previous selection before applying the new template, so switching templates does not carry old maturity, yield, fee, or conversion inputs into the next asset.

    Templates can also add metadata fields to the follow-up details step. These fields can be text, number, date, enum, ISIN, or address inputs. Required metadata fields must be filled before the wizard continues.

    Template defaults are applied when you select the template.

    For required-feature badges, fields that are fixed by the template can remain hidden while still being submitted with the asset configuration.

    Template feature settings that are not part of the template's required features can seed the wizard, but they are not submitted as standalone feature configurations.

    #### Prerequisite tokens [#prerequisite-tokens]

    Some required features need an existing token before the template can be selected:

    | Required feature on the template                                       | Prerequisite checked in the wizard                           | If it is missing                                                                                                                                                         |
    | ---------------------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
    | Maturity Redemption, Fixed Treasury Yield, or External Transaction Fee | Any ERC-20 token that can act as a denomination or fee asset | The template card is disabled with **Requires a denomination asset**. Create or register an ERC-20 denomination or fee asset before selecting the template.              |
    | Conversion                                                             | An equity-class target token                                 | The template card is disabled with **Requires an equity-class target token**. Create an equity token or register an existing equity token before selecting the template. |

    The prerequisite check looks at tokens and registered external tokens in the tenant. It only decides whether the template can be picked. The contract and deployment workflow still validate the selected token addresses and feature settings when you submit the asset.

    #### Self-contained required features [#self-contained-required-features]

    These badges do not add a follow-up configuration step from the required-feature badge itself. Use the [token feature catalog](/docs/architects/architecture/components/token-features) for the canonical behavior reference.

    Current self-contained badges include Historical Balances, Voting Power, Permit, Transaction Fee, Transaction Fee Accounting, Fixed Treasury Yield, and Conversion Minter. Transaction-fee badges only create non-zero fee behavior when the template supplies fee settings; Fixed Treasury Yield only creates a configured yield schedule when the template supplies yield settings.

    #### Configurable required features [#configurable-required-features]

    These badges show follow-up inputs in the Asset Designer after template selection. Use the [token feature catalog](/docs/architects/architecture/components/token-features) for canonical feature behavior; this table only lists the extra guided inputs.

    | Feature                                                                                                      | Asset Designer asks for                                                                          |
    | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
    | [Maturity Redemption](/docs/architects/architecture/components/token-features/maturity-redemption)           | Maturity date, denomination asset, face value, and redemption treasury.                          |
    | [AUM Fee](/docs/architects/architecture/components/token-features/aum-fee)                                   | Management-fee basis points and recipient settings.                                              |
    | [External Transaction Fee](/docs/architects/architecture/components/token-features/external-transaction-fee) | External fee token, absolute mint, burn, or transfer fees, and recipient settings.               |
    | [Conversion](/docs/architects/architecture/components/token-features/conversion)                             | Target token, denomination asset, discount, conversion window, debt handling, and related rules. |

    <Callout type="note" title="Features versus compliance modules">
      Required features define what the token can do. Self-contained badges are inherited directly from the template;
      transaction-fee badges only create non-zero fee behavior when the template supplies fee settings. Configurable badges
      add feature-specific inputs to the guided setup. Compliance modules define who may hold, transfer, mint, or redeem
      under your policy.
    </Callout>
  </Step>

  <Step>
    ### Configure asset basics [#configure-asset-basics]

    Enter the core asset properties. The Asset Designer shows live character counters below text inputs and checks these values before you can continue, so use values that describe the exact instrument you intend to deploy.

    | Field            | What to enter                                                                                                                                |
    | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
    | **Name**         | Full asset name, up to 50 characters, such as "Acme Corporate Bond 2025".                                                                    |
    | **Symbol**       | Trading symbol using uppercase letters and numbers. The field accepts up to 12 characters and suggests 3-12 characters for market-style use. |
    | **Decimals**     | Decimal precision from 0 to 18. Use 18 for standard ERC-20-style precision, 6 for USDC-style precision, or 0 for whole units only.           |
    | **Jurisdiction** | Country for the asset's regulatory jurisdiction. DALP submits this as an ISO 3166-1 numeric country code.                                    |

    When the symbol field is empty, the wizard suggests a symbol from the asset name. A one-word name uses the first five letters, a two-word name combines the beginning of both words, and longer names use an acronym. You can replace the suggestion before continuing.

    When DALP shows an availability status, it is based on the selected asset type, name, symbol, and decimals together. Changing any of those values clears the previous result and starts a new check. The same changes update the asset summary that you review before deployment. If the new status says the combination is unavailable or the check cannot complete, update the basics and wait for the status to show that the asset can continue.

    ![Asset basics form](/docs/asset-creation/asset-basics-form.webp)
  </Step>

  <Step>
    ### Configure asset details [#configure-asset-details]

    Complete the template-specific fields shown by the wizard. DALP inserts the details step only when the selected template exposes configurable required-feature inputs or metadata fields. Templates without input fields skip directly to pricing.
  </Step>

  <Step>
    ### Enable compliance modules [#enable-compliance-modules]

    Select which compliance rules to enforce on your asset. These modules are enforced automatically on-chain for every transfer.

    | Module                                                                          | Description                                                                                                                                                                                                 |
    | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | **Identity verification**                                                       | Requires both sender and recipient wallets to have a verified OnchainID with valid compliance verifications (e.g., KYC, accreditation). Wallets without verified identity cannot send or receive the asset. |
    | **Country allow list**                                                          | Only wallets with an OnchainID issued in specified countries can hold the asset. Use for securities restricted to certain jurisdictions.                                                                    |
    | **Country block list**                                                          | Wallets with an OnchainID from blocked countries cannot hold the asset. Use for sanctions compliance or regulatory restrictions.                                                                            |
    | **Address block list**                                                          | Explicitly block specific wallet addresses from holding or transferring the asset, regardless of their identity status.                                                                                     |
    | **Investor count limit**                                                        | Caps the maximum number of unique wallet addresses that can hold the asset. Useful for private placements with regulatory investor limits (e.g., Reg D 99 investor cap).                                    |
    | **Time lock**                                                                   | Enforces a minimum holding period before the asset can be transferred. Investors must hold for the specified duration after receiving units.                                                                |
    | **Transfer approval**                                                           | Requires an authorized approver to manually approve each transfer before it executes. Use for securities requiring transfer agent oversight.                                                                |
    | **[Collateral requirement](/docs/operators/user-guides/compliance/collateral)** | Requires sufficient collateral backing before minting new units. Validates only minting operations, not transfers.                                                                                          |

    If you select a compliance template, the asset must submit every control declared by that template. DALP rejects the deployment when the template controls are missing from the final configuration or when a country allow list has no countries selected, because an empty allow list would block every transfer.

    For more details on compliance modules, see the [compliance overview](/docs/operators/user-guides/compliance/overview).

    ![Compliance modules selection](/docs/asset-creation/compliance-modules.webp)
  </Step>

  <Step>
    ### Set initial asset permissions [#set-initial-asset-permissions]

    Confirm which wallets should receive asset-level roles when DALP deploys the token. The wizard keeps your connected wallet in the permission list with Admin and Governance roles by default, so the final review can continue with a manageable asset.

    Use **Add permission** to grant another wallet one or more asset roles before deployment. Current asset-level roles include Admin, Custodian, Emergency, Funds Manager, Governance, Sale Admin, and Supply Management. Add only the roles each wallet needs for the first operating step after deployment, such as unpausing the asset or minting the first supply.
  </Step>

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

    Review the selected template, asset details, compliance controls, and initial permissions on the summary page. When ready, click **Deploy** and authenticate with your PIN or OTP to submit the transaction.

    ![Summary and deploy](/docs/asset-creation/summary-deploy.webp)
  </Step>
</Steps>

## After deployment [#after-deployment]

Once the transaction confirms:

* Your new asset appears under **Asset management** in the sidebar, listed under its asset class (e.g., Fixed income > Bonds)
* DALP grants the initial asset roles you reviewed in the permissions step
* Pricing and classification verifications are issued to the asset's identity
* The asset remains paused unless you selected the summary option to unpause it during creation

### Activating the asset [#activating-the-asset]

By default, new assets are created in a paused state to allow review and final approvals before going live. This gives compliance teams a review point before any units are issued.

If your operating process allows launch-time activation, select the **unpause on creation** option on the summary step before deployment.

To activate the asset:

1. Navigate to the asset detail page under **Asset management** in the sidebar
2. Click **Manage Asset** and select **Unpause**

![Manage Asset menu with Unpause option](/docs/asset-creation/unpause-menu.webp)
![Unpause form](/docs/asset-creation/unpause-form.webp)

3. Authenticate with your PIN or OTP to confirm

<Callout type="note" title="Required permission">
  If your wallet cannot unpause the asset, DALP shows the Unpause action as disabled with a not-authorized message.
  Contact your administrator if you don't have the required asset role.
</Callout>

Once unpaused, authorized users can begin [issuing the asset](/docs/operators/user-guides/asset-servicing/mint-assets) to investor accounts.

## Troubleshooting [#troubleshooting]

| Issue                             | Solution                                                                                                                                                                                                                                            |
| --------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Create Asset button disabled      | Verify your account is onboarded and has permission to create tokens for the system. The wizard redirects users who do not have that permission.                                                                                                    |
| Instrument template not available | Use [Select instrument template](#select-instrument-template) to choose a published template for the chosen asset class, or ask an administrator to publish one backed by a usable token factory.                                                   |
| Deployment fails                  | Ensure wallet has sufficient gas and wallet verification is configured                                                                                                                                                                              |
| Missing template feature inputs   | Confirm the selected published instrument template is linked to a usable token factory and includes the required feature configuration.                                                                                                             |
| Missing compliance options        | Use [Enable compliance modules](#enable-compliance-modules) to confirm the needed compliance rules are selected and configured for the asset. If you selected a compliance template, every required control must appear in the final configuration. |
| Empty country allow list          | Add at least one allowed country, remove the country allow-list control, or choose a different compliance template. An empty allow list blocks every transfer, so DALP rejects it before deployment.                                                |
