New AVAX user bootstrapping?

There’s a horde of users in the US that want to buy Avax, but can’t use Pangolin because they don’t have any AVAX to pay transaction fees, and are officially prohibited from using Binance (although some are comfortable using a VPN).
To get around the chicken-and-egg problem, could there be a way to swap ETH for AVAX, and “borrow” enough for the AVAX fee, to automatically be paid immediately after the transaction settles?

It could be solved within Pangolin or with a special separate “faucet” app to bootstrap.
Just publish an ETH address for users to send funds to, tell the user to specify an AVAX address in a memo for the ETH transaction. Scan for new transactions to the ETH address, extract the AVAX addresses, apply the conversion rate plus some fee and send the corresponding AVAX funds back.

Obviously scammers would make evil versions, so having an officially supported one would be helpful.
This would just be for onboarding users to Pangolin, and can be capped by some max amount per transaction (for example, under 1 AVAX). The “faucet” pool can be replenished daily by swapping incoming ETH for AVAX on Pangolin behind the scenes.

5 Likes

Okcoin has AVAX, same with kucoin but you’d have to use BTC or tether. Easiest route is okcoin

I’m trying to onboard users to Pangolin, not the other exchanges.
How would a newbie user care about Pangolin if I send them to another exchange first?
That’s why I’m posting in the developer forum - to build improved onboarding if the user doesn’t already have AVAX.

1 Like

Best way imo would be an official avax faucet. Some basic security feature (like intelligent captcha, delayed transactions, traffic policy and so on) would make it the easiest way to provide the “first transaction fees” for new users

1 Like

You need to buy your AVAX or your ETH, according to your proposal, somewhere and that’s generally an exchange…there is no way around it unless you’ve an on-ramp FIAT gateway directly into the DEX, but I think that can’t be done because of regulatory problems…so send your friends to OKcoin make them buy AVAX and then have them moved to Pangolin

1 Like

Surely there’s a way to bootstrap a swap of ETH for AVAX without paying fees to yet another exchange?

Come on, we’re supposed to be solving problems for Pangolin here, not steering people to yet another CEX :roll_eyes:

Can any Pangolin developers chime in? Maybe I’m missing something, but it seems like a matter of 1) creating a separate pool for this purpose, 2) a customized contract for this use case, and 3) a mechanism to replenish the pool.

Completely agree with you. It shouldn’t be hard to make separate contracts that supply a bit of AVAX for network fees and subtracts it after the swap. And not just for new users, it’s also super annoying if you accidentally run out of AVAX, get stuck, and have to go all the way back to Binance to get some more.

Edit: Even if it is hard to implement, it should be done.

1 Like

My point is that right now you’re buying ETH from a CEX, so I don’t see the difference if you buy AVAX as well from an exchange…I agree that finding a way to make you pay gas fees with any token would be very useful, but I think that would have to be something to be implemented by the avalanche network…
There are services like www.Divs.io where you can simply swap your tokens for another one without the need of passing through an exchange if you wish

“Muh”, many users already have Ethereum, but have no option to get AVAX from their current exchange (for example, the most popular exchanges in the USA such as Coinbase or Gemini). It’s not a great user experience to make these users create accounts at another exchange just to start using Pangolin to begin with. That is a complete non-starter for newbie users I’ve tried to onboard.

As Bobby says, it should be possible to make a special contract that supplies enough AVAX for network fees and subtracts it after the swap.

The option to do nothing is an option - but not the way to greatness

The dev tools include a faucet option (here is one for the test network)

With a few changes, it looks possible to

  1. Define an ETH address that users can send a small amount of ETH to for a small amount of AVAX.
  2. Scan the ETH address for payments sent, that have a memo for an AVAX receiving address, and build an allow-list from these addresses
  3. Enable the faucet only for the allow-listed AVAX addresses. Expire addresses older than thirty days so that the list doesn’t become huge.