Developer SDK

WalletKit

Open-source SDK for integrating custodial and non-custodial wallets with TON. Full control over key management, signing, and access — without compromising UX or compliance.

Get started in one command

Install WalletKit from npm and start building your wallet integration in minutes.

npm i @ton/walletkit

What WalletKit does

Everything you need to build a production wallet on TON — from protocol handling to asset management.

TON Connect protocol

Handles the full TON Connect lifecycle — connect, disconnect, transaction requests, and data signing. Your wallet speaks the standard protocol out of the box, compatible with every dApp on TON.

Multi-wallet management

Support multiple TON wallets simultaneously with persistent storage and optional custom signers. Built for institutional-grade wallet services that need to manage many accounts at once.

Action previews

Emulate transactions before signing to show users a clear money flow analysis. Display exactly what will happen — amounts, recipients, fees — before any confirmation.

Full asset support

Native support for Toncoin (TON), Jettons (including USDT), and NFTs with full metadata. Query balances, build transfers, and display collections without external libraries.

Initialize and connect

Set up WalletKit, create a wallet, and handle incoming dApp connections in a few lines of code.

import { WalletKit } from '@ton/walletkit';

const kit = new WalletKit({
  manifestUrl: 'https://your-app.com/tonconnect-manifest.json',
});

// Create or restore a wallet
const wallet = await kit.createWallet();

// Listen for dApp connection requests
kit.onConnect((session) => {
  console.log('Connected to:', session.appName);
});

// Handle transaction requests
kit.onTransaction(async (tx) => {
  const preview = await kit.emulate(tx);
  // Show preview to user, then approve
  await kit.approve(tx);
});

Every platform, one SDK

WalletKit runs wherever your wallet lives — web, mobile, or browser extension.

Web

TypeScript/JavaScript package for web wallets and dashboards. Install from npm and integrate with any frontend framework.

npm package

iOS

Swift Package for native iOS wallet apps. Full protocol support with platform-native signing and storage APIs.

Swift package

Android

Kotlin/Java package for Android wallets. Integrates with standard Android keystore for secure key management.

Android package

Who uses WalletKit

From indie wallet projects to institutional custody solutions.

Wallet builders

Build a standalone TON wallet or add TON support to an existing multi-chain wallet. WalletKit handles the TON Connect protocol, asset queries, and transaction building so you can focus on UX.

Custodial services

Institutions and custodians get full control over key management and signing workflows. Plug in custom signers, manage multiple wallets, and maintain compliance — all through a clean API.

Why WalletKit

3 Platforms

Web, iOS, and Android — one API surface, consistent behavior across all platforms.

100% Open source

MIT-licensed, fully auditable. No vendor lock-in, no proprietary dependencies.

TON Connect compatible

Works with every dApp that supports TON Connect — the standard protocol for the TON ecosystem.

Start building your wallet

From first install to production — WalletKit handles the infrastructure so you can ship.

Open WalletKit docs