Skip to main content
Soran is a naming protocol built on Stellar. Organizations operate namespaces, people hold names inside them, and apps use a shared registry to find what those names point to. A name like alice.nova can carry Alice’s profile, receiving addresses on several blockchains, and names such as shop.alice.nova beneath it. One name gives apps a place to look for the information Alice chooses to publish.

A namespace of your own

In alice.nova, nova is the namespace. alice is a name within it. A wallet, community, or business can operate a namespace and offer names to its users under its own registration rules. Think of the coordination role ICANN plays in the Internet’s naming system: different organizations operate different parts of a shared system. Soran brings that organizational pattern to on-chain namespaces. These are Stellar-based names with Soran’s own rules; they do not automatically become Internet DNS domains. An organization applies for a namespace. Public applications pass through an objection window before they can be awarded. The Registry records who owns each namespace and which contracts manage it. The useful part is what happens between organizations: an app that integrates Soran can look up a name from another namespace through the same shared infrastructure.

The Registrar: how people get names

Each namespace has a Registrar, a smart contract that applies its rules for issuing and managing names. The namespace owner chooses who can register, whether a name has a price, and the supported ownership policy. You might offer free names during signup, let eligible users claim their own names, or issue them from your app. The person or account holding a name is its holder. That holder manages the name’s records under the namespace’s policy. Explore automatic username claiming or names and namespaces.

A name with a profile

A Soran name can carry an avatar, description, website, and social links. Apps can read those records to show a recognizable identity alongside an address. The holder publishes the profile; social links are self-described rather than independently verified accounts. A receiving account can also choose a display name within a namespace and a primary name across namespaces. Apps verify that the chosen name still points back to the account before using it. Learn about profiles and social identity, then publish your profile.

One name, addresses across blockchains

The Resolver stores the records a name points to. For Stellar, that includes an address and any required payment memo. It can also store a separate receiving address for each additional network the namespace enables. Soran supports address records for Bitcoin, Ethereum, Solana, and other supported networks. A wallet reads the requested network’s record, then handles the payment on that network. Name resolution does not move funds. Stellar destinations keep their routing details together: a classic account with an optional memo, a complete muxed address, or a contract address. Read Stellar payment destinations or add network addresses.

Names beneath your name

When your namespace enables subnames, you can create one additional level beneath a name you hold. Alice might use pay.alice.nova for personal payments and shop.alice.nova for her store. Each child can have its own addresses and profile records. The parent holder controls it, even when its receiving address belongs to someone else. Children follow their parent’s ownership and lifetime; transferring the parent invalidates its old children. Read how subnames work or create a subname. Additional network addresses and subnames require compatible namespace contracts and the owner’s feature settings.

How apps read the shared system

Universal Lookup is the common read entry point. It follows the Registry to the namespace’s contracts, checks the name, and returns the requested current records. A wallet can read names without running a separate address book for every organization. The SDKs make these reads and name-management actions easier to integrate. You can also use the HTTP API or call the contracts directly. Explore the protocol architecture. Each namespace’s policies and contracts determine which changes remain possible. A name without an expiry is not automatically permanent. Understand ownership and governance before choosing a namespace.

Start with what you want to do

Build with Soran

Resolve your first name, then add identity and network-aware lookups.

Run a namespace

Offer names to your users and choose the rules that apply.

Make your name useful

Manage receiving details, publish a profile, and create subnames.

Try real examples

Explore current testnet names and their payment instructions.