PRC20 Token

PRC20 provides functions including interfaces for token transfers, querying token balances, and the total supply of tokens available on the network, and is fully compatible with ERC-20. PRC20 token must implement through the interface IPRC20 within IPRC20.sol. Provided is a template contract  PRC20Token.template. . The User will just need to fill in _name, _symbol, _decimals and _totalSupply according to their own requirements:

					 constructor() public {
    _name = {{TOKEN_NAME}};
    _symbol = {{TOKEN_SYMBOL}};
    _decimals = {{DECIMALS}};
    _totalSupply = {{TOTAL_SUPPLY}};
    _balances[msg.sender] = _totalSupply;

    emit Transfer(address(0), msg.sender, _totalSupply);


Users can use Remix IDE  in conjunction with  Metamask  to compile and deploy the PRC20 contract to TC.

Interact with Contract with Web3 and NodeJS.

Connect to PulseNet public RPC endpoint

					const Web3 = require('web3');
// mainnet
const web3 = new Web3('

// testnet
const web3 = new Web3('');


Create a wallet




  address: '0x926605D0729a968266f1BB299d8Df0471C4F5367',
  privateKey: '0x6b4618539d95f205f33e916e89404b301dde545c0c4acc181fd0c0b42708bad3',
  signTransaction: [Function: signTransaction],
  sign: [Function: sign],
  encrypt: [Function: encrypt]


Recover a wallet

					const account = web3.eth.accounts.privateKeyToAccount("0xe500f5754d761d74c3eb6c2566f4c568b81379bf5ce9c1ecd475d40efe23c577")

Check balance



The balance will be bumped by e18 for PULSE.



Create transaction


  • Object – The transaction object to send:
  • from – String|Number: The address used for the sending account. Uses the web3.eth.defaultAccount property, if not specified. Or that of an address or index of a local wallet in web3.eth.accounts.wallet.
  • to – String: (optional) The destination address of the message, left undefined for a contract-creation transaction.
  • value – Number|String|BN|BigNumber: (optional) The value transferred for the transaction in wei, also the endowment if it’s a contract-creation transaction.
  • gas – Number: (optional, default: To-Be-Determined) The amount of gas required to use for the transaction (unused gas is refunded).
  • gasPrice – Number|String|BN|BigNumber: (optional) This is the price of gas for this transaction in wei, defaults to web3.eth.gasPrice.
  • data – String: (optional) Either a ABI byte string containing the data of the function call on a contract, or in the case of a contract-creation transaction the initialisation code.
  • nonce – Number: (optional) Integer of a nonce. This allows the user to overwrite their own pending transactions that use the same nonce.
					   // // Make a transaction using the promise
        from: holder,
        to: '0x0B75fbeB0BC7CC0e9F9880f78a245046eCBDBB0D',
        value: '1000000000000000000',
        gas: 5000000,
        gasPrice: 18e9,
    }, function(err, transactionHash) {
      if (err) {
        } else {


Table of contents