Skip to content
LogoLogo

getPaymasterData

Retrieves paymaster-related User Operation properties to be used for sending the User Operation.

Internally uses ERC-7677's pm_getPaymasterData method.

Usage

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

Returns

{
  paymaster: Address
  paymasterData: Hex
  paymasterVerificationGasLimit: bigint
  paymasterPostOpGasLimit: bigint
}

Paymasted-related User Operation properties.

Parameters

callData

  • Type: Hex

The data to pass to the sender during the main execution call.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000', 
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

callGasLimit (optional)

  • Type: bigint

The amount of gas to allocate the main execution call.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n, 
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

chainId

  • Type: number

Chain ID to target.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : 1, 
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

context (optional)

  • Type: unknown

Paymaster specific fields.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : { 
    : 'abc123', 
  }, 
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

entryPointAddress

  • Type: Address

EntryPoint address to target.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : 1, 
  : '0x0000000071727De22E5E9d8BAf0edAc6f37da032', 
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

factory (optional)

  • Type: Address

Account Factory address.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e', 
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

factoryData (optional)

  • Type: Hex

Call data to execute on the Account Factory to deploy a Smart Account.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000', 
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

maxFeePerGas (optional)

  • Type: bigint

Maximum fee per gas for User Operation execution.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n, 
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

maxPriorityFeePerGas (optional)

  • Type: bigint

Maximum priority fee per gas for User Operation execution.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n, 
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

nonce

  • Type: bigint

Nonce for the User Operation.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n, 
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

preVerificationGas (optional)

  • Type: bigint

Extra gas to pay the Bundler.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : 69420n, 
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

sender

  • Type: Address

Sender for the User Operation.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : 69420n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f', 
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

signature

  • Type: Hex

Signature for the User Operation.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : 69420n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
})

verificationGasLimit (optional)

  • Type: bigint

The amount of gas to allocate for the verification step.

import {  } from './config'
 
const  = await .getPaymasterData({
  : '0xb61d27f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a764000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000',
  : 69420n,
  : '0xfb6dab6200b8958c2655c3747708f82243d3f32e',
  : '0xf14ddffc000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb922660000000000000000000000000000000000000000000000000000000000000000',
  : 14510554812n,
  : 2000000000n,
  : 0n,
  : '0xE911628bF8428C23f179a07b081325cAe376DE1f',
  : '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c',
  : 69420n, 
})