Skip to content

Docs inaccuracy: acl.mdx names Phantom as auto-thawing token_acl mints, but Phantom doesn't support it (sRFC-37 Token ACL) #1686

Description

@AndriiSkoropupov

Summary

The Token ACL (sRFC-37) guide states that wallets like Phantom automatically detect the token_acl metadata field and append a permissionless thaw instruction when creating token accounts. Based on direct confirmation from Phantom's team, this is not currently the case for Phantom, so the guide may mislead developers relying on this behavior.

Location

apps/docs/content/guides/advanced/acl.mdx — section "Token Metadata for Auto-Detection".

The guide currently states (paraphrased): adding the token_acl metadata field is crucial for wallet integration, and when wallets like Phantom (or SDKs like @solana/token-helpers) see this field, they automatically include thaw instructions when creating token accounts.

Rendered page: https://solana.com/developers/guides/advanced/acl#token-metadata-for-auto-detection

Image

What I observed

I created a Token-2022 mint with DefaultAccountState = Frozen, a Token ACL config, and an ABL Gate Program allow list (ListConfig, mode Allow) with the recipient wallet added. The mint's metadata includes the token_acl field pointing to the Gate Program.

When sending this token from Phantom (Extension v26.20.0) to an allow-listed wallet that has no ATA yet, Phantom created the ATA but did not append a ThawPermissionless instruction. The ATA stayed frozen and the transfer failed with Error 0x11 (AccountFrozen) from Token-2022 — consistent with the ATA never being thawed.

Confirmation from Phantom

I raised this with Phantom's developer support. Their team (Phantom DevRel) confirmed that Phantom does not currently support this flow, that the observed behavior is expected, and that it is not a misconfiguration on my side. They suggested submitting a feature request to get it on their roadmap.

Questions / suggested fix

  1. Since Phantom is named explicitly in the guide but does not currently support auto-detection + permissionless thaw, could this section be updated to reflect the current state?
  2. Which wallets, if any, actually support this today? It would be very helpful for the guide to list wallets with verified support, rather than naming Phantom as an example if support isn't live yet.
  3. If no wallet currently ships this automatically, could the guide clarify that automatic token_acl detection is aspirational / SDK-side only (e.g. via @solana/token-helpers when the integrating app builds the transaction), and that wallets do not append the thaw instruction on their own yet?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions