diff --git a/public/assets/wallets.js b/public/assets/wallets.js index 13ec140..c213999 100644 --- a/public/assets/wallets.js +++ b/public/assets/wallets.js @@ -6,4 +6,18 @@ const signedIn = !!(me && me.signedIn && me.email); document.getElementById('gate').style.display = signedIn ? 'none' : 'block'; document.getElementById('body').style.display = signedIn ? 'block' : 'none'; + if (!signedIn) return; + // MoonPay: same signed link the Buy pane uses, prefilled with this member's wallet when one is linked + const mb = document.getElementById('wlMoonpay'), note = document.getElementById('wlMoonpayNote'); + if (note && !me.address) note.textContent = 'Link your wallet first (Wallet tab) and MoonPay opens with your address already filled in. Without it you paste the address yourself.'; + if (mb) mb.addEventListener('click', async () => { + let pol = 30; + try { const { products } = await (await fetch('/api/catalog')).json(); const p20 = (products || []).find(p => p.priceCents === 2000); if (p20 && p20.costWei) pol = Math.max(30, Math.ceil(Number(p20.costWei) / 1e18) + 3); } catch (e) {} + try { + const r = await (await fetch('/api/moonpay-url?pol=' + pol + (me.address ? '&address=' + encodeURIComponent(me.address) : ''))).json(); + if (!r.url) throw new Error('no url'); + window.open(r.url, '_blank', 'noopener'); + IAP.status(r.signed ? 'MoonPay opened with your wallet address pre-filled. Choose the amount, pay, and the POL lands in your wallet.' : 'MoonPay opened. Choose POL on the Polygon network and paste your own wallet address as the destination.', 'ok'); + } catch (e) { IAP.status('Could not open MoonPay. Try again in a minute.', 'bad'); } + }); })(); diff --git a/public/wallets.html b/public/wallets.html index 2a38b54..ad7138d 100644 --- a/public/wallets.html +++ b/public/wallets.html @@ -23,6 +23,8 @@ .steps li{counter-increment:s;position:relative;padding:0 0 16px 46px;font-size:15px;line-height:1.5} .steps li::before{content:counter(s);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:rgba(67,232,195,.12);border:1px solid rgba(67,232,195,.45);color:var(--mint);font-family:var(--disp);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:14px} .steps li b{color:var(--ink)} + .wl-links{margin:10px 0 0;display:flex;gap:6px;flex-wrap:wrap} + .wl-links .btn{margin-top:0} .note{background:rgba(4,8,7,.45);border:1px solid var(--line);border-radius:10px;padding:12px 16px;font-size:14px;color:var(--muted);margin:0 0 12px} .note b{color:var(--ink)} h2{margin:34px 0 10px;font-size:26px} @@ -53,22 +55,27 @@

MetaMask recommended

Browser extension on desktop, app on phone. The one to use for Qualified Start, because it lets you add extra accounts under the same wallet, one per position. Connects directly on desktop and through WalletConnect on mobile.

+

Phantom

Clean phone and desktop apps, Polygon supported. No purchase-size block. Good choice if you are new and only ever plan to run one position.

+

SafePal

Phone app with a built-in card purchase option for POL. Connects through WalletConnect. Works well for members who do everything on a phone.

+

Coinbase Wallet

The self-custody wallet from Coinbase, not the exchange account. Handy if you already buy crypto on Coinbase: buy POL there and send it to this wallet on the Polygon network.

+

Trust Wallet works, with one catch

Trust Wallet blocks any purchase that would spend most of the POL in the wallet. You see a red "this transaction will drain your wallet" screen with no way past it. If you use Trust, keep about twice the package cost in POL, or buy a smaller package first. The extra POL stays yours. If a blocked attempt leaves the connection dead, open Wallet, tap Disconnect, then Connect again.

+
@@ -84,6 +91,7 @@

Buy POL with a card through MoonPay

MoonPay is a licensed card-to-crypto service. You pay them, they send POL to your wallet. InstantAdPay is never in the middle of that payment.

+

Opens in a new tab with POL on Polygon selected.

  1. Have your wallet connected first (Wallet tab). Then open Buy packages and look at the live POL price for the package you want. Plan to buy that amount plus 2 or 3 POL for network fees. Trust Wallet users: buy about double.
  2. Tap "Buy POL with a card" under the packages. MoonPay opens in a new tab with POL on Polygon selected and your own wallet address filled in. If for any reason it is not filled in, choose POL (Polygon) yourself and paste your address from step 5 above.
  3. @@ -114,6 +122,6 @@ - +