Send
Send from a wallet whose keys are on this device, or prepare a payment for your offline device to sign; fees, several recipients, payment links, stuck payments and look-alike addresses.
How you send depends on where the wallet's keys are:
- Keys on this device: you fill in the payment, review it and send it, all in one place.
- A watched wallet (keys on your offline device): the online copy prepares the payment as a QR code, the offline device checks and signs it, and the online copy sends what comes back.
Send with the keys on this device
- Open the wallet and select Send.
- Asset: pick the coin or token. For the Ethereum networks, pick it on the network you want to send on (each line shows its network, for example "ETH · 0.25 · Base").
- To: paste or type the address. You can also select Scan a QR code, paste a picture of a QR code, or use the contacts button in the field. A payment link fills in the rest of the form (see Payment links, below).
- Amount: type it, or select Max.
- Fill in the extras for some coins:
- Bitcoin: Speed, either Fast · ~10 min, Normal · ~30 min or Slow · ~1 h.
- Zcash: an optional Memo (private: only the recipient reads it; up to 512 bytes).
- Select Review. AirWallet checks the payment with the network and shows the Confirm screen.
- Read the recipient, the amount and the fee, then select Send.
The Confirm screen shows the full recipient address, where it comes from, the fee, the network and any warnings. If the recipient is one of your contacts, its name shows. If the address only looks like one you know, you get a warning (see Contacts and look-alike addresses, below).
How fees are shown
| Coin | What the Confirm screen shows |
|---|---|
| Bitcoin | The exact fee and its rate (sat/vB) |
| Ethereum networks | "about" what it will likely cost, and "at most" what it can cost. On Base and Optimism both include the network's L1 data fee. |
| Solana | The most it can cost |
| Monero, Zcash | The exact fee |
On Ethereum networks you pay only for the gas the payment actually uses, which is why there are two figures.
A far higher fee than usual
AirWallet never refuses a payment because of its fee: a busy network can really need it, and a wallet that refuses would leave you stuck. Instead it warns you, and above a higher limit it asks once more. The Send button becomes Send anyway (on the offline device, Sign anyway), and the question replaces the note above the buttons. The offline device asks again when it signs.
| Coin | Warned above | Asked once more above |
|---|---|---|
| Bitcoin | 0.002 BTC, or 5% of the amount | 0.05 BTC |
| Ethereum | A fifth of the network's limit | 0.05 ETH on Ethereum; 0.01 ETH on Base, Arbitrum, Optimism and Robinhood Chain; 50 POL on Polygon; 0.1 BNB; 2 AVAX |
| Solana | 0.001 SOL | 0.05 SOL |
| Monero | 0.001 XMR, or 5% of the amount | 0.01 XMR |
| Zcash | 0.01 ZEC | 0.01 ZEC |
After you select Send
A progress screen follows the payment until it's done, with a View on explorer link. A payment that hasn't reached a block yet is pending:
- Bitcoin: the recipient's wallet sees it coming at once; it's in a block in about 10 minutes.
- Monero: in a block in about 2 minutes. The recipient can spend it after 10 confirmations, about 20 minutes.
- Zcash: in a block in about a minute. The recipient can spend it after 10 confirmations.
- Solana: confirmed in seconds. If the network doesn't pick it up in time, nothing is sent and you can try again.
In the wallet's Activity, each payment's status is Pending, Succeeded or Failed.
A payment is never sent twice. Bitcoin and Ethereum payments keep their signed transaction until it's sent. If an error might hide a success (a lost answer, for example), AirWallet checks the transaction's own ID first. Pressing Send again sends the very same transaction, which can only go through once.
Send from a watched wallet
Your online copy needs to watch the offline wallet first: on the offline device, Receive → Show to my online wallet…, then scan that code on the online copy (see Set up an offline signer). Bitcoin and Ethereum need it, because the online copy has to know the wallet's coins and its transaction count. Solana can also go to "Any wallet on the offline device".
- Online: open the watched wallet and select Send. It opens New transaction. (You can also start from ⋯ (More) → Offline signing… → New transaction.)
- Fill in From, Asset, To and Amount, then select Create code.
- The online copy shows Scan on the offline device with a QR code. Long codes are animated: hold the offline device's camera on it until it's read.
- Offline: open Scan to sign and scan the code.
- Read the review on the offline device's screen: the recipient, the amount and the fee. A hacked online computer could have changed them, so check them here. Then select Sign.
- The offline device shows the signed transaction as a QR code.
- Online: select Scan signed code → (or Scan signed code on the Sign screen) and scan it. The online copy sends it.
Always read the recipient and amount on the offline device's screen. It shows what it read from the very bytes it signs, and refuses anything it can't show completely.
For everything the offline device checks before it signs, see What the signer checks.
How long a code stays valid:
- Bitcoin and Ethereum: until it's used.
- Solana: the code renews itself every 15 seconds, unless the wallet uses a durable nonce (then it stays valid until it's used). A signed Solana transaction without one is good for about a minute; if it expires, nothing is sent.
- Monero: until those coins are spent another way. The first send from a watched Monero wallet takes one extra round (see Coins and networks).
- Zcash: about an hour.
A code you made waits on the online copy's Sign screen until its signed answer comes back. Select × to drop one.
On a watched wallet's New transaction, a pasted picture of a QR code fills in the address only.
Pending on the offline device
The offline device never sees the network, so it keeps track itself:
- Each send it signs is listed under Pending until your online wallet reports it. Its balance is shown less the amount and the fee.
- To settle what has landed, scan a balance code from the online copy (on the online copy: ⋯ (More) → Offline signing… → Sync balances). Every code the online copy shows carries balances too.
- Show again shows the same signed code. It can only land once.
- × clears a pending send. Use it only if you know it won't go through.
- A Solana send signed with a durable nonce has Call it off: a short transaction of its own that, once your online wallet sends it, stops the first one for good.
Several recipients
Some coins can pay several people in one transfer, with one fee. On Send (or a watched wallet's New transaction), select Pay several people and add a line for each address and amount.
| Coin | Addresses per transfer |
|---|---|
| Bitcoin | Up to 20 |
| Monero | Up to 16 |
| Solana (SOL itself, not tokens) | Up to 16 |
| Zcash | Up to 20 |
| Ethereum networks | One |
Ethereum pays one recipient per transaction: paying several at once takes a contract call, which the signer won't sign without being able to show it. Tokens also go to one recipient at a time, and Max pays one address: type each amount to pay several. The offline device shows every recipient before it signs.
Payment links
Paste or scan a payment link into To, or paste a picture of its QR code, and Send fills in the coin, the address and the amount. A note from the request shows under the form.
| Link | Standard | What it can carry |
|---|---|---|
bitcoin: | BIP 21 | Address, amount, label or message |
ethereum: | EIP-681 | A payment, or a token transfer, on one of AirWallet's eight networks |
solana: | Solana Pay | Address, amount, a token |
monero: | Address, amount | |
zcash: | ZIP 321 | Address, amount, memo, message |
Some requests are refused or come with a warning:
- A Bitcoin request with a requirement AirWallet doesn't know (
req-…) can't be paid from here. - A Solana Pay request with a reference: AirWallet doesn't add it, so the shop may not see the payment on its own. Keep the transaction's link to show them.
- A Monero request with a payment ID: ask for an integrated address instead.
- A Zcash request that pays several addresses: pay each on its own. A memo to a transparent address is refused.
- An Ethereum request for an unknown network, or for anything more than a payment or a token transfer, is refused. A token that isn't on your list gets a warning to add it first, after checking its contract.
Speed up or call off a stuck payment
Bitcoin
Every Bitcoin payment AirWallet makes can be replaced with a higher fee (replace-by-fee).
- Open the wallet's Activity and select the pending payment.
- Select Speed it up.
- Review the replacement: the same coins and recipients, with the change paying a higher fee. Then send it.
For a watched wallet, you get a code for the offline device to sign, as with any send from it. For a hardware wallet, speed it up on the device (or in the app it works with).
Ethereum
If an Ethereum payment is still waiting after 45 seconds, its progress screen says "Taking a while? Network fees may have risen since." and offers:
- Speed it up: the same payment again, with the same number (nonce) and fees at least an eighth higher.
- Call it off: a transaction with the same number that sends nothing to your own wallet. Only one of the two can ever go through.
The same two buttons are in the wallet's Activity, on any Ethereum payment that is still pending. That includes one sent from another app or another copy of AirWallet.
For a watched wallet, both make a code for the offline device to sign. The offline device's review says when a transaction is calling off another: "It sends nothing to this same wallet: that's how a waiting transaction with the same number is called off."
Contacts and look-alike addresses
Contacts
Contacts put names on the addresses you pay. The name then shows wherever the address does, including on the Confirm screen.
- To add one: ⋯ (More) → Contacts… → Add a contact. Pick the network, enter a name and the address, and select Save.
- In any To field, the contacts button lists your contacts and recent recipients ("Paid recently"), and suggestions appear as you type.
- After a send, a "Save … as a contact" button appears on the progress screen.
Look-alike warnings
Scammers make addresses that start and end like one you know, then send you tiny payments so that you copy their address from your history. This is called address poisoning.
AirWallet compares every recipient with your contacts, your recent recipients, everyone your wallets have paid, and your own wallets. An address with the same first 3 and last 3 characters (after the prefix, such as 0x or bc1q) but different in between gets a warning: "This address only looks like…". Check every character.
In Activity, a payment from a look-alike is tagged Look-alike sender, and its address is never offered for copying.
Sends you didn't make
For a watched wallet, the online copy logs every payment it sends. A send from that wallet that it didn't make is marked Not sent from this app in Activity. If it wasn't you (or another of your copies, or another app with the same words), someone may know your words or keys: move what's left to a new wallet.
AirWallet