SEP-41 is Stellar’s Soroban Token Interface: a shared set of contract calls for fungible tokens. It is not a token or issuer. Stellar’s built-in Stellar Asset Contract (SAC) exposes existing Stellar assets through the interface, while developers can create custom Soroban contract tokens that implement it. The SEP-41 proposal page lists the specification as Draft, version 0.5.2, updated August 24, 2026. Read the SEP-41 proposal.
What is SEP-41, and how is it different from ERC-20?
SEP-41 defines a common interface for fungible-token behavior in Soroban, Stellar’s smart-contract platform. A contract that supports the interface exposes familiar operations in a predictable form, so other contracts can call it without needing a separate integration for every token. Stellar’s proposal describes it as “a standard contract interface for tokens.”
As an Amazon Associate I earn from qualifying purchases.
SEP-41 is conceptually similar to Ethereum’s ERC-20: both establish common operations that make fungible tokens easier for applications and contracts to work with. That similarity does not make them interchangeable. The available documentation does not establish byte-for-byte compatibility, equivalent tooling, or that every ERC-20 wallet or application will support SEP-41. Stellar’s token-interface guide explains the Soroban-specific compatibility requirements.
The word “efficient” should be understood as a focused, shared interface—not as a proven performance advantage over ERC-20. The available official comparison describes costs qualitatively and does not provide a controlled benchmark showing that SEP-41 is categorically faster or cheaper.
#1 Best Overall
Which token operations does SEP-41 define?
The interface covers the core calls a contract may need to manage a fungible token:
- Balances and transfers: read a balance, transfer tokens, or transfer tokens using an approved allowance.
- Approvals and allowances: set and inspect how much a spender may use on an account’s behalf.
- Burning: destroy tokens directly or through an allowance.
- Metadata: read values such as decimals, name, and symbol.
A shared set of function names and arguments helps, but it is not sufficient for interoperability on its own. Implementations also need compatible authorization conventions, event formats, and expected metadata storage. Stellar’s guide notes that standard metadata should be stored in the expected format so constant values can be read directly from ledger state.
Authorization and failed calls
Token calls may rely on Stellar asset authorization as well as Soroban authorization. A call that lacks required authorization, exceeds the available balance, or exceeds an allowance can fail. The documented standard failure behavior is to trap; a failed call reverts its state changes rather than leaving a partial update. Integrators should handle transaction failures instead of assuming a call will succeed because its function signature is familiar.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Allowances are spending limits, not reserved balances
An allowance gives a spender permission to use up to a limit; it does not set those tokens aside. Approval replaces the previous allowance. The SEP-41 proposal advises clients changing an allowance to set it to zero and confirm it has not been spent before setting a new amount. Without that precaution, a spender may use the old allowance before the replacement takes effect.
How does SEP-41 relate to Stellar’s Asset Contract?
The Stellar Asset Contract is a built-in contract interface for existing Stellar assets, including XLM and issued assets. It lets Soroban contracts interact with the same asset represented through Stellar account trustlines or contract data. The SAC is an API to that asset, not a wrapped duplicate that requires a bridge. Stellar’s documentation identifies it as the way for contracts to interact with Stellar assets. See the Stellar Asset Contract guide.
The SAC implements the SEP-41 interface for Stellar assets, and SEP-41 is a subset of the SAC interface. This gives contracts a common token surface without requiring every integration to use functions specific to Stellar assets. The asset itself still follows Stellar’s asset model and issuer controls; SEP-41 does not turn it into a separately issued contract token.
Existing Stellar assets versus custom Soroban tokens
A SEP-41 contract token is a custom Soroban contract with its own storage and logic. It can implement the standard calls while adding behavior such as transfer fees, vesting, or custom minting and burning rules. That flexibility brings custom implementation and storage responsibilities; it does not make the token equivalent to an existing Stellar asset.
Recommended Free Tools
There is an important event-format distinction for developers. SAC events can include an additional final topic containing the SEP-11 asset identifier, so an indexer that assumes SAC and contract-token events have identical shapes may parse them incorrectly. Also, when a transfer involves an issuer, the SAC may emit a mint or burn event rather than a transfer event. Event consumers should account for those differences. Stellar’s token-interface documentation compares the event formats.
Best Value
Which Stellar token model should you choose?
Stellar’s guidance distinguishes three broad approaches. The right fit depends on whether you need an existing Stellar asset, custom token behavior, or on-chain identity and compliance rules, as well as the costs and ecosystem support of the intended workflow. Review Stellar’s token overview and comparison.
| Model | Good fit | Tradeoffs and checks |
|---|---|---|
| Stellar Asset with SAC | Payments, simple or fiat-backed assets, and smart-contract interaction while retaining Stellar asset semantics. | Uses the trustline-based asset model. Native operations are very low cost and SAC operations are moderate cost, according to Stellar’s qualitative comparison. Issuer controls remain relevant. |
| SEP-41 contract token | DeFi primitives or custom tokenomics, including transfer fees, vesting, hooks, and custom mint or burn rules. | Requires custom logic and storage. Stellar’s comparison describes execution costs as higher than Stellar Asset operations and ecosystem support as less widespread. |
| SEP-57 / T-REX | Regulated or institutional assets that need on-chain identity and compliance rules. | Stellar’s comparison describes higher complexity and execution costs. Confirm wallet, transfer, and indexer support for the workflow you need. |
Stellar’s comparison also notes a Protocol 26 (Yardstick) capability: assigning a smart contract as SAC owner can let the contract manage balances and transfer rules, and SAC trustlines may be created programmatically. This is protocol-version-dependent; verify the deployment and protocol context before relying on it. For a starting point when building a custom SEP-41 token, Stellar’s comparison points to an OpenZeppelin fungible-token reference implementation.
Quick Recap
What should developers verify before integrating a SEP-41 token?
- Interface: Check the actual function names and arguments rather than assuming that a token’s label guarantees compatibility.
- Authorization: Identify which Stellar asset and Soroban authorizations each call requires.
- Allowance changes: Treat approvals as replaceable spending limits, not reserved funds, and follow the zero-and-confirm guidance when changing an allowance.
- Metadata: Confirm that name, symbol, and decimals are exposed and stored in the format expected by the integration.
- Events: Handle SAC’s extra asset-identifier topic and its issuer-related mint or burn events where applicable.
- Failure handling: Expect unauthorized or underfunded calls to fail and revert state changes; do not rely on partial execution.
- Specification status: Check the proposal’s current version and status before implementation. As of August 24, 2026, its page listed Draft, version 0.5.2; proposal details can change.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




