Documentation Index
Fetch the complete documentation index at: https://docs.startale.com/llms.txt
Use this file to discover all available pages before exploring further.
What chains does the AA SDK support?
What chains does the AA SDK support?
The AA SDK currently supports Soneium Mainnet (chain ID
1868) and Soneium Minato testnet (chain ID 1946). Both networks run EntryPoint v0.7 and the call sites are identical, only the chain object and bundler URL change.See Supported networks for bundler and paymaster URLs per chain.What version of ERC-4337 does the SDK target?
What version of ERC-4337 does the SDK target?
The SDK targets EntryPoint v0.7 exclusively. UserOperations are encoded in the v0.7 layout (
paymaster, paymasterVerificationGasLimit, and paymasterPostOpGasLimit are separate fields rather than packed into paymasterAndData). You do not need to set the EntryPoint version manually.What signers are supported?
What signers are supported?
Any object that satisfies the
SmartAccountSigner interface works. Common choices:- Dynamic: social login, passkey, and MPC-backed keys. See Dynamic integration.
- Privy: embedded wallets and social login. See Privy integration.
- viem
LocalAccount: raw private key, useful for scripts and testing.
toStartaleSmartAccount accepts any of the above interchangeably.What is the difference between the AA SDK and the App SDK?
What is the difference between the AA SDK and the App SDK?
AA SDK (@startale-scs/aa-sdk) | App SDK (@startale/app-sdk) | |
|---|---|---|
| Audience | dApp developers building custom AA flows | dApp developers integrating with the Startale App wallet |
| Account model | ERC-7579 modular smart account you deploy and control | Smart account managed by the Startale App |
| Signers | Any SmartAccountSigner (Dynamic, Privy, private key) | Startale App user session |
| Gas | Managed or self-funded SCS paymaster | Gasless via the Startale App (for Startale App users) |
| Best for | Custom AA, sessions, recovery, EIP-7702 | Miniapps and in-app transactions |
How do I get an API key?
How do I get an API key?
API keys for the SCS bundler and paymaster are issued from the SCS Portal. After signing in, create a project, provision a paymaster, and copy the API key. The Portal setup tutorial walks through this end to end.
What is the difference between the self-funded and managed paymaster?
What is the difference between the self-funded and managed paymaster?
Both modes use the same RPC and
paymasterId call site. The difference is funding:- Self-funded (prepaid): You deposit ETH into the paymaster contract. Gas is debited from your balance per UserOperation. Good for predictable budgets.
- Managed (postpaid): SCS fronts gas and bills you in fiat on a monthly cycle. Good for production apps that prefer not to manage onchain treasury.
paymasterId, no code change required.Can I pay gas in ERC-20 tokens instead of ETH?
Can I pay gas in ERC-20 tokens instead of ETH?
Yes. Pass The Startale Token Paymaster quotes the token amount against the ETH gas cost at signing time. Supported tokens per network are listed in Supported networks.
token instead of paymasterId in paymasterContext:Is there a testnet I can use?
Is there a testnet I can use?
Yes. Soneium Minato (chain ID
1946) is the testnet. Use the soneiumMinato chain from viem/chains and point the bundler URL to https://soneium-minato.bundler.scs.startale.com?apikey=YOUR_API_KEY. Everything works identically to mainnet.How do I get testnet ETH?
How do I get testnet ETH?
Use the faucets listed at docs.soneium.org. The Bridge lets you move Sepolia ETH to Soneium Minato as well.
How do I debug a failed UserOperation?
How do I debug a failed UserOperation?
Replace
sendUserOperation with debugUserOperation on your StartaleAccountClient. It logs the packed UserOperation, decodes the AA error code, and prints a Tenderly simulation URL if you have TENDERLY_API_KEY, TENDERLY_ACCOUNT_SLUG, and TENDERLY_PROJECT_SLUG set.See Debugging UserOperations for the full error code table and decoding patterns.Are the contracts audited?
Are the contracts audited?
Yes. The Startale Account, Factory, Bootstrap, ECDSA Validator, and both paymasters have been audited. Audit reports and all deployed addresses are in Contracts and audits.
Does the SDK support EIP-7702?
Does the SDK support EIP-7702?
Yes. EIP-7702 lets an existing EOA delegate to the Startale Account implementation without changing its address. The upgraded EOA then behaves like a full ERC-7579 modular smart account and supports all SDK features: gas sponsorship, batched calls, smart sessions, and social recovery. See EIP-7702.
What is a smart session?
What is a smart session?
A smart session is a scoped, time-bound session key issued by the account owner. It lets a dApp sign UserOperations on the user’s behalf, within a defined set of allowed contracts, functions, and spend limits, without requiring the user to approve every action. Backed by the ERC-7579 Smart Sessions validator module. See Smart sessions.
Can I send multiple calls in a single UserOperation?
Can I send multiple calls in a single UserOperation?
Yes. Pass an array to
calls in sendUserOperation. All calls execute atomically, if any one reverts, the entire batch reverts. For independent UserOperations that should not block each other, use parallel lanes.