How to Stake BELA in MEW and Mist Wallets

Live Bela
Live Bela
Apr 2, 2018 · 12 min read

Minting of new BELA will no longer occur through mining but instead through a unique staking procedure. We have taken BELA’s current inflation rate per annum and kept it the same. Instead of earning a % interest on staked BELA, every user staking BELA will be competing for a share of this pre-set amount of BELA every day that will be minted. This will take power away from a small centralized group of miners that currently mine BELA and hand it over to the true everyday users. It will also empower the Belacam team to add other exciting and innovative staking related features to the platform in further upgrades.

Mist Ethereum Wallet Staking Tutorial

To stake BELA through the Mist Ethereum wallet you’ll need to have an ERC20 token address where you’ve received your BELA, and enough ETH in that same address to cover transaction fees (gas spent). Typical transaction cost is ~0.001 ETH.

In the header of the Mist Ethereum Wallet click on “CONTRACTS”:

Image for post
Image for post

Then click on “WATCH CONTRACT”:

Image for post
Image for post

Enter the CONTRACT ADDRESS:

0x2e98a6804e4b6c832ed0ca876a943abd3400b224

Give it whatever CONTRACT NAME you like. I’m going to call mine “Stake Bela”.

Enter the JSON INTERFACE:

[
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "claimStake",
"outputs": [
{
"name": "success",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_subtractedValue",
"type": "uint256"
}
],
"name": "decreaseApproval",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_addedValue",
"type": "uint256"
}
],
"name": "increaseApproval",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "ownerClaim",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "vester",
"type": "address"
},
{
"indexed": true,
"name": "stakeSplitAddress",
"type": "address"
},
{
"indexed": false,
"name": "stakedAmount",
"type": "uint256"
},
{
"indexed": false,
"name": "stakingGains",
"type": "uint256"
}
],
"name": "Vest",
"type": "event"
},
{
"constant": false,
"inputs": [],
"name": "reclaimEther",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "owner",
"type": "address"
},
{
"indexed": true,
"name": "spender",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "staker",
"type": "address"
},
{
"indexed": true,
"name": "stakeSplitAddress",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Stake",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "amount",
"type": "uint256"
}
],
"name": "Mint",
"type": "event"
},
{
"constant": false,
"inputs": [
{
"name": "_stakeAmount",
"type": "uint256"
}
],
"name": "stakeBela",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_stakeAmount",
"type": "uint256"
},
{
"name": "_stakeSplitAddress",
"type": "address"
}
],
"name": "stakeBelaSplit",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"payable": false,
"stateMutability": "nonpayable",
"type": "fallback"
},
{
"inputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_spender",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "balance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "decimals",
"outputs": [
{
"name": "",
"type": "uint8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "getStakedBalance",
"outputs": [
{
"name": "stakedBalance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "name",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "ownerMintRate",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "ownerTimeLastMinted",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "stakeBalances",
"outputs": [
{
"name": "initialStakeBalance",
"type": "uint256"
},
{
"name": "initialStakeTime",
"type": "uint256"
},
{
"name": "initialStakePercentage",
"type": "uint256"
},
{
"name": "stakeSplitAddress",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "symbol",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalBelaStaked",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
]

Then click “OK”:

Image for post
Image for post

Now we are watching this Custom Contract. Go ahead and click on it:

Image for post
Image for post

To stake, go down to “Pick a Function”:

Image for post
Image for post

And select “Stake Bela”:

Image for post
Image for post

How many BELA would you want to stake? The amount is counted in wei so it should be your value multiplied by 1000000000000000000 (1e18), I have100 BELA so I will put 100000000000000000000, or 100e18

Image for post
Image for post

Make sure that you have enough ETH to cover the gas and then click “EXECUTE”:

Enter your password and then click “SEND TRANSACTION”:

Image for post
Image for post

To check and make sure that our BELA was successfully staked, we’re going to “Read” the same contract.

Image for post
Image for post

The contract is read automatically, we just need to scroll down to “Get staked balance” to see that it is 100000000000000000000, or 100e18

Image for post
Image for post

At any time, I can get my BELA back by executing the “Claim Stake” function, but 30 days is the mandatory wait period. If you do it earlier you will not receive any new BELA.

Image for post
Image for post

MyEtherWallet Staking Tutorial

To stake BELA through https://myetherwallet.com/ you’ll need to have an ERC20 token address where you’ve received your BELA, and enough ETH in that same address to cover transaction fees (gas spent). Typical transaction cost is ~0.001 ETH.

At https://myetherwallet.com/ go to “Contracts”.

Image for post
Image for post

Enter the Contract Address:

0x2e98a6804e4b6c832ed0ca876a943abd3400b224

Enter the ABI / JSON Interface:

[
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "claimStake",
"outputs": [
{
"name": "success",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_subtractedValue",
"type": "uint256"
}
],
"name": "decreaseApproval",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_addedValue",
"type": "uint256"
}
],
"name": "increaseApproval",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "ownerClaim",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "vester",
"type": "address"
},
{
"indexed": true,
"name": "stakeSplitAddress",
"type": "address"
},
{
"indexed": false,
"name": "stakedAmount",
"type": "uint256"
},
{
"indexed": false,
"name": "stakingGains",
"type": "uint256"
}
],
"name": "Vest",
"type": "event"
},
{
"constant": false,
"inputs": [],
"name": "reclaimEther",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "owner",
"type": "address"
},
{
"indexed": true,
"name": "spender",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "staker",
"type": "address"
},
{
"indexed": true,
"name": "stakeSplitAddress",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Stake",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "amount",
"type": "uint256"
}
],
"name": "Mint",
"type": "event"
},
{
"constant": false,
"inputs": [
{
"name": "_stakeAmount",
"type": "uint256"
}
],
"name": "stakeBela",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_stakeAmount",
"type": "uint256"
},
{
"name": "_stakeSplitAddress",
"type": "address"
}
],
"name": "stakeBelaSplit",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"payable": false,
"stateMutability": "nonpayable",
"type": "fallback"
},
{
"inputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_spender",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "balance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "decimals",
"outputs": [
{
"name": "",
"type": "uint8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "getStakedBalance",
"outputs": [
{
"name": "stakedBalance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "name",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "ownerMintRate",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "ownerTimeLastMinted",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "stakeBalances",
"outputs": [
{
"name": "initialStakeBalance",
"type": "uint256"
},
{
"name": "initialStakeTime",
"type": "uint256"
},
{
"name": "initialStakePercentage",
"type": "uint256"
},
{
"name": "stakeSplitAddress",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "symbol",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalBelaStaked",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
]

And click “Access”

Image for post
Image for post

If you entered the Contract Address and JSON Interface correctly, you should now have the option to “Select a function”.

Image for post
Image for post

Select “stakeBela”

Image for post
Image for post

Now MEW is asking us for a stake amount:

Image for post
Image for post

How many BELA would you want to stake? The amount is counted in wei so it should be your value multiplied by 1000000000000000000 (1e18), I have100 BELA so I will put 100000000000000000000, or 100e18

Image for post
Image for post

Now we need to access our wallet containing BELA and enough ETH to cover gas. I’m going to use my Private Key to unlock it.

Image for post
Image for post

Now that the wallet is unlocked, click “WRITE”:

Image for post
Image for post

You will then get a pop-up. Leave the “Amount to Send” as 0 because we are not sending any ETH, use the pre-filled “Gas Limit”, and click “Generate Transaction”:

Image for post
Image for post

Then click “Yes, I am sure! Make transaction.”:

Image for post
Image for post

There will be a green footer that comes up briefly. Click on the link to view your transaction on https://etherscan.io/

Image for post
Image for post

To check and make sure that our BELA was successfully staked, we’re going to “Read” the same contract.

Enter the same Contract Address and ABI / JSON Interface as before and click the “stakeBalances” function:

Image for post
Image for post

Then enter the public address that you staked from:

Image for post
Image for post

And click “READ”:

Image for post
Image for post

And you’ll see that my stake balance is 100000000000000000000, or 100e18

Image for post
Image for post

At any time, I can get my BELA back by executing the “claimStake” function, but 30 days is the mandatory wait period. If you do it earlier you will not receive any new BELA.

Image for post
Image for post

If you have any questions please join us on Slack, or email us at contact@livebela.com

Belacam

Belacam.com

Live Bela

Written by

Live Bela

Belacam

Belacam

Belacam.com is a cryptocurrency-based social media site, launche in 2016, where 250,000+ people earn money online in a fun, social setting. Powered by the $BELA token, it’s an earning platform for impoverished communities, cryptocurrency enthusiasts, and everyday smartphone users

Live Bela

Written by

Live Bela

Belacam

Belacam

Belacam.com is a cryptocurrency-based social media site, launche in 2016, where 250,000+ people earn money online in a fun, social setting. Powered by the $BELA token, it’s an earning platform for impoverished communities, cryptocurrency enthusiasts, and everyday smartphone users

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store