WalletKit: the SDK for TON wallet builders in 2026
@ton/walletkit — the official SDK for building TON wallets: TON Connect from the wallet side, asset reads, gasless transfers, multi-wallet, cross-platform.
- Author
- TON Adoption Team · editorial
- Published
WalletKit is the lower level of the same stack as AppKit, but for those who build a wallet, not connect to one. It’s part of TON Toolset 2026.
If you’re building a new wallet (custodial or non-custodial), a Mini App with its own wallet, or just crypto-asset management components — this is the foundation toolset.
What’s in it
@ton/walletkit includes:
- TON Connect server-side — full implementation from the wallet side (receiving dApp requests, displaying, signing, responding).
- Asset management — reading balances of TON, jettons, NFTs.
- Transfer building — outbound transactions with typed params.
- Gasless transfer flows — integration with gas-station providers.
- Multi-wallet management — managing many wallets (accumulated keys) in one app.
- Cross-platform core — shared logic for web, iOS, Android, browser extensions.
When to use WalletKit
Fits:
- You’re building a new wallet from scratch (Antarctic, Bitget Wallet) or a Mini App wallet.
- You have an existing wallet, but a legacy TonConnect stack, and time to migrate.
- You want a wallet that’s cross-platform from day one.
Doesn’t fit:
- An existing mature wallet (Tonkeeper, MyTonWallet) — migration isn’t cost-justified. They use their own implementations evolved over years.
- Pure frontend scenarios without custody — use AppKit.
TON Connect from the wallet side
Unlike AppKit (where <TonConnect /> is a button to connect), WalletKit provides server-side processing of dApp requests:
import { WalletKit } from '@ton/walletkit';
const wallet = new WalletKit({
network: 'mainnet',
walletAddress: userAddress,
signTransaction: async (tx) => {
// your logic: show user details, sign with key
return signedTx;
},
});
// Accept request from dApp:
const request = await wallet.tonConnect.acceptRequest(rawRequest);
// request.type === 'tonProof' | 'transaction' | 'signData'
A standardised flow instead of hand-written TonConnect packet parsing.
Gasless transfers
When a dApp requests a gasless transfer (via the Wallet-V5 extension), WalletKit handles:
- Verifying the fee-payer contract is available and funded.
- Building the “outer” transaction with correct flags.
- Signing and sending via the gas-station provider.
- Returning the tx hash to the dApp.
For the user — a free transfer; for the wallet — a couple lines of code instead of hundreds of lines of hand-rolled Battery integration.
Multi-wallet
Modern TON wallets often hold multiple wallets under one app (work + personal + savings). WalletKit standardises:
const wallets = await walletKit.listWallets(userSeed);
// [{ address, version: 'v4r2', label: 'Main', balance: '15.3 TON' }, ...]
const tx = await walletKit.send({
from: wallets[0].address,
to: 'recipient.ton',
amount: '5 TON',
});
Also includes helpers for import (24-word seed, watch-only address) and rotation (recovery with a new seed).
Cross-platform
@ton/walletkit itself is platform-agnostic. Adapters for specific platforms:
@ton/walletkit-web— browser/PWA.@ton/walletkit-react-native— iOS/Android via React Native.@ton/walletkit-extension— browser extensions (Chrome, Firefox).
Each adapter handles platform-specifics: secure storage (Keychain/Keystore vs IndexedDB), network requests (native fetch vs ServiceWorker), biometrics (Face ID, fingerprint).
Shared business logic stays one. Cuts a wallet’s codebase by 30-50% vs per-platform implementations.
Lifecycle events
WalletKit emits events for UI:
walletKit.on('balance:change', ({ address, newBalance, delta }) => {
// refresh UI, show notification
});
walletKit.on('tx:received', ({ from, amount, comment }) => {
// show toast
});
walletKit.on('connection:accepted', ({ dappName, dappUrl }) => {
// logs + UI
});
Security
WalletKit doesn’t store or transmit the seed phrase. Signing is done via the signTransaction callback you implement locally. Meaning:
- Seed stays in the platform’s secure storage.
- WalletKit sees only the public side.
- All network activity is public operations (read balance, send signed tx).
The right design for self-custody — the user fully controls the keys.
Compared to alternatives
| Approach | Time to prod | Cross-platform | Support |
|---|---|---|---|
| WalletKit (new) | 2-3 months | Out of the box | TON Foundation |
| Tonweb + hand-rolled TonConnect | 6-12 months | Per-platform code | Community |
| Fork an existing wallet | 1-2 months | Depends on fork | None |
| Custom implementation | 9-18 months | Per-platform | Your own |
WalletKit wins on time-to-market and cross-platform parity. Custom — only if you have unusual requirements (regulatory, specific hardware integration).
What’s next
- Docs: docs.ton.org/ecosystem/walletkit/overview.
- GitHub: ton-connect/kit (shared monorepo).
- NPM: @ton/walletkit.
Building a wallet or a Mini App with its own wallet — WalletKit is your friend. Building a frontend that connects to someone else’s wallet — use AppKit.
Full Toolset context — in our TON Foundation overview.
Frequently asked
How does WalletKit differ from AppKit?
Which wallets use WalletKit already?
Does WalletKit support hardware wallets?
Can you use WalletKit for a cross-platform wallet?
What about gasless transfers?
Licence?
Related
- NewsMay 28, 2026
TON Toolset 2026: the new SDK stack for developers
TON Toolset launch: Acton, AppKit, WalletKit, TON Pay, MCP, Agentic Wallet — a unified SDK suite from TON Foundation. What's inside, for whom, and where to start.
- NewsMay 28, 2026
AppKit: the SDK for Mini Apps and dApps on TON in 2026
@ton/appkit — the official SDK for TON frontend dev: TON Connect, typed transactions, React components, DNS, DEX quotes, staking. What's inside and how to use it.
- BasicsMay 17, 2026
TON Connect 2: What Changed in the Wallet Connection Protocol
How TON Connect 2 differs from v1 — JSON-RPC, deep and universal links, bridge servers, multi-wallet picker, and what developers should know in 2026.
- WalletsMay 16, 2026
Tonkeeper vs MyTonWallet vs Tonhub vs Wallet: 2026 comparison
Detailed comparison of the four main TON wallets across 12 criteria: custody, OS support, jetton/NFT, Ledger, TON Connect, audits, RU availability, recovery and more.
- BasicsMay 16, 2026
Gas Stations on TON: Battery, Gasless and W5
How USDT moves on TON without holding TON: Tonkeeper Battery, @wallet Gasless flow, W5 sponsored transactions, and how it compares to ERC-4337 paymasters.