18 votes

what is the difference between hard cap and soft cap in ethereum ICO

A hard cap is defined as the maximum amount a crowdsale will receive. Most projects set a very high cap that is unlikely to happen. Only very famous projects like Status or Brave browser have reached ...
user avatar
  • 29.2k
18 votes
Accepted

How to impose a timelock || Vesting for ERC20 tokens during ICO(Crowdsale)

Vesting with a cliff is a typical requirement for founders holding shares of a company so they don't just leave the company when they are most needed with the shares they have. The same concept has ...
user avatar
  • 7,216
10 votes
Accepted

Smart Contract to receive tokens and give ether?

It's slightly more complicated because users don't just send you tokens. They have to first give you allowance to spend the token, then they call your function (say tokenToEther()) First your user ...
user avatar
9 votes
Accepted

Send ether to contract address in web3.js

If you want to accept the Ether in a smart contract then you should have a fallback function. The fallback function will be called by default when someone transfers ETH to the contract address. ...
user avatar
7 votes
Accepted

Crowdsales: non-mintable tokens vs mintable tokens (with hard cap)

Yup, its the same - but if you give 10 developers the same problem you could get 10 different ways of solving it. Its interesting though, if you think about it - Ethereum actually rewards users of ...
user avatar
  • 586
6 votes
Accepted

Error encountered, bailing. Network state unknown. Review successful transactions manually

The origin of the issue is because you're trying to deploy the contract from the file migrations/1_initial_migration.js that is supposed to be used only for the deployment of Migration.sol. To deploy ...
user avatar
5 votes

how to setup multicurrency ICO / Crowdsale

An Ethereum contract cannot directly interact with other blockchains. You have to use a service like BTC Relay, their project on github.
user avatar
  • 29.2k
4 votes

How can I create a Dashboard for my Ethereum ICO investors to track their Tokens

I would suggest you using NodeJS and web3js library to interact with ethereum. It would not be really hard to get into NodeJS of you are a web developer. My team and I opened a source code of the ...
user avatar
  • 196
4 votes

Interacting with a deployed contract: How can I mint a token based on the Open Zeppelin Standard

Have a look at Interacting with smart contracts using truffles. If you deployed your smart contract with the name SampleCrowdsale, for example with var mycrowdsale = SampleCrowdsale.deployed(); ...
user avatar
4 votes

Is it possible to create ICO crowdsale seamlessly accepting multiple assets?

This is only a partial answer to your question. One issue you would face is that deposits by people who buy your tokens with BTC or any other cryptocurrency besides ETH would have to be credited ...
user avatar
  • 2,249
4 votes
Accepted

TxReceipt Status fail sending ETH to Contract on Rinkeby

We had some of the same problems as you did. What we figured out was the following: startTime and endTime must be set so that when you call the contract, you are in fact buying tokens when the sale ...
user avatar
4 votes

Error encountered, bailing. Network state unknown. Review successful transactions manually

Check any abstract/interface methods are being implemented correctly. I get this issue, where it compiles but won't deploy, when I fail to implement abstract/interface methods correctly in inheriting ...
user avatar
  • 1,608
4 votes

Invalid implicit conversion from address to address payable requested

Okay i understand know the reason why the tutorial code work and your code doesn't work is because of this is because in new solidity the CrowdSale is actually: constructor (uint256 rate, address ...
user avatar
  • 989
3 votes

Risk of attack if you give more than the half of your tokens?

You should clarify what you mean by an attack. If you are using your tokens as a mean to get consensus from all the token holders than yeah, owning more than 50% of the tokens effectively means they ...
user avatar
  • 191
3 votes

Finally my first Token - questions

All the transfers seem to have the same from and to address (the token contract). I believe the issue is this line in buyTokens: ERC20(token).transfer(this, tokens); Shouldn't that read as follows? ...
user avatar
  • 26.2k
3 votes
Accepted

What is an example of an ICO or Crowdsale that used the Open Zeppelin RefundVault contract?

For example, when you create a new RefundVault inside of the crowdsale you pass in an address in the constructor. What address should this be? That's the crowdsale's wallet address. The ...
user avatar
  • 407
3 votes

Make a crowdsale reusable?

This sounds like a perfect use case for the now finalized ERC-1155 token standard, which allows one to manage any number of fungible and non fungible tokens in a single contract.
user avatar
2 votes
Accepted

Is ICO a crowdsale or decentralized organization?

ICO: Initial coin offering: Doesn't have anything to do with an organization. It can be used by an organization to reward their tokens to members that contribute.
user avatar
2 votes
Accepted

Crowdsale contract and safe withdrawals

Has anybody used this code to crowdsale tokens and perform a withdrawal as a user? IMO that code is more a sketch of an actual ICO and not meant as a secure and proper ICO reference implementation. ...
user avatar
  • 8,064
2 votes

Is that a need to add every investors to multisig wallet?

The investors are not owners of the multisig, the founders of the project are. The standard is for the token contract to implement ERC20 such that investors can transfer their tokens (etc). ...
user avatar
2 votes
Accepted

How to transfer ETH from contract to external address after crowsale?

You've possibly provided too little information to really be helpful. Can you post the contract's address and the parameters used to create it? address ifSuccessfulSendTo = uint ...
user avatar
2 votes

How reliable is it to use Block number to calculate Time in Smart contract?

Yes, of course. Both block timestamp and block number are equally reliable. There is an entire alarm clock system built in ethereum for executing something at a later stage. For more info on that you ...
user avatar
2 votes
Accepted

Where to place in Zeppelin crowdsale variables

SampleCrowdsale is the contract constructor. It is called automatically when the contract is created. You can tell it is the constructor because the name of the method is the same as the name of the ...
user avatar
2 votes

In the example Ethereum crowdsale contract, what is the safe withdrawal function?

These are the relevant parts: modifier afterDeadline() { if (now >= deadline) _; } and function safeWithdrawal() afterDeadline { if (!fundingGoalReached) { uint amount = balanceOf[...
user avatar
  • 10.6k
2 votes
Accepted

Risk of attack if you give more than the half of your tokens?

Just to add to the answerof cappy, it seems you are getting confused between an attack at the ethereum network level and an attack against your contract. When we talk of 51pct attack, its generally ...
user avatar
2 votes

Risk of attack if you give more than the half of your tokens?

Is your tokens following ERC20? If yes, it is not necessary to have a minimun amount to avoid attacks. Design patterns are good because it is well used and tested. As I said, if you are following ...
user avatar
  • 1,014
2 votes

Can the variables in a crowdsale contract be modified in future?

That depends on the contract code. If the contract has functions that change the variables holding these parameters then it's possible to change them. So it's highly recommendable to look at the code ...
user avatar
  • 1,731
2 votes

Error: VM Exception while processing transaction: invalid opcode

One of the problems could be that you are setting tokenReward (the address of the token you will be using for distribution) to be one of the eth accounts, which is an externally owned account (a user)....
user avatar
  • 7,216
2 votes

Questions about Crowdsale contract

1: It should be 10 million multiplied by the decimals, so: uint256 constant INITIAL_SUPPLY = 10000000 * 10** uint(decimals); 2: It is unrelated to whether or not the tokens are mintable. The ...
user avatar
  • 7,216
2 votes

Crowdsale - Balance declaration error

In HEY you wrote: function StandardToken() public { balance[msg.sender] = INITIAL_SUPPLY; } But the variable name is balances, not balance.
user avatar
  • 7,216

Only top scored, non community-wiki answers of a minimum length are eligible