On this page
- The USDC mint on Solana had a freeze authority set when we read it on 15 October 2026. A frozen token account cannot send, receive or burn USDC until it is thawed.
- Circle's August 2026 reserve report left 129,900,512 USDC of "Access Denied Tokens" out of circulation on 31 August 2026, equal to about 0.18% of the USDC in circulation.
- On Fianto a frozen payer account cannot pay at checkout, and a renewal from one fails as ACCOUNT_FROZEN, a failure that counts.
Can Circle freeze the USDC in your wallet?
Circle can block a USDC address, and on Solana the tool the USDC mint gives it for that is its freeze authority, which freezes the token account that holds the balance. A token account is the account that holds one wallet's balance of one token; your wallet address owns it, and it is what moves when you pay. A freeze authority is the key named on a token's mint that may freeze and thaw those accounts.
Circle's USDC terms (last updated 12 December 2025, for holders outside the European Economic Area) say it twice. Under "Blocklisting": "Circle reserves the right to block the transfer of USDC to and from an address on chain as permitted under the blocklisting policy." Under "Blocked Addresses & Forfeited Funds": "In the event that you send USDC to a Blocked Address, or receive USDC from a Blocked Address, Circle may freeze such USDC and take steps to terminate your USDC Account."
The second sentence is the one a business should read twice: under it, receiving USDC from an address Circle has blocked is grounds for Circle to freeze that USDC. The same section's opening sentence ties freezing to Circle-custodied addresses, while the Blocklisting clause covers blocking transfers on chain. Circle's USDC risk factors page describes on-chain blocking as reserved for "extraordinary circumstances".
What a freeze does is set out in Solana's freeze account docs: the account keeps its owner, its mint and its balance, but it can no longer receive, transfer or burn tokens until the freeze authority thaws it. Nothing leaves the account. The money simply stops moving.
What does the USDC mint on Solana show about freezing?
The USDC mint on Solana has a freeze authority set, so its token accounts can be frozen. A mint is the account that defines a token: its supply, its decimals and the keys that control it. We read the mint at EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v, the address Circle lists for Solana on its USDC contract addresses page, with a getAccountInfo call to a public mainnet RPC node on 15 October 2026 (slot 457,197,141):
| Field | Value on 15 October 2026 | What it means |
|---|---|---|
| Owner program | TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA | The original Token program, not Token-2022 |
| freezeAuthority | 7dGbd2QZcCKcTndnHcTL8q7SMVXAkp688NTQYwrRCrar | Set. Whoever holds this key can freeze or thaw any USDC token account |
| mintAuthority | BJE5MMbqXjVwjAF7oxwPYXnTXDyspzZyt4vwenNw5ruG | Set. New USDC can be minted on Solana |
| decimals | 6 | 1 USDC is 1,000,000 base units |
| Extensions | None | No permanent delegate: no issuer key can move USDC out of your account; only you, or a delegate you approved, can |
A mint whose freeze authority is empty can never freeze anything, and that one field is the whole answer to "can this token be frozen" for any Solana token. Real USDC has it set, as do PYUSD, USDG and EURC, so a freeze authority on its own is no sign of a fake; the mint address is what tells real USDC from a copy, as checking real USDC on Solana walks through.
How to check whether one USDC account is frozen
Ask any RPC node for the token account with getAccountInfo and jsonParsed encoding. The parsed account carries a state field that reads initialized for a normal account and frozen for a frozen one.
How much USDC is frozen today?
Circle's reserve report for August 2026 counted 129,900,512 USDC as "Access Denied Tokens" on 31 August 2026, across every chain Circle issues on. The report, published on Circle's transparency page, defines them in one sentence: "Access Denied Tokens are defined as the amount of USDC tokens that are restricted from being accessed by the holder to comply with a law, regulation, or legal order from a duly recognized authorized authority, court of competent jurisdiction, or other governmental authority."
| Report date | Access Denied Tokens | USDC in circulation | Share |
|---|---|---|---|
| 11 August 2026 | 129,865,986 | 72,034,978,974 | About 0.18% |
| 31 August 2026 | 129,900,512 | 73,320,757,305 | About 0.18% |
The report does not split the figure by chain, so it says nothing about Solana alone. A footnote adds 993,225 USDC "permanently frozen" on the FLOW blockchain, a chain Circle no longer supports. How Circle gets from total supply to circulation, and what the reserve held against it, is in how USDC is backed and redeemed.
Does US law require stablecoin issuers to be able to freeze?
Yes. The GENIUS Act, Public Law 119-27, approved on 18 July 2025, makes the ability to freeze a condition of issuing. Section 4(a)(6)(B) reads: "A permitted payment stablecoin issuer may issue payment stablecoins only if the issuer has the technological capability to comply, and will comply, with the terms of any lawful order." Section 2(16) defines a lawful order as a final and valid order under federal law that, among other conditions, "requires a person to seize, freeze, burn, or prevent the transfer of payment stablecoins issued by the person".
Section 20 sets the effective date at the earlier of 18 months after enactment or 120 days after the regulators issue final rules. What the Act asks of merchants who only accept stablecoins is covered in the GENIUS Act explained for merchants. This is not legal advice: for your own position, ask a lawyer.
What happens when a frozen USDC account meets a Fianto payment?
A frozen USDC account cannot pay through Fianto and cannot be paid through it either, because the payment is one Solana transaction from the payer's USDC account straight to the merchant's. Fianto checks both accounts before it builds that transaction. Here is each case, as the code handles it today:
| Whose account is frozen | When | What happens |
|---|---|---|
| The payer's | One-off payment or the first charge of a subscription | The checkout refuses before anything is signed, with payer_: "This wallet's USDC account is frozen, so it cannot send USDC. Pay from a different wallet." Nothing is charged. |
| The payer's | A renewal | The charge fails as ACCOUNT_, a counted failure. The first one makes the subscription past due; Fianto tries four times in all, at the period boundary and then about one hour, six hours and a day after it, and the fourth counted failure ends the subscription. |
| The merchant's receiving account | A new checkout | The checkout refuses with checkout_: "This shop cannot take payments right now. Nothing has been charged. Try again in a few minutes, or contact [merchant name]." |
| The merchant's receiving account | A renewal | Nothing is charged and none of the customer's four attempts is used. Fianto checks again about every hour, and its team is alerted. |
Your server hears about a frozen payer through webhooks. Each counted renewal failure sends subscription. with failure. set to ACCOUNT_; the first also sends subscription., and the fourth ends the subscription with subscription.. The event fields are listed in the webhook event reference, and the retry schedule in failed renewals and retries.
Renewals that fail are retried on a fixed schedule, and the reason reaches your webhook.
How USDC subscriptions billWhat can a merchant do about a frozen USDC account?
Neither the merchant nor Fianto can unfreeze a USDC account: only the holder of the mint's freeze authority can thaw it. Fianto never holds the money, so there is no Fianto balance to freeze or release, and it has no key over the USDC mint. What you can do depends on whose account it is.
If it is your customer's account
Ask the customer to pay from a different wallet. A subscription is tied to the wallet that approved it, so a customer who moves wallets subscribes again from the new one; the old subscription ends on its own after the fourth counted failure. Fianto's payer docs on failed renewals tell a customer with a frozen account to contact the shop, so expect that message to reach you.
If it is your receiving account
The USDC already in a frozen account stays there, unspendable, until it is thawed; any appeal goes to Circle, not to Fianto. To take new payments you need a different receiving wallet. Changing it on Fianto takes your password, a two-factor code and a signature from the new wallet, then approval by the Fianto team. Existing subscriptions keep paying the wallet they started with, so they cannot be charged while that account stays frozen; new checkouts pay the new wallet.
Being paid straight into your own wallet means a freeze lands on your own account, with nobody in between to argue it for you. Keep the receiving wallet for receiving, and remember Circle's terms name receiving from a blocked address as a reason to freeze. How refunds work when you need to send money back is in chargebacks vs crypto refunds.
- Circle: USDC terms (last updated 12 December 2025)
- Circle: USDC risk factors
- Circle: transparency page and monthly USDC reserve reports
- Circle: USDC reserve report, August 2026 (examination report PDF)
- Circle: USDC contract addresses
- Solana documentation: freeze account
- GENIUS Act, Public Law 119-27 (GovInfo)
- Solscan: the USDC mint on Solana