Cómo deployar un token en Polygon en 3 pasos (con alternativa no-code)
En esta guía te voy a explicar cómo desplegar un token MRC-20 de Polygon usando smart contracts con Solidity, y a continuación te daré una alternativa no-code si buscas una solución más sencilla.
Polygon opera como una solución L2 para Ethereum, lo que significa que proporciona un entorno más escalable y eficiente en términos de costos, manteniendo la compatibilidad con la infraestructura de Ethereum.
Los tokens desplegados en Polygon usan el estándar ERC-20 (o como le dicen en el nicho, MRC-20), que es ampliamente compatible y permite una fácil integración de tokens con varias aplicaciones DeFi, wallets y exchanges.
Dado que Polygon es compatible con EVM, cualquier smart contract o dApp que crees para Ethereum se puede desplegar en Polygon con poca o nula modificación.
Smart Contracts y Solidity: Cómo desplegar token MRC-20
En el ecosistema de Polygon, desplegar un token ERC-20 requiere escribir un smart contract utilizando Solidity, el principal lenguaje para desarrollar contratos en blockchains compatibles con EVM como Ethereum y Polygon. A continuación, un análisis más profundo de los pasos necesarios para crear y desplegar un token en Polygon.
1. Configura tu entorno de desarrollo
Para empezar, necesitarás configurar un entorno de desarrollo. Hay varias herramientas y frameworks que facilitan el desarrollo de smart contracts:
- Remix: Un IDE basado en navegador que soporta Solidity de forma nativa.
- Truffle o Hardhat: Frameworks de desarrollo local que permiten compilar, testear y desplegar contratos, integrándose con MetaMask para la gestión de wallets.
También necesitarás conectarte a la red de Polygon utilizando una wallet como MetaMask.
2. Escribiendo el Smart Contract ERC-20
Un token ERC-20 sigue una estructura de contrato estandarizada que incluye varias funciones y eventos clave. A continuación, un ejemplo de un contrato básico ERC-20 escrito en Solidity:
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
contract MyToken is ERC20 {
constructor(uint256 initialSupply) ERC20("MyToken", "MTK") {
_mint(msg.sender, initialSupply);
}
}
En este ejemplo, utilizamos la implementación ERC-20 de OpenZeppelin para simplificar el proceso de desarrollo. El contrato incluye:
- Constructor: Inicializa el nombre del token («MyToken») y el símbolo («MTK») y crea el supply inicial para la dirección del creador del contrato.
- _mint function: Maneja la creación de tokens y los asigna a una dirección específica (en este caso, la dirección del desplegador del contrato).
Los componentes clave del estándar ERC-20 incluyen:
- transfer: Permite a los holders del token enviar tokens a otra dirección.
- approve: Configura una asignación para que un tercero gaste tokens en nombre del holder.
- transferFrom: Permite transferir tokens de una dirección a otra basándose en una asignación previamente establecida.
3. Compilando y desplegando el contrato
Una vez escrito el contrato, necesitarás compilarlo utilizando el compilador de Solidity, ya sea dentro de Remix o utilizando herramientas de línea de comandos proporcionadas por Truffle o Hardhat.
Aquí un ejemplo de cómo podrías desplegar el contrato usando Truffle:
truffle migrate --network polygon
El proceso de despliegue involucra interactuar con la red de Polygon, lo que requerirá MATIC (el token nativo de Polygon) para cubrir las gas fees. El costo de desplegar un token en Polygon es significativamente más bajo que en Ethereum debido a su arquitectura L2. Mientras que desplegar en Ethereum puede costar cientos de dólares, en Polygon las fees de despliegue suelen oscilar entre unos pocos centavos a unos pocos dólares, dependiendo de la congestión de la red.
4. Optimización de gas y costos
Los desarrolladores de smart contracts a menudo se enfocan en la optimización de gas, especialmente en un entorno L2. Aunque las gas fees son mucho más bajas en Polygon, el código ineficiente puede generar costos de transacción más altos de lo necesario. Algunas prácticas comunes para optimizar gas incluyen:
- Minimizar operaciones de almacenamiento: Las operaciones de almacenamiento en Solidity son costosas. Usa variables de
memory
siempre que sea posible, y evita escribir repetidamente en el almacenamiento. - Operaciones en batch: En lugar de realizar múltiples operaciones individuales, agrupa las transacciones cuando sea posible para minimizar los pasos de ejecución.
- Librerías externas: Aprovecha librerías como OpenZeppelin para usar código probado y evitar introducir vulnerabilidades o código redundante.
5. Pruebas y seguridad
Antes de desplegar tu contrato en mainnet, es esencial testearlo de manera exhaustiva. Utiliza Ganache o el entorno local de Hardhat para simular el despliegue e interacciones. Escribe tests unitarios para asegurar que tu token opera conforme al estándar ERC-20.
Las vulnerabilidades comunes incluyen:
- Reentrancy attacks: Ocurren cuando las llamadas externas desencadenan la ejecución recursiva de funciones, lo que puede generar resultados no deseados.
- Overflow y underflow: Aunque las versiones más nuevas de Solidity (0.8.x y posteriores) manejan automáticamente esto, las versiones más antiguas pueden requerir librerías como SafeMath.
Una vez que estés seguro de la seguridad del contrato, despliega primero en el testnet de Polygon (Mumbai) antes de proceder al mainnet.
La alternativa no-code: Smithii Tools
Si no quieres adentrarte en la programación o en la configuración de entornos, Smithii ofrece una herramienta no-code para desplegar tokens en Polygon sin necesidad de escribir smart contracts.
Cómo desplegar un token en Polygon usando Smithii en 3 pasos
Lo primero que debes hacer es ingresar al Token Creator Tool de Polygon de Smithii y una vez allí seguir los siguientes pasos
- Introduce el nombre de tu token: no hay restricción alguna en este punto, pon el que más te guste.
- Elige un símbolo: Con un máximo de hasta 8 caracteres.
- Define el supply total de tokens: Lo más normal es entre 10M y 100B.
Tax
Si seleccionas esta opción puedes añadir un fee por transacción de tu token en porcentaje. Si pones 5 será un 5% de todas las transacciones con tu token. Esto genera un token de carácter deflacionario.
También, puedes indicar una receiver wallet que no necesariamente sea la wallet con la que creaste el toke. Es decir puedes direccional los fees directamente a una wallet de fees.
Opciones avanzadas
Aquí tenemos 3 elementos: el AirDrop mode, el anti-bot y el anti-whale:
- Airdrop mode: Esta opción impide que tu token pueda ser intercambiado hasta que tu especifiques lo contrario, no tiene costo alguno.
- Anti-bot: Esta tool aplica límite de tiempo por transacciones para evitar las acción de los bots sniper en tu token.
- Anti-Whale: Esta tool limita tanto el tiempo entre trading como el monto que se puede hacer por cada transacción, evitando la aparición de whales en el trading del token.
El costo de crear un token en Polygon usando Smithii Tools es de 0.01 ETH más las gas fees, una de las tarifas más bajas del mercado.
Verificación y modificación del contrato en PolygonScan
Si quieres agregar social media links e imágenes a tu token, lo que debes hacer es verificar ownership. Si creaste el token con Smithii Tools, esto se hizo automáticamente al momento de hacer el deploy.
Si no lo hiciste con Smithii Tools, puedes seguir esta guía paso a paso en donde te explicamos cómo añadir links y logos a tu token ERC-20. Esto dará un golpe muy bueno de confianza a tu token para los inversores, lo que se traducirá en más ventas. Vale totalmente la pena hacerlo.
¿Qué hacer luego de crear el token en Polygon: Lanzar Liquidity Pool?
Una vez que hayas creado el token, es momento de que crees el mercado y lances tu liquidity pool en Uniswap. Para ello puedes ver nuestra guía de cómo crear una liquidity pool en Arbitrum sin programar.
¿Es seguro crear un token ERC-20 en Smithii?
Smithii Tools ha sido auditado por CoinFabrik bajo el protocolo Mantis. Esto convierte a Smithii en la Suite Tools más segura del mercado.
Conclusión
Aquí pudimos ver dos formas de crear un token MRC-20, la primera mediante Solidity y la segunda mediante el token creator de Smithii. La alternativa no-code nos permite saltearnos el paso de verificar el ownership del contrato, facilitando el cambio de la metadata del token.
¿Superar a tus competidores?
Únete a nuestra Newsletter y recibe noticias semanales sobre Blockchain especializadas en creadores NFT.
Industrial Engineer. Member of the Smithii’s marketing team. Solana trader. Collaborator in the $SHRIMP memecoin launch.