# Token with Mintable Supply

The smart contract template for fungible tokens with a mintable supply is suited for uses cases where the token should follow additional issuance in the future. After deployment, new tokens can be created.

## Variables

**\_name:** The name of your token contract&#x20;

**\_symbol:** The ticker symbol ($XXX) of your token contract

**\_decimals:** The total decimals (after 0) of your token. Generally this is set ot 18.

**\_totalSupply:** The total supply of your minted token. This is the initial supply. New tokens can be minted.

## Functions

<table><thead><tr><th>Function</th><th>Input Parameters</th><th width="205">Description</th><th>Output</th></tr></thead><tbody><tr><td><code>owner</code></td><td>None</td><td>Returns the address of the current owner.</td><td><code>address</code></td></tr><tr><td><code>renounceOwnership</code></td><td>None</td><td>Allows the current owner to relinquish control of the contract.</td><td>emits <code>OwnershipTransferred</code> event</td></tr><tr><td><code>transferOwnership</code></td><td><code>address newOwner</code></td><td>Transfers ownership of the contract to a new account.</td><td><p></p><p></p><p>emits <code>OwnershipTransferred</code> event</p><p><br></p></td></tr><tr><td><code>getOwner</code></td><td>None</td><td>Returns the token owner address.</td><td><code>address</code></td></tr><tr><td><code>decimals</code></td><td>None</td><td>Returns the token decimals.</td><td><code>uint8</code></td></tr><tr><td><code>symbol</code></td><td>None</td><td>Returns the token symbol.</td><td><code>string memory</code></td></tr><tr><td><code>name</code></td><td>None</td><td>Returns the token name.</td><td><code>string memory</code></td></tr><tr><td><code>totalSupply</code></td><td>None</td><td>Returns the total token supply.</td><td><code>uint256</code></td></tr><tr><td><code>balanceOf</code></td><td><code>address account</code></td><td>Returns the number of tokens owned by an account.</td><td><code>uint256</code></td></tr><tr><td>_transfer</td><td><code>address recipient, uint256 amount</code></td><td>Transfers tokens to a specified address.</td><td><code>bool</code></td></tr><tr><td><code>allowance</code></td><td><code>address owner, address spender</code></td><td>Returns the remaining number of tokens that spender is allowed to spend.</td><td><code>uint256</code></td></tr><tr><td><code>approve</code></td><td><code>address spender, uint256 amount</code></td><td>Sets the amount of tokens that a spender is allowed to withdraw.</td><td><code>bool</code></td></tr><tr><td><code>transferFrom</code></td><td><code>address sender, address recipient, uint256 amount</code></td><td>Moves tokens from <code>sender</code> to <code>recipient</code> using allowance mechanism.</td><td><code>bool</code></td></tr><tr><td><code>increaseAllowance</code></td><td><code>address spender, uint256 addedValue</code></td><td>Atomically increases the allowance granted to a spender.</td><td><code>bool</code></td></tr><tr><td><code>decreaseAllowance</code></td><td><code>address spender, uint256 subtractedValue</code></td><td>Atomically decreases the allowance granted to a spender.</td><td><code>bool</code></td></tr><tr><td><code>burn</code></td><td><code>uint256 amount</code></td><td>Destroys a specified amount of tokens from the caller.</td><td>emits <code>Transfer</code> event</td></tr><tr><td><code>burnFrom</code></td><td><code>address account, uint256 amount</code></td><td>Destroys a specified amount of tokens from an account, deducting from the caller's allowance.</td><td>emits <code>Transfer</code> event</td></tr><tr><td><code>mint</code></td><td><code>address account, uint256 amount</code></td><td>Creates new tokens and assigns them to an account, increasing the total supply.</td><td>None</td></tr></tbody></table>


---

# 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://docs.onino.io/for-developers/developer-platform-overview/smart-contract-templates/creating-tokens/token-with-mintable-supply.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.
