# Basic ERC20 contract

**URL:** <https://forum.openzeppelin.com/t/basic-erc20-contract/421>\
**Category:** Contracts\
**Created:** [March 17, 2019, 5:16am UTC](https://forum.openzeppelin.com/t/basic-erc20-contract/421 "2019-03-17T05:16:14Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![monkrus](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/monkrus/32/408_2.png) [@monkrus](https://forum.openzeppelin.com/u/monkrus)\
**Post date:** [March 17, 2019, 5:16am UTC](https://forum.openzeppelin.com/t/basic-erc20-contract/421/1 "2019-03-17T05:16:14Z")

</div>

Hello everybody,

My goal is to write a basic ERC-20 smart contract usingOpenZeppelin that allows to:

1. Mint tokens automatically when someone refers to another user (and be the only owner)
2. Burn tokens

Where would I start?

Thank you,  
Sergei

---

<div class="post-metadata">

**Author:** ![frangio](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/frangio/32/15251_2.png) [@frangio](https://forum.openzeppelin.com/u/frangio)\
**Post date:** [March 18, 2019, 3:12pm UTC](https://forum.openzeppelin.com/t/basic-erc20-contract/421/2 "2019-03-18T15:12:36Z")

</div>

Hi @monkrus! Check out our [ERC20 guide](https://docs.openzeppelin.org/docs/learn-about-tokens.html#constructing-a-nice-erc20-token) in the docs to learn the basics of how to have the ability to mint and burn.

After that, you might want to read [How to implement ERC20 supply mechanisms](https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226) to implement your desired minting scheme.

Let us know when you’ve read those if you have any further questions! 😊
