Skip to main content
TLDR:
  • Demonstrates how to use TonWeb (JavaScript SDK) with a Chainstack endpoint to fetch Jetton metadata, user balances, and transaction histories on the TON blockchain.
  • Shows step-by-step examples of requesting token data via TonWeb or HTTP, highlighting the modular approach for Jetton data, balance, and transfer queries.
  • Emphasizes the difference between the minter contract (master) and wallet contracts, and how to verify or fetch wallet addresses and check balances.
  • Provides working code snippets to integrate these concepts easily into your application.

Introduction

Jettons are the standard token implementation on the TON blockchain, analogous to ERC-20 tokens on Ethereum. They enable developers to create and manage custom tokens that can represent a variety of assets or utilities within decentralized applications. The standard for Jettons on TON is described in TEP64.

Get your own node endpoint today

Start for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.

TON APIs

To interact with the TON blockchain, developers can use either HTTP APIs or the ADNL protocol. HTTP APIs are simpler and suitable for most applications, while ADNL offers advanced low-level network communication. Chainstack dedicated nodes provide ADNL support for advanced use cases requiring direct network layer interaction. The TON HTTP API has two versions: V2, which provides real-time data, and V3, which offers indexed blockchain data. In this tutorial, we will use TonWeb, which operates on the V2 JSON-RPC endpoint.

Jettons on TON

Jettons are smart contracts on TON that follow a standard interface, allowing wallets and applications to interact with them uniformly. Each Jetton consists of:
  1. Master (or minter) contract: the contract that manages the Jetton metadata and logic.
  2. Wallet contract: a contract for each user holding the Jetton, managing the user’s balance and transfers.

Prerequisites

  1. Node.js and npm installed.
  2. TonWeb installed.
  3. RPC endpoint from Chainstack.
TonWeb is a JavaScript SDK that allows developers to interact with the TON blockchain via HTTP APIs. Install it using npm:

Interactions

Fetching Jetton metadata

Fetching Jetton metadata allows you to retrieve essential information about a specific Jetton token. To achieve the same using HTTP requests, you can use the /getTokenData endpoint of TON API v2.

Fetching user Jetton balance

To display a user’s Jetton balance, you need to query the blockchain for the amount of a specific Jetton that the user holds. The first example shows how to obtain a Jetton wallet for a specific user.
When the Jetton wallet is known, we can fetch its balance:

Fetching user Jetton transfers

Fetching a user’s Jetton transfer history allows you to display past transactions involving the Jetton token for that user.

Conlcusion

TonWeb is a JavaScript SDK that simplifies the process of interacting with Jetton contracts on the TON blockchain. In this tutorial, we explored how to peform basic fetching operations with Jettons.

About the author

Anton Sauchyk

Anton Sauchyk Developer Advocate @ Chainstack
Multiple years of software development and Web3 expertise
Last modified on June 22, 2026