Solana’s blockchain differs from many networks in how it handles address notation and resolution. While most users are familiar with sending cryptocurrency to a 44-character public key—a string of numbers and letters that serves as the on-chain destination—Solana Name Service (SNS) introduces an alternative: human-readable domain names ending in .sol. A user holding SOL tokens in a Solflare wallet may encounter a .sol name in a payment request, a marketplace listing, or a peer-to-peer transaction. The practical question is whether the wallet can resolve that name to the underlying public key, and what safeguards exist if the resolution fails or is manipulated.
This distinction matters because address handling affects both usability and security. A readable address reduces transcription errors and makes transactions more intuitive, but it also introduces a dependency on domain resolution. If the wallet does not support SNS names, the user must manually copy the corresponding public key from another source—an extra step that creates friction and potential confusion. If support exists but works incorrectly or incompletely, users may send funds to unintended addresses or lose confidence in the wallet’s transaction validation. Understanding how Solflare handles SNS domains is therefore essential for anyone regularly transacting on Solana.
How SNS domains work on Solana
Solana Name Service is a decentralized naming system that maps human-readable .sol domains to on-chain addresses, much as DNS maps website names to IP addresses. Instead of remembering a public key such as 9B5X4bkzG3VnTeqkEruLWQzfKPB9KqLvUQSpxApiAqz5, a user can own and transfer payments to alice.sol or company.sol. The SNS registry stores these mappings on the Solana blockchain itself, making resolution transparent and avoiding the need for a centralized registrar to approve transactions.
Behind each .sol domain is an SPL token account that holds the domain’s metadata and points to its owner’s designated recipient address. When a sender wants to pay to alice.sol, the process requires looking up that domain name in the SNS registry, retrieving the associated owner account, and then resolving to the actual public key where funds should land. This resolution can happen in real time during transaction construction, or the wallet can cache recent lookups to speed up subsequent payments to the same name.
The critical detail is that ownership of a .sol domain does not directly equal control of a single address. The domain owner can designate a recipient address, change it, or even withdraw the domain. If a .sol domain is not yet registered, or if its owner has not configured a recipient address, sending to that name will fail or produce an error. Additionally, SNS does not prevent a user from registering a domain that closely resembles a popular name—alice.sol and alIce.sol are distinct entries—so users must verify the full domain name when sending to unfamiliar recipients.
Solflare’s approach to SNS domain support
Solflare does support SNS domain resolution, allowing users to paste a .sol name into the recipient field rather than requiring a full public key. This feature is integrated into the wallet’s send interface, where users can enter either format and the wallet will attempt to resolve it before transaction confirmation. The resolution occurs on-device through a query to the configured RPC node, which retrieves the current mapping from the SNS registry.
The Solflare extension displays the resolved public key address before the user signs and broadcasts the transaction. This preview step is crucial: it allows verification that the name actually resolved to the intended destination. If a domain has not been registered, or if its owner has not set a recipient, the wallet will display an error message rather than allowing the transaction to proceed with an empty or invalid address.
Users should treat this preview as a mandatory checkpoint, not a formality. The resolved address shown in Solflare’s confirmation screen is the actual on-chain destination for the funds. Clicking «confirm» or «send» after reviewing that address is the user’s final check before the transaction becomes irreversible. If the address displayed does not match the recipient’s public key as independently verified through another source, the transaction should not be approved.
Verification workflows before sending to a .sol domain
Best practice for sending to an unfamiliar .sol domain involves three steps. First, confirm the exact spelling of the domain name with the recipient through a separate, trusted channel. Domain names such as alice.sol and alicee.sol (with an extra ‘e’) are completely different destinations, and a single transcription error renders the transaction irreversible. Second, enter the .sol name into Solflare and observe the resolved public key displayed in the confirmation screen. Third, verify that resolved key independently—ask the recipient to confirm their public key, cross-reference it in a block explorer or another wallet interface, or use a dedicated SNS resolver tool if available.
For frequent payments to the same domain, users may reasonably skip some verification steps after the first successful transaction, since SNS mappings change infrequently and domain owners typically designate a single long-term recipient address. However, for payments to newly discovered domains, domains that have changed hands recently, or high-value transactions, the full verification sequence remains justified. The additional friction is a trade-off for reducing the risk of sending funds to the wrong address.
One additional consideration applies to subdomains and wrapped domains. SNS supports subdomains such as alice.sol and payments.alice.sol, where the parent domain owner can delegate authority for subdomains. Solflare resolves these correctly, but users should understand that a subdomain can have a different recipient address than its parent. For wrapped domains—SPL tokens that represent SNS domains in a secondary market—the distinction is even sharper. A wrapped domain token is a tradable asset; the underlying SNS domain’s recipient address is determined by the domain’s current owner, not the token holder. Sending to a .sol domain resolves to the on-chain owner’s designated address, not to the person holding a wrapped domain token representing that name.
What happens when SNS resolution fails
When Solflare attempts to resolve a .sol domain and the name is not registered, or when the RPC node is unavailable or unresponsive, the wallet displays an error rather than allowing the transaction to proceed. This behavior is correct—it prevents silent failures where funds might be sent to a default or fallback address without the user’s knowledge. However, the specific error message and recovery path can vary depending on the wallet’s implementation and the underlying RPC node’s behavior.
If a name resolution fails during transaction construction, Solflare will not permit signing until the issue is resolved. The user must either correct the domain name, switch to entering a public key directly, or wait for the RPC node to become responsive. This hard stop is a safety feature: it ensures that ambiguity does not result in a hidden transaction. Users should not assume that a failed resolution can be bypassed or that retrying will eventually succeed if the underlying issue is that the domain does not exist.
The dependency on RPC node availability also deserves attention. If Solflare is configured to use a custom RPC endpoint, and that endpoint is offline or filtered, SNS resolution may fail even though the domain is valid and registered. Switching to Solflare’s default RPC node, or to another public endpoint, can confirm whether the problem is the node or the domain itself. This flexibility is one reason why Solflare’s support for custom RPC node configuration is valuable: users can maintain continuity if their primary endpoint becomes unreliable.
Security implications and common mistakes
SNS domains introduce a new surface for user error and potential manipulation. Because domain names are human-readable, they feel more trustworthy than raw public keys. A user might glance at a .sol name and send funds without the scrutiny they would apply to a 44-character hex string. This cognitive shortcut can backfire if the domain owner’s recipient address has changed, or if the user is targeting a domain that looks similar to one they intended.
Solflare’s phishing protection features—including warnings about unverified domains and alerts for outgoing transactions to new addresses—may help identify some risky transactions. However, they cannot prevent a user from deliberately sending to an address that matches the domain’s current mapping. If an attacker can persuade a user to send to attacker.sol, the funds will reach the attacker’s address, and no wallet feature can reverse that decision after confirmation.
The other common mistake is confusing a .sol domain with account ownership. If a user registers a .sol domain, that domain is an asset the user owns, but it does not automatically grant them control over any public key. The domain merely points to a recipient address specified by its owner. If a user loses the private key to their wallet but still owns their .sol domain, the domain can be re-pointed to a new wallet address—but only by the current domain owner or through the domain’s recovery mechanisms. For users managing how to use Solflare and its features, this distinction matters when planning recovery strategies or account migration.
Batch transactions and SNS domain support
Solflare’s batch transaction feature allows users to construct multiple payments and broadcast them together, reducing fees and simplifying complex operations such as salary distributions or multiple refunds. When using batch transactions with SNS domains, the same resolution and verification logic applies to each recipient name. Solflare resolves all domains before showing a summary of the batch, and the user can verify each destination address in the confirmation screen.
For users sending payments to many .sol domains in a single batch, the improved clarity becomes especially valuable. Rather than relying on copied-and-pasted public keys, which can be hard to verify at a glance, the wallet displays each resolved .sol name alongside its target address. This makes it easier to spot if one domain has been mistyped or if a recipient’s address has unexpectedly changed. The trade-off is that any failure to resolve a single domain in the batch will block the entire transaction; there is no option to skip an invalid recipient and proceed with the others.
Looking ahead: SNS adoption and wallet integration
As SNS adoption grows and more Solana users register .sol domains, wallet support for name resolution becomes increasingly important. Solflare’s implementation demonstrates that integrating SNS is feasible without compromising security, as long as the wallet displays resolved addresses for user verification before signing. The feature is most valuable when users and counterparties adopt it consistently—that is, when payment requests routinely include .sol names instead of public keys.
The broader lesson is that address notation is not a pure convenience upgrade. It creates an additional dependency on domain infrastructure, introduces new pathways for user confusion, and requires careful verification to be safe. Solflare’s Solana Name Service support successfully reduces friction for routine transactions while maintaining the safeguards needed to prevent accidental or deliberate misdirection. Users who understand the resolution process and verify addresses before sending are well-positioned to benefit from the simplification SNS offers.
Frequently asked questions
Can I send SOL directly to a .sol domain name using Solflare?
Yes, Solflare supports SNS domain resolution. You can enter a .sol domain such as alice.sol in the recipient field, and the wallet will resolve it to the corresponding public key before displaying a confirmation. Always verify the resolved address shown on screen before approving the transaction, since the actual funds will be sent to that specific on-chain address.
What happens if a .sol domain is not registered or has no recipient configured?
Solflare will display an error message and prevent the transaction from proceeding. You must either correct the domain name, enter the public key directly, or confirm that the domain exists and has a valid recipient address. The wallet will not allow ambiguous transactions to go forward.
Is sending to a .sol domain safer than sending to a public key?
SNS domains are more human-readable and reduce transcription errors, but they are not inherently safer. You must still verify that the domain name is spelled correctly and that the resolved public key matches your intended recipient. Because domain names feel more trustworthy, users sometimes verify them less carefully than they would a raw public key—a mistake to avoid, especially for high-value transactions or unfamiliar recipients.