# Multi-Function Token Creation Tutorial - BSC

{% hint style="success" %}
**Multi-Function Token**：<https://bsc.ciaotool.io/token/simple-control>
{% endhint %}

### 🛠 What Is a Multi-Function Token?

* A **Multi-Function Token** is a smart contract that includes multiple optional control features, such as token minting, trading pause, blacklist management, and maximum holding limits. This type of token allows users to flexibly test and use different features based on their needs.

#### ⚠️ Risk Detection Notice

After creating a Multi-Function Token, **security scanners may flag potential risks** due to the presence of control features.

* If you are highly sensitive to audit or risk-detection results, it is recommended to create a **Standard Token**, which does not carry such risks.
* Creating a Multi-Function Token means you **accept higher risk flags** from some detection platforms.
* Some platforms allow re-scanning after ownership is renounced, which may remove risk warnings.

### 🪙 How to Create a Multi-Function Token？

#### &#x49;**. Connect Wallet**

* Open the token creation page: <https://bsc.ciaotool.io/token/simple-control>
* Click **“Connect Wallet”** in the top-right corner
* Confirm wallet authorization in the popup

<figure><img src="/files/Hr4J5J1Ev4GHxYhNcDrC" alt=""><figcaption></figcaption></figure>

#### II. Enter Basic Token Information

* **Token Name**: e.g. *CiaoTool* (supports Chinese, English, or mixed)
* **Token Symbol**: e.g. *C*, displayed in wallets and exchanges
* **Total Supply**: Fixed supply; cannot be increased after creation
* **Decimals**: Token precision\
  (e.g. 6 decimals = 0.000001, default is usually 18)
* **Receiving Address**: Wallet address that receives the initial supply (can be the connected wallet)

<figure><img src="/files/5NE0TFEWFqIICtVzUsHU" alt=""><figcaption></figcaption></figure>

#### III. Feature Parameters

**1. Token Minting**

* Enable to allow minting additional tokens via the control panel
* Disable to permanently remove minting capability
* Minted tokens can be sent to a specified address

**2. Trading Pause**

* Enable to pause or resume all transfers and trading
* Disable if trading pause functionality is not required

**3. Blacklist Function**

* Enable to block specific wallet addresses from trading
* Disable to permanently remove blacklist functionality

{% hint style="info" %}
**Note:** Once disabled, this option cannot be re-enabled.
{% endhint %}

**4. Maximum Holding Limit**

* Enable to set a maximum token amount per wallet
* Disable to remove holding limits permanently

{% hint style="info" %}
**Note:** Once disabled, this option cannot be re-enabled.
{% endhint %}

<figure><img src="/files/53PGNXeWqoSbqFUgZ2fz" alt=""><figcaption></figcaption></figure>

#### **IV. Complete Creation**

1. Verify all parameters carefully
2. Click **Create Contract** to deploy

{% hint style="info" %}
**Notes:**

* If creation fails, please take a screenshot and contact support
* If creation succeeds but the token does not appear, manually add it to your wallet\
  (refer to *How to Add a Token to Wallet*)
  {% endhint %}

#### V. Control Panel Guide

After successful creation, you can manage all functions via the control panel:

**1. Ownership Control**

* **Transfer Ownership**: Transfer contract control to another address
* **Renounce Ownership**: Send ownership to a burn address (irreversible)

**2. Trading Control**

* **Pause Trading**: When enabled, non-whitelisted addresses cannot transfer or trade
* **Modify Holding Limit**: Adjust the maximum tokens per wallet
* **Disable Holding Limit**: Remove holding restrictions permanently
* **Blacklist Management**: Batch add or remove blacklisted addresses
* **Global Whitelist**: Whitelisted addresses are not affected by holding limits or trading pause

**3. Token Control**

* **Mint Tokens**: Manually mint additional tokens
* **Withdraw Contract Assets**: Withdraw WBNB and native tokens held by the contract

#### ⚠️ Important Notes

* **Liquidity creation failure**:\
  If the wallet holding limit is 100 tokens and you attempt to add 101 tokens to the pool, liquidity creation will fail.\
  **Solution**:\
  Add liquidity with 99 tokens first, whitelist the pool address, then increase liquidity.
* **Cannot buy during paused trading**:\
  When trading is paused, the pool address cannot transfer tokens.\
  Add the pool address to the whitelist to resume trading.
* **Users cannot sell during normal trading**:\
  If the pool address reaches the maximum holding limit, increase the limit or whitelist the pool address to allow selling.

### ❓Frequently Asked Questions (FAQ)

#### **1.** Are Multi-Function Tokens safe?

* [x] They are feature-rich, but security scanners may flag risks. Standard Tokens do not carry these risks.

#### 2. Can features be modified after creation?

* [x] Some features cannot be changed once ownership is renounced. Please proceed carefully.

#### 3. Does the blacklist affect dividends or trading?

* [x] Blacklisted addresses cannot transfer or sell tokens. Other addresses are not affected.

#### 4. How do I manage token features?

* [x] All management actions can be performed via the control panel.

#### 5. What should I do if liquidity addition fails?

* [x] Check the wallet holding limit, ensure the pool address is whitelisted, and confirm it complies with holding restrictions.

**💬 Need help? Join our community for real-time support:** <https://t.me/ciaotool>

* **Email:** <support@ciaotool.io>
* **Website:** [https://ciaotool.io](https://ciaotool.io/)
* **X (Twitter):** <https://x.com/CiaoTool>
* **Medium:** <https://medium.com/@ciaotool>
* **Blog**: <https://www.ciaoailiquidity.com/blog>
* **YouTube:** <https://www.youtube.com/@CiaoTool>
* **WhatsApp**：<https://whatsapp.com/channel/0029VbAuLrVAojYxRNw95W1J>

{% hint style="danger" %}
**Note:** CiaoTool is committed to providing convenient tooling services but does not offer any form of investment advice. Platform content may change with product iterations. Users are advised to exercise judgment and stay informed about updates.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ciaotool.gitbook.io/docs/en/token/simple-control.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
