Build compliant token workflows on Solana.

SSTS combines Token-2022 extensions, verification programs, and issuer tooling for security token issuance and lifecycle operations.

config/program-ids.json
.env
{
"devnet": {
"securityTokenProgram": "SSTS8Qk2...Hxvjap",
"transferHookProgram": "HookXqLK...a8bmfL"
}
}

Introduction

SSTS Developer Documentation

Build regulated security-token workflows on Solana with the Solana Security Token Standard (SSTS).

Governance

Understand how the SSTS Foundation steers upgrades and publishes core releases.

Architecture

Understand the core program, transfer hook, and verification model.

Issuer quickstart

Deploy the example verification program and initialize issuer state.

API reference

Review instruction-level references for integration and audits.

What is SSTS

SSTS is a Solana security token standard built on SPL Token-2022 extensions. It provides a neutral, reusable on-chain framework for:

  • compliance-aware minting, transfer, burn, and administrative controls
  • configurable verification programs for jurisdiction and issuer rules
  • corporate actions, including split, convert, and distribution claim flows

Primary repositories

Start path

  1. Confirm network and published program IDs from the SSTS Foundation.
  2. Review the verification model and API reference for instruction-level integration.
  3. Use the issuer example to configure mint and transfer verification for your token workflow.

Core Program IDs

This is the single source of truth for the SSTS core program IDs to use in the issuer token projects:

{
  "localnet": {
    "securityTokenProgram": null,
    "transferHookProgram": null
  },
  "devnet": {
    "securityTokenProgram": "SSTS8Qk2bW3aVaBEsY1Ras95YdbaaYQQx21JWHxvjap",
    "transferHookProgram": "HookXqLKgPaNrHBJ9Jui7oQZz93vMbtA88JjsLa8bmfL"
  },
  "testnet": {
    "securityTokenProgram": null,
    "transferHookProgram": null
  },
  "mainnet": {
    "securityTokenProgram": null,
    "transferHookProgram": null
  }
}

Verify genuine core programs (devnet)

Use this to independently verify that the deployed core programs are genuine.

Network: devnet
Last updated: 2026-03-09
RPC URL: https://api.devnet.solana.com
Verification commit hash: 1ab607e149882e995663ee529bbdb7e8391fe003

Published Program IDs (devnet)

{
  "securityTokenProgram": "SSTS8Qk2bW3aVaBEsY1Ras95YdbaaYQQx21JWHxvjap",
  "transferHookProgram": "HookXqLKgPaNrHBJ9Jui7oQZz93vMbtA88JjsLa8bmfL"
}

Expected Program Hashes

{
  "SSTS8Qk2bW3aVaBEsY1Ras95YdbaaYQQx21JWHxvjap": "735f1e2d46775b40b31de98eba9a8e4f8916bd616c1b2baed73c1ecaf8cc2ca0",
  "HookXqLKgPaNrHBJ9Jui7oQZz93vMbtA88JjsLa8bmfL": "1a2a956050c9f51793698d7b5aeaf72be04c9b85eef03b4333d2b4a77c687a39"
}

Quick Integrity Check

solana-verify get-program-hash -u https://api.devnet.solana.com SSTS8Qk2bW3aVaBEsY1Ras95YdbaaYQQx21JWHxvjap
solana-verify get-program-hash -u https://api.devnet.solana.com HookXqLKgPaNrHBJ9Jui7oQZz93vMbtA88JjsLa8bmfL

Reproducible Verification Commands

solana-verify verify-from-repo -u https://api.devnet.solana.com \
  --program-id SSTS8Qk2bW3aVaBEsY1Ras95YdbaaYQQx21JWHxvjap \
  https://github.com/Halborn/solana-security-token-standard \
  --commit-hash 1ab607e149882e995663ee529bbdb7e8391fe003 \
  --library-name security_token_program

solana-verify verify-from-repo -u https://api.devnet.solana.com \
  --program-id HookXqLKgPaNrHBJ9Jui7oQZz93vMbtA88JjsLa8bmfL \
  https://github.com/Halborn/solana-security-token-standard \
  --commit-hash 1ab607e149882e995663ee529bbdb7e8391fe003 \
  --library-name security_token_transfer_hook

Audit Trail (Transaction IDs)

{
  "Security Token Program": {
    "deployTx": "2EQEELtq5LsrqHF9tsLF1QwTvETqe4wjpdQsELKmteDG7FbhgCDXA8UPJmHMTDCyA5BZzhoUVf7fh7icMZyoKUM4",
    "verifyUploadTx": "3ztUtTkEtPMnkXPeDMfzgUPYD7YiTduT633LdU88nnjUeYyFATpDbu1f9Zv3EEyEoTG2mpuWTUaLTiMY79KFt3xn"
  },
  "Transfer Hook Program": {
    "deployTx": "33ncsTCTkfasHgfvpe1sBorc3bnpHp5xh6DASJyG7wrn35KFhKcKXgvsFhSh4sVxFAvp7tVZiBuUu4zRPtDdhmPP",
    "verifyUploadTx": "xn8wbHXi2kSg7S3edtQXmBFDoNcrxuD9YoVTiG1vXumhKDK7egL4JYHXWhzuGznzHxXUhDeow5w2K5xA31gYrkQ"
  }
}

Explorer Links

Status

Core standard contracts are foundation-managed. Issuer and integrator teams generally work at the configuration and policy layer.