⚙️ 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)
In order to complete an integration with the below contracts, you will need to have ABI (Application Binary Interface).

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

Visit a contract link above, click into the Contract tab, then select Write as Proxy to see all functions.
Some of the key functionalities we offer are:
listNewToken
,addLiquidity
,addLiquidityETH
,removeLiquidity
,swapExactTokenForToken
andswapTokenForExactToken,
swapExactETHForToken
,swapExactTokenForETH
,swapETHForExactToken
andswapTokenForExactETH
listNewToken
, addLiquidity
, swapExactTokenForToken
and swapTokenForExactToken
requires that the token has been approved in advance.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
)
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
)
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
)
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.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
)
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:
swapExactETHForToken
swapExactTokenForETH
swapETHForExactToken
swapTokenForExactETH
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
)
function swapExactTokenForETH(
address tokenIn, // Input 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
)
function swapETHForExactToken(
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
)
function swapTokenForExactETH(
address tokenIn, // Input 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
)
Last modified 1yr ago