> For the complete documentation index, see [llms.txt](https://bloxxa-1.gitbook.io/bloxxa-guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://bloxxa-1.gitbook.io/bloxxa-guide/technical-guide/markdown/erc-20.md).

# ERC-20

To create a token in Bloxxa, select the **ERC-20** contract category. Fill in the required fields:

* **name** — the name of the token (for example, "MyToken").
* **symbol** — the token symbol (for example, "MTK").
* **owner** — the owner’s address (for example, "0xB973BfDC9597...").

After entering all the necessary information, you will need to confirm the payment transaction, which will deduct the funds from your wallet. Once the transaction is successfully completed, the contract will be deployed, and your token will be created.

**Key Token Functions:**

* **transfer(recipient, amount)**\
  Transfer tokens to another address.\
  **Arguments:**
  * `recipient`: the recipient's address.
  * `amount`: the number of tokens to transfer.
* **approve(spender, amount)**\
  Authorize another address to spend your tokens.\
  **Arguments:**
  * `spender`: the address allowed to spend your tokens.
  * `amount`: the maximum number of tokens allowed to be spent.
* **transferFrom(sender, recipient, amount)**\
  Transfer tokens from a sender to a recipient if you have been authorized to do so.\
  **Arguments:**
  * `sender`: the sender's address.
  * `recipient`: the recipient's address.
  * `amount`: the number of tokens to transfer.
* **balanceOf(owner)**\
  Get the token balance of a specific address.\
  **Argument:**
  * `owner`: the token owner's address.\
    **Returns:** the token balance.
* **totalSupply()**\
  Returns the total supply of issued tokens.
* **allowance(owner, spender)**\
  Check how many tokens are allowed to be spent from the owner’s balance by a specific spender.\
  **Arguments:**
  * `owner`: the token owner’s address.
  * `spender`: the address authorized to spend the tokens.\
    **Returns:** the number of tokens allowed to be spent.

**Administrative Functions:**

* **mint(to, amount)**\
  Issue new tokens to a specified address.\
  **Arguments:**
  * `to`: the address to receive the new tokens.
  * `amount`: the number of tokens to issue.
* **burn(amount)**\
  Destroy tokens from the current balance.\
  **Argument:**
  * `amount`: the number of tokens to destroy.
* **setMinter(newMinter)**\
  Assign a new address with the right to mint tokens.\
  **Argument:**
  * `newMinter`: the address of the new minter.
