I would like to receive cryptocurrency payments for bitcoin, ethereum, ripple, stellar and over 150 different altcoins via my website.

Similar to a cryptocurrency exchange such as Binance, I would like to offer a list of cryptocurrencies within my app for users to deposit any coin into. By clicking on one of the coins in the list, a unique wallet address would get generated and displayed to the user, instead of using one public wallet address for all users.

That way, if my app user is logged in with an email address, I can associate that address with the wallet ID. So when the payment arrives, I can then notify the user via email. I think this is how Binance works, at least for Bitcoin deposits.

How would I automatically generate a wallet ID for bitcoin, ethereum, stellar and others, and then be notified upon receipt? Is there a generic API/bridge for doing this? I would suppose the answer is no, because the service provider would probably have access to all private keys. So is there a list of documentation for programming all coins, in some central place, or perhaps an open source project that works with all coins?

  • As an aside, if I were you I would start with just a handful of the most popular cryptocurrencies, as they have the most liquidity and largest userbase. I would guess you'll have extremely marginal returns on the work it will take to implement coins #11 through #150 (for example). – chytrik Apr 7 '18 at 23:42
  • Yes I realize that, thank you. However, the requirement will actually be 150 coins at least. I realize we may never actually receive deposits for some of those due to their unpopularity. – Dr. Gordon Knighton Apr 7 '18 at 23:59
  • shapeshift.io might help. It has an API. I haven't used it, so you might want to test it out before putting in on a website. I will make that an answer if it is helpful. – Grant Garrison Apr 8 '18 at 16:43
  • Thanks, but we are looking to create something like ShapeShift.io. From what I understand now, that entails running a full node and about a week's worth of development for each coin. I could be wrong, as I'm still learning. – Dr. Gordon Knighton Apr 9 '18 at 8:32

It may be very costly to run a node for each coin. There are some payment gateways such as coinpayments that will handle this through APIs for you, but I don’t think they have anything close to the number you’re asking (150 coins).

One big advantage is that if you add an Ethereum node, you can basically support many ERC-20 tokens at the same cost.

  • Do you mean that we would need to run a "full" node for each coin, if we want to automatically generate wallets and programmatically get notified when deposits are made into those wallets? So we may need 150GB of disk space and 2GB of RAM and sufficient bandwidth for each coin? Unfortunately coinpayments doesn't offer enough coins. Hosting costs will not be a problem, however development is a problem. I'm trying to get a sense of how much work needs to be done. – Dr. Gordon Knighton Apr 8 '18 at 9:12
  • In short, yes. There are some coins that offer SPV (Simple Payment Verification), but not all of them. I think maintaining a full node for each coin is probably the best way to do it. You don't have to trust others and your service will not fail if dependencies go down. That's the way most of the exchanges do, some even show in their health page the status for all their nodes, including the height, etc. e.g. hitbtc.com/system-health – Bruno Volpato Apr 10 '18 at 22:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.