ERC-4337 Transaction Flow
The following diagram illustrates how SBC's Account Abstraction implementation works using ERC-4337:
Flow Explanation
-
User Submission: The user creates and signs a UserOperation, which is like a transaction but with more flexibility.
-
Bundler Processing: SBC's bundler service:
- Validates the UserOperation
- Bundles it with other operations for efficiency
- Submits the bundle to the EntryPoint contract
-
Wallet Validation: The EntryPoint contract validates:
- The wallet's signature
- The operation's validity
- Required permissions
-
Gas Handling: Instead of users paying gas:
- The EntryPoint coordinates with the SBC Paymaster
- Gas costs are covered in SBC tokens
- Users don't need native tokens (ETH)
-
Payment Authorization: The Paymaster:
- Verifies the user has sufficient SBC balance
- Authorizes the gas payment
- Manages gas sponsorship rules
-
Execution: Finally:
- The EntryPoint executes the validated operation
- The target contract receives the call
- The transaction is completed without user gas fees