Card: Onramper

Card top-ups need no backend. The app opens Onramper in a new tab, locked to USDC on Base and pre-filled with the user’s smart-account address:
Card deposits aren’t written to the Numpay history; they appear in the on-chain balance.

NEAR wallet: NEAR Intents 1Click

Users with USDC on NEAR can move it to their Numpay wallet on Base. The backend talks to the NEAR Intents 1Click API with a partner key that never reaches the browser.

Sequence

NEAR transaction details

  • If the deposit address has never held NEAR USDC, the transaction first registers it with storage_deposit (NEP-145, 0.00125 NEAR), then calls ft_transfer with exactly 1 yoctoNEAR attached (NEP-141). Both actions go in one transaction so they run in order.
  • The app requires about 0.003 NEAR in the wallet for gas and storage.
  • Wallets that can’t hold NEAR USDC (Ethereum-wallet sign-in, NEAR CLI) are hidden from the selector.

Status machine

Deposits that were sent but not seen to finish are remembered in localStorage (numpay.nearPendingDeposits) and re-checked on the next visit, so a deposit still lands in the history if the user closes the page mid-way.