This feature is only available if you’re using wagmi

Let users make gasless and batched transactions even if they have signed in to your app using an EOA wallet via MetaMask, Coinbase, WalletConnect, or similar external connectors.

Use the useSIWE hook to let users create a smart wallet by WalletKit by signing a message with their EOA wallet.

export function EnableGaslessButton() {
  const { siweAsync, address, status } = useSIWE();

  console.log("EOA Address": address);

  return (
    <button disabled={status !== "idle"}>
      {status === "pending" ? "Check Wallet.." : "Enable Gasless"}
    </button>
  );
}

Once a user has completed this process, you can now use other hooks like sendTransaction or useBatchWriteContract to make gasless transactions.