fast-sdk

Fast SDK (@fastxyz/sdk) — TypeScript SDK for building on the Fast payment network. Provides FastProvider, Signer, and TransactionBuilder for transactions, account queries, and token management.

GitHub: fastxyz/fast-sdkarrow-up-right

What You Can Do

The Fast SDK is the core interface for building applications on the Fast payment network. Use it to:

  • Authorize and submit payments — construct transfers and other supported Fast operations, then authorize them with Ed25519 keys

  • Query the network — look up account balances, sequence numbers, token metadata, and network state

  • Manage tokens — transfer, create, issue, and release tokens on Fast

  • Sign and verify messages — use Ed25519 signatures for off-network messages alongside Fast network payments

  • Address conversion — convert between hex, bytes, and bech32m address formats seamlessly

Installation

Install from npm as @fastxyz/sdk. For the exact install command and current examples, use the package README on GitHubarrow-up-right.

Architecture

The SDK is built around three composable primitives:

Component
Purpose

FastProvider

JSON-RPC client that connects to the Fast proxy API. Handles all network queries (balance checks, account info, token lookups) and transaction submission.

Signer

Holds an Ed25519 private key and produces signatures for payments and messages. Keys never leave the Signer — you control your secrets.

TransactionBuilder

Fluent builder API for constructing operations. Chains methods like addTokenTransfer(), addTokenCreation(), addMint(), addBurn() and produces a signed envelope ready for submission.

All three compose together: create a FastProvider pointing at an RPC endpoint, pair it with a Signer holding your key, and pass both to a TransactionBuilder to build and sign operations.

Core Concepts

The Fast payment network is a high-performance payment network. Unlike a blockchain, it is optimized for fast finality and low-cost payment operations. Payments confirm in seconds, not minutes.

Accounts on Fast are identified by bech32m addresses (prefix fast). An account must be funded before it can submit transactions — there is no mining or staking mechanism.

Operations are the building blocks of every payment. Each operation has a sequence number to prevent reuse. Operations can be batched into a single payment for atomic execution.

Token types on Fast include fungible tokens (ERC20-like) and native token (FAST). Token addresses are bech32m-encoded on Fast, unlike the hex addresses used on EVM chains. Tokens can be issued or released by authorized accounts.

Key Workflows

Initialize and Query

Create a FastProvider pointing at the desired RPC endpoint. Use it to query account info (balances, next nonce, token holdings) and token metadata. This is the first step before building any transaction.

Authorize and Submit a Payment

Create a TransactionBuilder with your Signer and FastProvider. Chain operation methods to build the transaction, then call .sign() to produce a signed envelope. The builder handles nonce management, BCS serialization, and Ed25519 signing.

Submit and Confirm

Pass the signed envelope to FastProvider.submitTransaction(). The proxy handles broadcasting to validators, collecting quorum signatures, and assembling a certificate. Settlement is final — typically under one second.

For complete method signatures, supported operation builders, error handling, and runnable examples, see the fast-sdk README on GitHubarrow-up-right.

RPC Endpoints

Network
RPC URL
Use Case

Mainnet

https://api.fast.xyz/proxy

Production — real tokens and payments

Testnet

https://testnet.api.fast.xyz/proxy

Development — test tokens, no real value

Tip: Use testnet first to validate your integration before touching mainnet.

Address Format

Fast uses bech32m addresses with the fast prefix. You may also encounter hex format (for raw bytes) and byte arrays (for RPC payloads). The SDK provides conversion utilities (toHex, fromHex, toFastAddress, fromFastAddress) to handle all formats.


For complete API documentation, all method signatures, supported operations, and runnable examples, see the fast-sdk README on GitHubarrow-up-right.

Last updated

Was this helpful?