# Wallet API sequence ```plantuml @startuml autonumber actor "User" as user participant "Web\ndApp" as app participant "Paymaster\nService" as pm participant "Wallet" as wallet user->app: click note over app: sequence of\n(target,data) group opt: paymaster app->pm++: pm_getStubPaymasterData return paymaster,\nSTUB paymasterData end app->wallet++: wallet_fillTransaction note over wallet: fills STUB signature,\ngas prices note over wallet: OPTIONAL: wallet-specified\npaymaster (if no app-specific pm) wallet->bundler++: estimateUserOperation return userop filled\nwith gas limits return transaction with gas limits group opt: paymaster app->pm++: pm_getPaymasterData return updated paymasterData end app->wallet++: wallet_sendTransaction note over wallet: Prompt user to sign wallet->bundler: sendUserOperation note over wallet: monitor and update gas prices\n if needed ```