Account activation
On Stellar, a wallet address must be activated before it can receive assets or participate in the network. Activation requires funding the account with native XLM. When sending to a new Stellar address, use the Transfer Asset endpoint withcreateDestinationAccount: true to create the account if it doesn’t exist.
If you send to an unactivated account without
createDestinationAccount: true, the transaction will fail.Receiving non-native assets (Creating trustlines)
Before a Stellar wallet can receive a non-native asset (like USDC), it must establish a trustline to that asset. This is a Stellar network requirement - without a trustline, the wallet cannot hold or receive the asset.Learn more about trustlines in the Stellar documentation.
changeTrust operation. To remove a trustline and reclaim the reserve, set the limit to 0 (the asset balance must be 0 first).
See the Stellar broadcast examples for complete implementation details.
Reserve requirements
Stellar accounts must maintain a minimum balance to stay active:| Requirement | Amount |
|---|---|
| Base reserve | 0.5 XLM |
| Per trustline | 0.5 XLM |
| Per offer | 0.5 XLM |
| Per signer | 0.5 XLM |
Transfers
Use the Transfer Asset endpoint for all Stellar transfers:- Native XLM: Use
kind: Nativewith amount in stroops (1 XLM = 10,000,000 stroops) - Stellar assets: Use
kind: Sep41with theassetCodeiandissuer - Memo: Stellar supports an optional
memofield, commonly used by exchanges for deposit identification
Fee sponsorship
Stellar supports fee payers, allowing a separate account to pay transaction fees. This is useful for onboarding users who don’t yet have XLM. A fee-sponsored transaction is wrapped in an envelope that includes:- The inner transaction (signed by the source account)
- The fee payer’s signature
Fee sponsorship on Stellar requires building custom transaction envelopes using the Stellar SDK and the Broadcast API.
