nonceKey (the lane) and a nonce (the position inside that lane). Different lanes are independent, so you can send UserOperations on different lanes in parallel.
Source:
StartaleGroup/scs-aa-sdk.When to use parallel lanes
Mental model
Within a lane, UserOperations are still ordered. Across lanes, they are independent.Read a lane nonce
Send two UserOperations in parallel
Pass each lane’s nonce when callingsendUserOperation. Do not await the calls back to back; fire them together so the bundler sees both at once.
Pick lane keys deliberately
Thekey is a uint192 packed into the nonce, which leaves plenty of room for application-defined schemes:
The lane key is opaque to the EntryPoint; pick whatever scheme keeps your flows from colliding.
Caveats
- Lanes are per smart account. Two different smart accounts already have independent nonces; you only need lanes within a single account.
- Lane state lives onchain. Bumping
keydoes not cost gas, but the first UserOp on a brand-new lane still pays whatever gas the EntryPoint charges for storage initialisation. - The paymaster does not care about lanes; sponsored and ERC-20 paymaster flows work the same way on any lane.
Next steps
Contract interactions
Combine batched calls inside a single UserOperation with parallel UserOperations across lanes.
Smart sessions
Run scoped session UserOperations on dedicated lanes.
Sponsored paymaster
Sponsor every UserOperation across all lanes.
EIP-7702
Use lane nonces on a delegated EOA-as-smart-account.