Tokens from an ICO are generally purchased by sending Ether to the contract. The examples given in the current chapter use a fallback function to accept direct Ether payments. This allows anyone to send Ether to the contract address through a transaction to purchase tokens.
If the user does not have Ether, they can either purchase it from an exchange or convert other cryptocurrencies to Ether using services such as Shapeshift. Also, you can make use of BTCRelay to accept Bitcoin transactions from Ethereum.
In this recipe, you will learn various options for accepting cryptocurrency payments in your ICO.