# Test Crypto Transactions

While in Bead’s test environment, crypto payments use live blockchain networks. This means real crypto assets must be used for Sandbox crypto testing.

For example, to test a USDC payment, you must use real USDC tokens on a supported live network such as Base or Solana. To test Bitcoin or Bitcoin Lightning, you must use real BTC on the applicable live Bitcoin or Lightning network.

Please use the following sections for guidance on acquiring tokens for test payments, including fee tokens to cover blockchain or Lightning network fees, and for running an end-to-end test payment through the hosted payment page.

{% hint style="success" %}
We highly recommend testing with USDC on the Base network for its low fees and fast transaction speeds. USDC on Solana is also well suited for testing due to low fees and fast finality.

For USDC on Base and USDC on Solana, the minimum Bead payment amount is $1.00 USD. This minimum is separate from any live-network fee the payer’s wallet may require to submit the transaction.
{% endhint %}

For background on how wallets, networks, and fees work, see:

* [Crypto and Wallet Concepts for Integrators](https://developers.bead.xyz/reference-guide/core-concepts/crypto-and-wallet-concepts-for-integrators)
* [Compatible Crypto Wallets](https://developers.bead.xyz/reference-guide/operational-guides/compatible-crypto-wallets)
* [Crypto payments, environment and testing](https://developers.bead.xyz/faqs-and-troubleshooting/environment-and-testing/crypto-payments-environment-and-testing)

## Install a Crypto Wallet App

1. Download a crypto wallet app. For example:
   * Phantom on [Android](https://play.google.com/store/apps/details?id=app.phantom) or [iOS](https://apps.apple.com/us/app/phantom-crypto-wallet/id1598432977) for USDC on Solana and Base
   * Base app (formerly Coinbase Wallet), MetaMask, or Trust Wallet for USDC on Base and other EVM networks
   * A Bitcoin or Lightning capable wallet such as Wallet of Satoshi, Phoenix, or Muun for Bitcoin and Lightning testing
   * You may also set up a browser extension, for example:
     * Phantom from the [Chrome Web Store](https://chromewebstore.google.com/detail/phantom/bfnaelmomeimhlpmgjnjophhpkkoljpa)
     * MetaMask or Base browser extensions for EVM networks
2. Set up your wallet app/account
   * Create a secure password
   * Record your seed phrase

{% hint style="danger" %}
When setting up your wallet, be sure to record and safely secure your Secret Recovery Phrase. This is the only way to recover your wallet if you move to a new device. If you lose your Secret Recovery Phrase, any funds in your wallet may be permanently lost.
{% endhint %}

## Purchase Tokens

Many wallets, including Phantom, Base app, and MetaMask, offer the ability to purchase assets directly within the app using a card or other payment method. This is often the fastest and easiest method, but it may carry convenience fees added to the purchase price by on ramp partners.

You can also acquire tokens on an exchange and then withdraw them to your self custody wallet. Some wallets support linking an exchange account to simplify this process, but you are still performing an exchange withdrawal under the hood.

### Purchase Tokens in the Phantom Mobile App (USDC on Base or Solana)

The following example uses Phantom, focusing on USDC on Base. The same pattern applies to USDC on Solana, with the network set to Solana.

1. Select the "Buy" button from the main app screen
2. Search for and select your token
   * For USDC on Base, be sure to search for USDC in the search field and select the token with the following icon (outlined in red):\
     ![](https://450383315-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjL0BeBYhFGcs8tIiuCcV%2Fuploads%2Fr2iAMD93nSsNeNOZdI61%2Fimage.png?alt=media\&token=cde66ffd-3ed0-4715-913a-9d4f5e2dbf48)
3. Enter your desired amount of tokens for purchase
   * USDC has a value of 1:1 with the U.S. Dollar, meaning $20 gets you approximately 20 USDC
   * For USDC on Base and USDC on Solana, the minimum Bead payment amount is $1.00 USD
   * Wallet apps and on-ramp providers may also apply their own minimum purchase amounts or convenience fees
   * Be sure to purchase some extra tokens that you will need to convert to the native network token, such as ETH on Base or SOL on Solana, to cover network fees. This is covered in the next section.
4. Select the payment method/provider
   * Wallet apps support multiple payment partners, some with better rates and/or convenience
5. Select "Continue" to proceed to the payment provider quote
   * Some partners require that you create an account before making a purchase (e.g. Coinbase)
   * Google SSO is often offered a means for expedient account creation (e.g. Topper)
6. Carefully review the network, fees, and exchange rate (see below for an example from Topper)\
   ![](https://450383315-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjL0BeBYhFGcs8tIiuCcV%2Fuploads%2FzymrxhrUXGdpK4ZyQX64%2Fimage.png?alt=media\&token=c9fd3b60-d6f2-4e43-8b7f-bcde52c63704)
7. Review and complete your payment
   * Note that the payment method selected at this stage may carry an additional fee (e.g. Debit card, Google Pay)
8. Wait for your tokens to arrive
   * Return to the main screen of your wallet app
   * Allow a short amount of time for your tokens to appear

Always confirm that the token and network shown in your wallet match the network you intend to test (for example USDC on Base or USDC on Solana) before purchasing.

## Acquire Fee Tokens

In order to create transactions, fees must be included and are typically paid with the network’s native token. For example:

* On the Base network, ETH is required to pay fees.
* On the Solana network, SOL is required to pay fees.
* On Bitcoin, fees are paid in BTC as part of each transaction.
* On Lightning, fees are paid in BTC through Lightning channels and are handled by the Lightning wallet and routing nodes.

Transaction fees can vary based on the network and other factors such as network congestion and the settings chosen in the wallet.

{% hint style="info" %}
Transactions on the Base network are typically very low cost, often less than a few cents USD.

Transactions on the Solana network are also typically very low cost, often in the cent or sub cent range.
{% endhint %}

There are two common methods for acquiring fee tokens in the same wallet where your USDC or BTC reside:

1. [Purchase tokens using the method above](https://app.gitbook.com/o/F9DaGlFL61iVGGoVfWov/s/jL0BeBYhFGcs8tIiuCcV/~/changes/108/payments/test-crypto-transactions#purchase-tokens)
2. Convert (swap) a portion of your existing tokens into the required fee token.

{% hint style="info" %}
Converting is often the lower cost option to acquire fee tokens compared with buying small amounts directly, because many providers add higher fixed fees to small purchases.
{% endhint %}

### Convert Tokens in the Phantom Mobile App (USDC to ETH)

The following example assumes you already have USDC in Phantom.

1. From the home screen, select your existing token from the list of tokens (for example USD Coin).
2. Select the “Swap” or “Sell” button, depending on the Phantom version and context.
3. Carefully confirm the conversion parameters:
   * Enter the amount you wish to convert (for example, the equivalent of 1.00 USD).
   * Select the token you wish to receive:
     * ETH on Base when testing USDC on Base.
     * SOL on Solana when testing USDC on Solana.
   * Note the conversion fee at the bottom of this screen\
     ![](https://450383315-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjL0BeBYhFGcs8tIiuCcV%2Fuploads%2FWwt0TIMBUicnplKD54UL%2Fimage.png?alt=media\&token=5e647778-ab55-412b-8fef-38903bd2ae51)
4. Confirm the conversion to execute the swap.
5. Wait for your tokens to arrive
   * Return to the main screen of your wallet app
   * Allow a short amount of time for your tokens to appear

{% hint style="info" %}
Some wallet apps or extensions have a "Swap" button, which should be used to initiate a token conversion, if available.
{% endhint %}

## Complete a Test Payment

The flow below focuses on USDC through the hosted payment page. The same pattern applies to other crypto tenders such as Bitcoin on chain and Bitcoin Lightning, with differences only in asset selection and how the wallet interprets the QR code.

1. Create a payment via your test application/API
   * For USDC on Base and USDC on Solana, create a payment of at least $1.00 USD
   * For other crypto tenders, use a small live-network test amount appropriate for that tender
2. From the Bead hosted payment page, select the "USD Coin" tender type
3. Open your wallet app and select your token (USDC)
4. Select "**Send**" and click the Scan/QR button (typically in the top-right corner)
5. Scan the QR code on the test payment page\
   (Alternatively, copy/paste the address from the QR code)
6. Enter the payment amount as displayed on your payment page (e.g. 1.00)
7. Select "Next" to confirm transaction details, such as recipient address and fee amount
8. Select **Send** and wait for your payment to complete

{% hint style="danger" %}
When completing transactions, always scan or copy the address in the QR code on the Bead hosted payment page. **Do not select "Recently Used" addresses from your wallet app**. Bead uses unique addresses for each payment—sending to an old address will not result in a completed payment and may result in a loss of funds.
{% endhint %}

## Next steps and troubleshooting

If you run into issues while testing crypto payments, use the following pages:

* [Crypto payments, environment and testing](https://developers.bead.xyz/faqs-and-troubleshooting/environment-and-testing/crypto-payments-environment-and-testing) for guidance on which networks are used in each environment, how to fund wallets safely with small test amounts, and common testing issues
* [Compatible Crypto Wallets](https://developers.bead.xyz/reference-guide/operational-guides/compatible-crypto-wallets) for the current list of supported assets, networks, and example wallets
* [Payments FAQs](https://developers.bead.xyz/faqs-and-troubleshooting/payments-faqs) for common questions about [crypto testing](https://developers.bead.xyz/faqs-and-troubleshooting/payments-faqs/crypto-testing-and-fees), fee behavior, and recommended tenders


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.bead.xyz/payments/test-crypto-transactions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
