PollarPollar
Core Concepts

Chain Support

Pollar is multichain. An app enables the chains it wants under Chains, and every user gets one wallet per enabled chain from the same login. This page is the single place that says what works where.

Solana is fully supported for the product's core: sign-in, Pollar-managed and co-signed wallets, SOL and SPL token balances, sponsored transfers, history, and fiat ramps. Stellar additionally carries the on-chain DeFi features (swap, earn) and the Soroban policies. Polygon has wallets, balances, token sends and ramps settlement.


Feature matrix

Legend: Yes = works today on that chain · n/a = the chain has no such concept · No = not available on that chain.

Sign-in and wallets

FeatureStellarSolanaPolygonWhere
Social / email login creates a managed walletYesYesYes@pollar/core login(); one wallet per chain in getWallets()
Sign in with the user's own walletYes (SEP-10: Freighter, Albedo, Stellar Wallets Kit)Yes (Sign In With Solana: Phantom, Solflare, Backpack)NoWallet Adapters
Passkey smart wallets (C-address)Yesn/an/aSmart Wallets
Co-signed wallets, Turnkey 2-of-2 (mainnet)YesYesYesCo-signed Wallets
Wallet creation timing (at login / on demand / never)YesYesYesWallet settings
Wallet-less sessions (authentication only)YesYesYesWallet Creation
Starting balance for new walletsYes (XLM, Immediate / Deferred)Yes (SOL above the rent-exempt floor)No (gas top-up policy only)Account Funding

Balances and tokens

FeatureStellarSolanaPolygonWhere
Native balanceXLMSOLPOLrefreshBalance(), <WalletBalanceModal>
Token balancesStellar assetsSPL tokensERC-20same
Per-app token catalogYes (code + issuer)Yes (SPL mint)Yes (contract)Tokens & Trustlines
Holding a token needs an on-chain entryTrustline (0.5 XLM reserve, sponsored)Associated token account, created by Pollar when the user receives the tokenn/aTokens & Trustlines
Testnet faucet hints in the balance modalFriendbotDevnet SOL + Circle USDC faucetAmoy<WalletBalanceModal>

Payments

FeatureStellarSolanaPolygonWhere
sendPayment() from a managed walletYesYes (SOL and SPL, one server call)Yes@pollar/core
sendPayment() from the user's own walletYesYes (build, sign in the wallet, submit)Nosame
Fee sponsorship on transfersFee bump, GAS walletGAS wallet is the fee payerNo (user pays POL)Sponsorship
Recipient's token account created by the appn/a (trustline)Yes, idempotent, rent paid by the appn/aautomatic
<SendModal> / <ReceiveModal>YesYesYesPayments UI
MemoYesn/an/a<SendModal>
Low-level buildTx / signTx / submitTx (XDR)Yesn/a (use sendPayment)n/a@pollar/core
Transaction history, per-chain explorer linksYes (stellar.expert)Yes (explorer.solana.com)Yes (polygonscan)Transaction History
Monitor > Transactions in the dashboardYesYes (fee in lamports)YesTransactions

Fiat, cards and compliance

FeatureStellarSolanaPolygonWhere
On/off-rampsYesYes (PagFinance settles on Solana; Stereum via Circle CCTP)Yes (Stereum rail)Ramp providers
KYC and requirement stepsYesYesYeschain-agnostic
Cards: holder, KYC, issue, revealYesYesYeschain-agnostic
Cards: fund the card from the walletYesNoNoCards
Outbound webhooks for on-chain eventsYesNoNoWebhooks

On-chain DeFi and policies

FeatureStellarSolanaPolygonWhere
Swap (SDEX, Soroswap, Aquarius)YesNoNoSwap
Earn (DeFindex, Blend)YesNoNoEarn
Token distribution (claimable rules)YesNoNoToken Distribution
Transaction policy (account merge, max fee)Yesn/an/aTransaction Policy
Soroban auth policyYesn/an/aAuth Policy
Contract-call sponsorship rulesYesn/an/aSponsorship

Solana in detail

A Solana-enabled app gets the whole wallet lifecycle without any Solana-specific code in the client:

  • Login. Email, Google or GitHub gives the user a Pollar-managed Solana wallet at sign-in, with no seed phrase. A user who already has Phantom, Solflare or Backpack signs in with Sign In With Solana through @pollar/solana-wallet-standard-adapter, the Solana counterpart of the Stellar Wallets Kit adapter.
  • Custody. Managed keys live in Pollar's Solana wallet service, encrypted at rest. A mainnet app can switch new wallets to co-signed custody, where every signature is a 2-of-2 vote between the user's device and Pollar through Turnkey, and the device verifies the serialized transaction (including a Solana CCTP burn) before voting.
  • Funding. Solana has no sponsored reserve, so the app's Solana GAS wallet sends each new wallet its starting SOL (0, or at least the platform floor that keeps the account above the rent-exempt minimum) and tops it up whenever it falls below the floor.
  • Payments. sendPayment({ chain: 'SOLANA', destination, amount, mint? }) sends SOL or any SPL token. Amounts are integer base units (lamports, or the mint's smallest unit). When the token is marked sponsor transfers, the GAS wallet is the fee payer and the recipient's associated token account is created in the same transaction.
  • History. Every Solana transaction lands in the same history as Stellar ones, with its own reconcile job and explorer link; the dashboard's Monitor shows the fee in lamports.
  • Ramps. PagFinance (Brazil, BRL via Pix) is paid in USDC on Solana. Stereum (Bolivia, BOB) settles on Polygon and is bridged with Circle CCTP; the bridge mints to Solana when the app serves Solana and not Stellar.
  • Networks. A testnet app uses devnet; a mainnet app uses mainnet-beta. The cluster follows the app's network, never a request parameter.

Two Solana facts the client has to respect:

  1. Sending an SPL token the sender does not hold yet fails with TX_NO_TRUSTLINE, the same code Stellar uses for a missing trustline. The sender must have received the token first.
  2. Sign In With Solana needs a wallet with the native solana:signIn feature. Phantom, Solflare and Backpack have it.

Stellar-only features, and why

FeatureReason
Swap and EarnThe venues (SDEX, Soroswap, Aquarius, DeFindex, Blend) are Stellar and Soroban protocols. The modals hide themselves on a Solana-only app.
Trustlines, account merge, Soroban auth entriesStellar protocol concepts with no Solana equivalent.
Passkey smart walletsBuilt on Stellar C-addresses.
Card fundingThe card balance is funded from the user's Stellar wallet.
Outbound webhooksDriven by the Stellar watcher.

Packages

PackageStellarSolanaPolygon
@pollar/coreYesYesYes
@pollar/reactYesYesYes
@pollar/react-nativeYesYes (sendPayment, balances; no external-wallet adapter)Yes
@pollar/solana-wallet-standard-adapter-Yes (web)-
@pollar/stellar-wallets-kit-adapterYes--
@pollar/privy-adapter, @pollar/privy-server-adapterYesNoNo
@pollar/accesly-adapterYes--

On this page

Was this helpful?