⚙️ Integrate with MonoX

The MonoX smart contracts will exist on the Ethereum blockchain. Until that time, there are a bunch of test networks are available for you to integrate and complete your tests. These networks are:

  • Ethereum Mainnet,

  • Polygon Mainnet,

  • Kovan Testnet,

  • Mumbai Test (Polygon)

Contracts

In order to complete an integration with the below contracts, you will need to have ABI (Application Binary Interface).

How to get ABI of a contract?

Visit a link below, navigate into the Contract tab, then scroll until you see Contract ABI.

Contracts on Ethereum Mainnet

VCASH address: 0x532D7ebE4556216490c9d03460214b58e4933454

MonoXPool address: 0x59653E37F8c491C3Be36e5DD4D503Ca32B5ab2f4

Monoswap address: 0xC36a7887786389405EA8DA0B87602Ae3902B88A1

MONO address: 0x2920f7d6134f4669343e70122cA9b8f19Ef8fa5D

Contracts on Polygon Mainnet

VCASH address: 0x7621eE0CE0F686b88dD70551B05F90dd3C04d6e9

MonoXPool address: 0x3826367A5563eCE9C164eFf9701146d96cC70AD9

Monoswap address: 0xBD5ca837C759B429398dc55b643f1Dd8d0D72CbD

Contract on Kovan Test Network

VCASH address: 0x35363a7aceFc54e85FB21B0B4a89e336eB7C065A

MonoXPool address: 0xA22710AA406f9302e68bF5d1d0859dA6d7A6A93c

Monoswap address: 0xE8141055b060BA9f7C75c6D5c904D4A7Fc97A66b

MonoToken address: 0xC963bf29405884e3C0c52C16793Ead51Ccb88761

MonoswapStaking address: 0x6549f8aE5dfee52B5da9127B8Dda7504798ec347

Contract on Mumbai Test Network

VCASH address: 0xeB3333178D85F4792fE3201C9247B0c3eA44Ae10

MonoXPool address: 0x94B0eAf72E4CC307Bf2B0Dd8834694F295305f89

Monoswap address: 0xf0086a7bF26E4be27D6bF2d9f9f108F321cc72E7

MonoToken address: 0x63EE03B10E92849A1f61f2f462c66CdB09a3982C

MonoswapStaking address: 0xF269e315f8c72B8a1Beb2223632bbC046c6635D4

Integration

Our Monoswap contract (kovan or mumbai) has some core features available for the developers who are interested in using them externally.

What type of functions is available for a contract?

Visit a contract link above, click into the Contract tab, then select Write as Proxy to see all functions.

MonoX Core Functionalities

Some of the key functionalities we offer are:

  • listNewToken,

  • addLiquidity,

  • addLiquidityETH,

  • removeLiquidity,

  • swapExactTokenForToken and swapTokenForExactToken,

  • swapExactETHForToken, swapExactTokenForETH, swapETHForExactToken and swapTokenForExactETH

listNewToken

This function list tokens and adds liquidity with vcashAmount and tokenAmount then sends LP tokens to to address. So, the user can list a new token.

function listNewToken (
        address _token,        // Token address to list
        uint _price,           // Token price
        uint256 vcashAmount,   // VCASH amount to add initially
        uint256 tokenAmount,   // Token amount to add initially
        address to             // Address that gets liquidity
        )           

addLiquidity

This function adds liquidity to an ERC-20⇄ERC-20 pool. So, users can contribute into the pool.

function addLiquidity (
        address _token,        // Token address
        uint256 _amount,       // Token amount to add
        address to             // Address to send LP token 
        )

addLiquidityETH

This function adds liquidity to an ERC-20⇄WETH pool with ETH. So, users can add liquidity to the ETH pool.

function addLiquidityETH (
        address to             // Address to send LP token  
        )

removeLiquidity

This function removes liquidity to an ERC-20⇄ERC-20 pool.

function removeLiquidity (
        address _token,        // Token address
        uint256 liquidity,     // Liquidity
        address to,            // Token amount to add
        uint256 minVcashOut,   // The minimum amount of VCash that must be received
        uint256 minTokenOut    // The minimum amount of Token that must be received
        )

For removing ETH liquidity, use removeLiquidityETH function. It removes liquidity to an ERC-20⇄WETH pool with ETH.

swapExactTokenForToken

Users can swap tokens using swapExactTokenForToken. So, user's input token is known and the output token is calculated swapTokenForExactToken.

function swapExactTokenForToken(
        address tokenIn,       // Input token address
        address tokenOut,      // Output token address
        uint amountIn,         // The amount of input tokens to send
        uint amountOutMin,     // The minimum amount of output tokens that must be received for the transaction not to revert
        address to,            // Recipient of the output tokens
        uint deadline          // Unix timestamp after which the transaction will revert
        )

swapTokenForExactToken

Users can swap tokens using swapTokenForExactToken. So, user's output token is known and the input token is calculated.

 function swapTokenForExactToken(
        address tokenIn,       // Input token address
        address tokenOut,      // Output token address
        uint amountInMax,      // The maximum amount of input tokens that can be required before the transaction reverts
        uint amountOut,        // The amount of output tokens to receive
        address to,            // Recipient of the output tokens
        uint deadline          // Unix timestamp after which the transaction will revert
        )

For swapping ETH, please use one of below functions:

function swapExactETHForToken(
        address tokenOut,      // Output token address
        uint amountOutMin,     // The minimum amount of output tokens that must be received for the transaction not to revert
        address to,            // Recipient of the output tokens
        uint deadline          // Unix timestamp after which the transaction will revert
        )

Last updated

Was this helpful?