Utila supports Stellar as a first-class network: MPC wallets, classic payments, trustlines, memos, sponsored onboarding, and Soroban smart contracts.
Tokenized assets and stablecoins issued on Soroban use the SEP-41 token standard. The article covers import, balances, transfers, and policy for those tokens.
This article describes what you can do on Stellar in Utila.
Networks: Stellar Mainnet and Stellar Testnet.
Classic Stellar and Soroban
Stellar has two layers that share the same account and the same Utila wallet:
| Classic Stellar | Soroban |
What it is | Native payments, issued assets, trustlines, account creation | Smart contracts (Stellar’s contract runtime) |
Addresses | Account addresses start with | Contract addresses start with |
Typical assets | XLM, Circle USDC, EURC, PYUSD as | SEP-41 tokens (including the Stellar Asset Contract for a classic asset) |
To hold the asset | Native XLM: account must exist. Other classic assets: open a trustline (locks 0.5 XLM reserve) | Pure contract tokens: no trustline. Classic-via-SAC (e.g. USDC) sent to a |
Your Utila Stellar wallet is a G… account. It can send XLM, hold classic assets after a trustline, and invoke Soroban contracts (including SEP-41 transfer and approve).
What you can do in Utila
Wallets and balances
Create Stellar wallets in the console, mobile, or API. View XLM, classic token balances, and SEP-41 balances (with token metadata) in the same wallet.
Reserved XLM for the account and for trustlines is tracked separately from spendable balance.
Classic assets and trustlines
Import a classic asset by asset code and issuer (for example Circle USDC). Open, update, or close a trustline from Stellar management on the wallet, or via API. Pre-imported assets include USDC, EURC, and PYUSD.
A trustline is required before a G… wallet can receive that classic asset. Without it, the payment fails on-chain and the fee is still consumed.
Payments, memos, and sponsorship
Send XLM and classic tokens from console, mobile, or API. Attach a memo (text, ID, hash, or return) when the destination requires one (exchanges typically do).
A sponsor wallet in the same vault can (currently using API only ):
Pay the network fee so a sender with no XLM can still move assets (both classic and SEP 41)
Pay the reserves to create a new account and open its trustline, so the new account can receive USDC (or another classic asset) without ever holding XLM
Soroban smart contracts
Soroban is how Stellar runs smart contracts. In Utila that includes:
SEP-41 tokens. import by contract address (
C…), display balances and metadata, transfer with fee estimation, and set allowances (approve/transfer_from). For the full workflow see SEP-41 Token Support on Stellar.Contract invocations from the console and API. SEP-41 transfers and approvals are first-class operations. Other contract calls can be submitted as a signed Stellar transaction (raw XDR) using the API.
dApps via the Utila browser extension. Connect a Stellar wallet to Soroban apps (Freighter-compatible). Swaps and similar contract flows (for example on the aqua.network) go through the same policy and approval path as other Utila transactions.
Decoded history. SEP-41
transfer,approve, andtransfer_fromshow token name, amount, and counterparties instead of the raw contract payload.
SEP-41 transfers are governed like any other token transfer: amount thresholds, destination allowlists, and approval workflows apply. Token-approval rules apply to SEP-41 allowances the same way they do on EVM.
How to interact
Surface | Best for |
Console / mobile/ API | Send XLM, classic tokens, and SEP-41 tokens; import tokens; manage trustlines; review decoded history and policy |
API — structured | Payments, account creation, change-trust, SEP-41 payment, SEP-41 approval — JSON only, |
API — | Anything the structured path does not model yet (sponsored reserves, custom Soroban envelopes). Build unsigned XDR Utila MPC-signs and (optionally) broadcasts |
Browser extension | Connect to Stellar / Soroban dApps and sign the transaction they propose |
Developer recipes for sponsored account + trustline and sponsored payments live in the Utila API docs.
Good to know
Classic USDC vs SEP-41 USDC. Circle USDC on Stellar is a classic
{CODE}-{ISSUER}asset. It also has a protocol Stellar Asset Contract (C…). Sending to a UtilaG…wallet still requires the classic USDC trustline. Use classic payment for USDC unless you specifically need the contract path (Soroban resource fees are higher).
Pure Soroban tokens (no classic issuer) do not need a trustline. Balances live in contract storage.
There is only one Soroban contract call per structured transaction. Batch transfer of SEP-41 tokens is not supported. Classic XLM / trustline assets can be batched.
Exchanges. Connected exchanges use classic Stellar assets (USDC, EURC, and similar) with memos.
Auth entries. Some Soroban dApps ask the wallet to sign a contract authorization entry separately from the transaction (personal sign). Signing from the extension is supported.
An account must exist. An unfunded Stellar address cannot receive assets. Fund it with XLM (or use sponsored account creation) first.