Screenshot 2026-09-21 at 12.36.30.png

SwapKit supports Stellar mainnet through the NEAR provider.

Chain XLM
Chain ID stellar
Type Account-based, not EVM (ChainType.Stellar). Nothing about the EVM flow carries over.
Gas token XLM, 7 decimals — 1 XLM = 10^7 stroops. Every classic Stellar asset is 7 decimals, USDC included.
Transaction format txType: "STELLAR". tx is an unsigned base64 XDR envelope — sign it with the account's ed25519 key and submit.
Payin Transfer with a memo to a shared router account — txHint: transferWithMemo. The memo is not optional; see below.
Block time ~5s ledger close
Fees Inclusion fee in stroops, taken from getFeeStats (inclusionFee.mode). Network floor is 100 stroops per operation. Surge pricing means the envelope's fee is only a max bid — the amount actually charged is feeCharged in the result XDR.
Explorer stellarchain.io
Launch Providers NEAR

Asset identifiers

Stellar has no token contracts. A classic asset is a code plus the account that issued it, so the address half of a SwapKit identifier is the issuer's G… public key rather than a contract address.

Asset Identifier Decimals
Native XLM.XLM 7
USDC (Circle) XLM.USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN 7

Two things to hold on to:


⚠️ Trust lines: an account must opt in before it can receive an asset

A Stellar account holds nothing it has not agreed to hold. Before an account can receive XLM.USDC it must carry a trust line to that exact code-and-issuer pair, created by a changeTrust operation signed by the account itself.

There is no way around this and no way to do it on someone else's behalf:

Native XLM.XLM needs no trust line. Everything in this section applies to issued assets only.


⚠️ Account activation: an address is not an account until it is funded