Skip to content

Send User Operation

Smart Wallets send user operations instead of transactions. When using the sendTransaction method, the SDK in the background handles user operation sending for you. However, you can still access this lower-level method to fully control the process of creating, sending, and waiting for a user operation.

import { ChainId, KriptonioSdk } from '@kriptonio/sdk';
const sdk = new KriptonioSdk({
  accessToken: 'your-access-token',
const wallet = await sdk.wallet.generate({
  chainId: ChainId.BaseSepolia,
  type: 'kernel',

const callData = await wallet.createCallData({
  to: wallet.address,
  value: 0n,
const userOpHash = await wallet.sendUserOperation({
const userOpData = await wallet.waitForUserOperation(userOpHash);

Please note that createCallData, sendUserOperation, and waitForUserOperation are only available for Smart Wallets.