Skip to content
    hazBasehazBaseDocs
    SMART CONTRACTS

    Choose contracts by use case

    Start with the feature you want to build, then explore the contract composition and an implementation pattern.

    01

    Physical assets & inventory

    Use PrivilegeNFT for individual identities or FlexibleToken for fungible units. Add AgreementManager for bilateral offers and Whitelist for eligibility.

    See the data model, flow and code
    02

    Debt & asset finance

    Use BondToken for classes and issuance units, DebtManager for coupons, principal and claims, and Splitter for routing funds to operators or reserves.

    See the data model, flow and code
    03

    Access & membership

    Use PrivilegeEdition for multiple passes or PrivilegeNFT for individual credentials. Connect application access checks to redemption where appropriate.

    See the data model, flow and code
    04

    Community & governance

    Connect a voting token to GenericGovernor, define vote weights with Strategy, then execute approved actions through TimelockController.

    See the data model, flow and code
    05

    Payments & connected services

    Use SmartAccount and the Wallet API for payment initiation. Add MarketManager for token trades or Splitter when receipts need multiple destinations.

    See the data model, flow and code
    06

    Evidence & disclosure

    Use MultiTrustCredential for metrics and credentials, with a matching Verifier when proving conditions. Consult KpiRegistry for project KPI updates.

    See the data model, flow and code
    Additional componentsChoose CircuitBreakerAMM, AMMRouter and AMMFactory for pool-based swaps, Staking for deposits and rewards, and MetaGovernor for multiple voting chambers. ContractFactory and EmergencyPauseManager support deployment and operations.
    Browse all contracts