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.
wallet_sendCalls (EIP-5792) sends multiple calls in a single user operation. All calls succeed together or revert together. The user approves once.
When to use it
- ERC-20 approve + spend in one click.
- Batch state changes that should atomically commit.
- Multi-token settlement.
Send a batch
from field is rewritten to the user’s smart account. The popup shows a single approval covering both calls.
With wagmi
Wagmi exposesuseSendCalls for the same flow:
Track status
wallet_getCallsStatus unchanged to the bundler RPC. The status format depends on which EIP-5792 version the bundler implements: older endpoints return string values ('PENDING', 'CONFIRMED', 'FAILED', 'REVERTED'); EIP-5792 v2 endpoints return numeric codes (100 pending, 200 confirmed, 400 reverted, 500 failed). Check status.receipts on a confirmed response for the onchain receipts for each call.
Show status to the user
Atomic vs non-atomic
SetatomicRequired: true to require all calls land in a single transaction. With atomicRequired: false, the wallet may execute calls
sequentially in separate transactions, useful when the user has a non-AA fallback. Startale’s smart accounts always execute
atomically regardless.
Same primitive at the AA layer
wallet_sendCalls is the EIP-5792 wrapper. Under it, the SDK packs every entry of calls into a single ERC-4337 UserOperation and submits it through the bundler. If you skip the App SDK and work with @startale-scs/aa-sdk directly, you build the same batch by appending to the calls array on sendUserOperation. The execution semantics are identical in both layers.