# Understanding non-custodial wallets in Stripe Treasury

## What is a non-custodial wallet?
When you hold USDC in Stripe Treasury, your funds are stored in a **non-custodial wallet** which is a type of crypto wallet where you, not Stripe, are the ultimate owner.
Here's the key difference from a traditional bank account or custodial wallet: your wallet has a unique string of characters that acts as permanent proof of ownership, known as a **private key**. Whoever holds that key owns the wallet and everything in it. Stripe never owns your private key, instead it belongs to you alone.
A **custodial wallet** is like a bank locker where the bank holds a spare key. The bank can access your locker on your behalf, and you rely on them to keep it safe. A **non-custodial wallet** is like owning the only key that exists. No one can open it without you, including Stripe.
## How your USDC balance works with Stripe
Because Stripe needs to execute money movement on your behalf (sending and receiving USDC, processing payouts), you authorize Stripe to act as a signer on your wallet when you set up your financial account. This is called **delegating signing authority**.
Delegation allows Stripe to:
- Send and receive USDC on your behalf
- Process transactions automatically
- Keep your balance in sync with your Stripe account
At any time, you can revoke this authorization and take full control of your wallet by exporting it.
## Exporting your wallet
Exporting your wallet means taking possession of your private key — the master credential that gives you direct, independent access to your USDC outside of Stripe, using any compatible crypto wallet.
**This is a critical and irreversible action.** Once you export your wallet:
- Stripe's authorization to move funds on your behalf is permanently revoked
- Your USDC balance and financial account are **immediately disabled** in the Stripe Dashboard and API
- You can no longer send, receive, or manage USDC through Stripe
- There is no way to re-import your wallet or restore your financial account after export
Export your wallet only if you intend to manage your USDC entirely outside of Stripe.
### What to expect during export
1. **Confirm your identity.** You'll be asked to log back in with your Stripe email, password, and a one-time code sent to your email. This step protects against accidental or unauthorized exports.
1. **Wait for pending transactions to clear.** If you have any pending transactions, Stripe holds the export until they settle — typically within an hour. You'll get an email notification when your wallet is ready.
1. **Copy your wallet credentials.** Once the export is complete, Stripe shows your wallet address and private key. **Copy these immediately and store them somewhere safe and offline.**
1. **Your financial account is closed.** After export, your Stripe USDC balance is disabled. Any USDC you hold is now only accessible via the private key you exported.
### Keep your private key safe
Your private key is the only way to access your wallet after export. If you lose it, your USDC is unrecoverable — Stripe cannot help you retrieve it. There is no reset or recovery process.
Ways to keep your private key safe:
- Never share your private key with anyone, including Stripe support
- Store it offline (written down or on a hardware device), not in email or a messaging app
- Keep at least one backup copy in a separate, secure location