Live on Robinhood Chain

Private company shares, issued on-chain. With the rules built in.

Precursor is the platform private companies use to issue their shares as tokens on Robinhood Chain. Every transfer runs the company's rules before it settles, and every issuance, offering and corporate action is recorded where anyone can verify it.

Issuer-sponsored. Every Precursor token is issued by the company it represents.

Anthropic

Series F Preferred · ANTH-F

Live

Reference Valuation

22.50 USDG

Priced round · Sep 30, 2026

Holders
184
Supply
2.40M

Series F extension

Closes in 6 days

3,120,000 USDGof 4,000,000 · min 1,500,000

canTransfer

500 ANTH-F

  1. Token not pausedpass
  2. Sender identitypass
  3. Recipient identitypass
  4. RegionModulepass
  5. EligibilityModulepass
  6. HoldingPeriodModulepass
  7. 0x71c3…9e4a to 0xb02f…17d3OK
0x71c3…9e4a to 0x4e88…c0b1NOT_ELIGIBLE

Stopped at EligibilityModule. The recipient does not meet the eligibility tier for this class.

Checked before anyone signsView in Explorer
Rule modules
8
Region, eligibility, holding periods, vesting and more
Reason codes
15
Every check returns one before anyone signs
Transaction to deploy
1
PrecursorFactory creates a company's full contract set
Gas for holders
0
Sponsored for investors and employees
01How it works

From a cap table to a live share token in under four weeks.

Precursor replaces spreadsheets and manual transfer review with a share token per class. The token balances become the cap table, reconciled once at onboarding and kept current by the chain itself.

  1. 01

    Verify

    The company is verified and chooses which share classes to bring on-chain. It appoints a registrar, the party that keeps the authoritative cap table, which can be the company itself or an administrator it names.

    Registrar
  2. 02

    Import

    The existing cap table comes in as a CSV or an export from cap table software and is reconciled line by line. Holders are invited, verify their identity, and receive an embedded wallet or connect their own.

    CSV or export
  3. 03

    Configure

    In the Console, each share class gets its rules: regions, eligibility tier, holding periods, holder cap, transfer windows, right of first refusal, maximum ownership and employee vesting. Rules are modules, so they can change later without upgrading the token.

    8 modules
  4. 04

    Rehearse

    The identical configuration is deployed to Robinhood Chain testnet first. The company runs sample transfers, an offering and a window against it, and reviews every reason code before anything touches mainnet.

    Testnet
  5. 05

    Deploy

    PrecursorFactory deploys the company's full contract set to mainnet in one transaction. The registrar mints tokens to each holder against the reconciled cap table, and every mint emits SharesIssued with its reference.

    Mainnet
  6. 06

    Operate

    From here the company raises through offerings, opens Liquidity Windows, pays distributions, runs votes and anchors disclosures, all from the Console and all as on-chain transactions.

    USDG

Issuer-sponsored

  • 01

    The token is the share. It carries the economic, information and voting rights of its class, not a claim on a third party.

  • 02

    The company sets the rules. They are configured in the Console and enforced by contracts the company controls.

  • 03

    The company decides when liquidity happens, in windows it schedules or through venues it explicitly approves.

02Products

One record of ownership, seen from three sides.

The company works in the Console. Holders work in Portfolio. Anyone can read the Explorer, and developers reach all of it through the API. Each surface reads the same contracts on Robinhood Chain.

Console · For companies01

Run your equity from one place

Finance teams and boards configure share classes and transfer rules, run offerings and Liquidity Windows, and approve sensitive actions through a multi-sig the company sits on.

  • Cap table import, reconciliation and holder invites
  • Offerings with USDG escrow, minted at close or refunded
  • Distributions, votes and anchored disclosures
  • Reference Valuations published with their source and date
Portfolio · For holders02

Hold, invest and sell on the company's terms

Holders see every position by lot, with unlocked and locked shares apart. They join offerings, sell in Liquidity Windows, claim distributions, vote and read company documents. Gas is sponsored.

  • Vested and unvested shares shown side by side
  • A plain explanation of any rule before you sign
  • Same-day identity verification, embedded wallet included
  • Proceeds in USDG, in the same transaction as the sale
Explorer and API · For everyone03

A public record, and an interface to build on

The Explorer shows every company's supply, holder count, rules, offerings, windows, valuations and events, without personal data. The API and SDK expose the same records and transfer checks to venues and wallets.

  • Every issuance, transfer and corporate action, linked on-chain
  • Transfer checks with a reason code, before submission
  • Signed webhooks for every on-chain event
  • A sandbox on Robinhood Chain testnet

Read more about each surface in the product documentation.

03Transfer rules

Every transfer is checked. Every answer has a code.

Rules live inside the token, so they hold on every wallet, venue and pool on a permissionless chain. A transfer that breaks a rule never settles, and canTransfer returns the reason before anyone signs.

Step 01canTransfer

Token

Is the class paused, and does the sender hold enough unlocked, unfrozen shares?

  • TOKEN_PAUSED
  • INSUFFICIENT_UNLOCKED_BALANCE
  • FROZEN
Step 02canTransfer

Identity

Do both wallets map to a verified identity on the company's registry, with claims still in date?

  • SENDER_NOT_VERIFIED
  • RECIPIENT_NOT_VERIFIED
  • CLAIM_EXPIRED
Step 03canTransfer

Modules

Each module the company enabled runs in turn. If every one passes, the check returns OK and the transfer settles.

  • 8 module codes
  • OK
  • RegionModuleREGION_BLOCKED

    Allows or blocks holders by region, using an allow-list or a block-list of countries.

  • EligibilityModuleNOT_ELIGIBLE

    Requires the recipient to hold a valid eligibility claim at or above the class's tier.

  • HoldingPeriodModuleHOLDING_PERIOD_ACTIVE

    Locks each lot for a set period after it is acquired. Lots are consumed oldest first.

  • HolderCapModuleHOLDER_CAP_REACHED

    Limits the number of distinct holders of the class.

  • TransferWindowModuleWINDOW_CLOSED

    Allows transfers only inside windows the company schedules.

  • ROFRModuleROFR_PENDING

    Gives the company a right of first refusal, exercised on-chain.

  • MaxOwnershipModuleMAX_OWNERSHIP_EXCEEDED

    Caps any single holder's share of the class.

  • EmployeeVestingModuleUNVESTED

    Keeps unvested employee shares locked and releases them on schedule.

Modules are configured per share class and swapped without upgrading the token. Adding or removing one passes a 24 hour timelock.

Identity as signed claims, with no personal data on-chain.

Each company keeps an IdentityRegistry that maps wallets to an on-chain identity. The identity holds claims signed by verifiers the company trusts, each with a topic, a value and an expiry. Names, documents and contact details stay with the verifier and never reach the chain.

  1. IDENTITY_VERIFIED

    The holder passed identity verification. Carries an expiry.

  2. INVESTOR_ELIGIBLE

    The holder's eligibility tier, as attested by a trusted verifier.

  3. REGION

    An ISO 3166 country code, used by RegionModule.

  4. EMPLOYEE_OF

    The company the holder works for, used for vesting and employee windows.

  5. SCREENED

    When the holder was last screened. Revoked automatically if re-screening fails.

  6. VENUE

    Marks an approved pool or venue contract that may hold shares.

04Capital and liquidity

Raise and sell on a schedule the company sets.

Liquidity is something the company controls, not something that happens to it. Every mechanism settles delivery versus payment in USDG: shares and stablecoins move in the same transaction, or neither moves.

01

Offerings

OfferingVault

The company sets a price per share, a minimum and maximum raise, a minimum ticket and dates. Investors subscribe in USDG, held in escrow. At close, shares are minted and funds released in one transaction, or every investor is refunded.

02

Liquidity Windows

LiquidityWindow

Time-boxed sales the company schedules. Sellers lock shares, eligible buyers lock USDG, and the window clears at one uniform price. With ROFR enabled, the company gets a priority bid at that price before it settles. Fixed-price tenders work the same way.

03

RFQ

RFQSettlement

Eligible holders trade between windows on signed EIP-712 quotes. The taker fills on-chain, canTransfer runs on both sides, and the company can restrict RFQ to its transfer windows.

04

Permissioned pools

PoolGate

Companies that opt in can list a class on an AMM pool. PoolGate checks canTransfer on every swap and liquidity change, so only eligible holders can trade or provide liquidity.

Worked example

Eight orders, one clearing price.

A Liquidity Window on ANTH-F, an example Series F Preferred class for Anthropic. At close, anyone can call clear(windowId). The contract picks the single price that matches the most shares, breaking ties toward the last Reference Valuation, then fills by price priority and pro-rata at the margin. Everything unmatched is released.

Asks

Sellers lock shares

IDSharesLimitFilled
  • A14,00021.004,000
  • A26,00023.006,000
  • A35,00024.005,000
  • A43,00026.000

Bids

Buyers lock USDG

IDSharesLimitFilled
  • B15,00026.005,000
  • B24,00024.504,000
  • B38,00024.006,000
  • B44,00022.000

Cleared

WindowCleared

24.00 USDG

Uniform price for every fill, buyer and seller alike

Shares matched
15,000
Settled to sellers
360,000 USDG
B3 at the margin
6,000 of 8,000
Prior Reference Valuation
22.50

The clearing price is published as the new Reference Valuation, with source WINDOW_CLEARING.

05Compared

The company issues the token. That changes everything after it.

There are two common ways private company equity changes hands today: manually, against records kept off-chain, or through tokens third parties create without the company. Precursor is the issuer-sponsored alternative.

  • Issuer
    ManualThe company, through spreadsheets and cap table software
    WrapperA third party, without the company
    PrecursorThe company itself, on contracts it controls
  • What you hold
    ManualA line in a record someone else maintains
    WrapperA claim on the wrapper that tracks a price
    PrecursorThe share, with the rights its class carries
  • Transfer rules
    ManualReviewed by hand, over weeks
    WrapperRegion gating at most
    PrecursorEight modules checked on every transfer, with a reason code
  • Liquidity
    ManualOccasional tender offers and bilateral deals
    WrapperContinuous, but outside the company's control
    PrecursorWindows, RFQ and pools the company schedules and approves
  • Pricing
    ManualHard to benchmark, rarely shared
    WrapperA price signal the company never set
    PrecursorReference Valuations with their source and date, plus public clearing prices
  • Corporate actions
    ManualPaperwork, then manual updates
    WrapperApproximated, if at all
    PrecursorSplits, distributions, votes and conversions as on-chain transactions
  • The record
    ManualPrivate and fragmented
    WrapperPrice data only
    PrecursorEvery issuance and transfer on-chain, identities kept private

Nothing is tokenized on Precursor without the issuer. Every token is issued by the company it represents.

06Robinhood Chain

Built on the chain where stock tokens already live.

Robinhood Chain set the conventions that wallets, pools and oracles here already understand. Precursor tokens follow every one of them, then add identity-gated transfers and issuer governance. Precursor is independent and built on Robinhood Chain.

Stack
Arbitrum
Settles to
Ethereum
Gas
ETH, sponsored
Settlement asset
USDG

A standard ERC-20, with permissions

01

Each share class is one Precursor Share Token: an ERC-20 with 18 decimals, ERC-3643-compatible permissioned transfers, and the ERC-8056 multiplier. Wallets and indexers on the chain read it like any other stock token.

A Chainlink-compatible valuation oracle

02

ValuationOracle publishes each Reference Valuation on-chain and answers latestRoundData like any AggregatorV3 feed. latestValuation adds the source, the date and the hash of the supporting document.

Corporate actions without rebasing

03

Splits change the ERC-8056 uiMultiplier after a 48 hour timelock. Raw balances never change, so pools and integrations keep working through the event, and the oracle pauses across it.

AMMs and permissioned pools

04

The chain already runs AMMs and stablecoin rails. Companies that opt in can list a class in a pool guarded by PoolGate, which enforces the class's rules on every swap.

Embedded wallets and account abstraction

05

New holders get an embedded wallet at onboarding, and existing EVM wallets connect as they are. Precursor relays transactions, so investors and employees never need to hold ETH.

Cheap enough to check every transfer

06

Low fees and sub-second soft confirmation make a full rule check on every transfer economical, and settlement inherits Ethereum security.

07Transparency

Anyone can verify what happened. Only the right people see who.

The Explorer reads the public record straight from Robinhood Chain. Personal data never goes on-chain, so the record can be fully public while holders stay private.

Public, on-chain

  1. 01Total supply and holder count per share class
  2. 02Every mint, burn, transfer, freeze, recovery and pause
  3. 03Offering terms, raise progress and window clearing prices
  4. 04Corporate actions and multiplier history
  5. 05Rule module configuration for every class
  6. 06Hashes of every anchored document

Private, access-controlled

  1. 01Holder names and contact details
  2. 02Identity verification documents
  3. 03The full cap table with identities, for the issuer only
  4. 04Financial statements, gated to verified holders
  5. 05Document contents, unless the company makes them public
  6. 06Individual claim details

Every state change emits an event

Supply never changes silently. Each mint, burn, recovery, freeze and pause carries a reference, and the Explorer and the API index every event with its block and transaction.

  • SharesIssued
  • Transfer
  • ModuleConfigured
  • OfferingClosed
  • WindowCleared
  • QuoteFilled
  • DistributionFunded
  • ProposalFinalized
  • DocumentAnchored
  • ValuationPublished
  • RecoveryScheduled
  • Paused

Disclosures, anchored by hash

DisclosureRegistry records the kind, hash and location of every document the company publishes. Contents stay in Portfolio for verified holders, and anyone can confirm a document has not changed since it was anchored.

  • SHARE_CLASS_TERMS
  • OFFERING_DOCUMENT
  • FINANCIAL_STATEMENT
  • COMPANY_UPDATE
  • BOARD_RESOLUTION
  • VALUATION_REPORT
08Developers

Check a transfer before it is sent. From any app.

Venues and wallets integrate the rule engine once and reuse it across every company on Precursor. The same canTransfer answer is available on-chain, over the API and in the SDK.

check-transfer.ts@precursor/sdk
$ npm install @precursor/sdk

import { Precursor } from "@precursor/sdk";

const precursor = new Precursor(process.env.PRECURSOR_SECRET_KEY);

const check = await precursor.transfers.check({
  share_class: "cls_nwl_series_b",
  from: "0x71c3a0d5f1b84e2c9a07d36b5e8f12c4d0a39e4a",
  to: "0x4e8817b3a9c25d06e4f71b8a2d93c5e6f048c0b1",
  amount: "500",
});

// {
//   ok: false,
//   reason_code: "NOT_ELIGIBLE",
//   message: "The recipient does not meet the eligibility tier for this share class."
// }
Webhook events
  • share_class.deployed
  • holder.verified
  • transfer.settled
  • transfer.blocked
  • offering.closed
  • liquidity_window.cleared
  • REST API and TypeScript SDK

    Companies, share classes, holders, offerings, windows, distributions, proposals, documents and valuations. JSON, cursor pagination and an Idempotency-Key on every POST.

  • Signed webhooks

    Every on-chain event, delivered with its block number, transaction hash and confirmation depth, signed with HMAC-SHA256 and retried for three days.

  • A sandbox on testnet

    sk_test_ keys run against Robinhood Chain testnet with the same contracts and the same reason codes as mainnet.

  • Publishable keys for the client

    pk_live_ keys call read-only endpoints such as transfer checks and public Explorer data straight from a browser or a wallet.

09Security and control

Sensitive actions wait in public, and include the company.

Roles are separated, sensitive actions pass a timelocked multi-sig on which the issuer is a signer, and every pause publishes its reason. Each deployment is rehearsed on testnet with the same configuration first.

Recovery
72 h
Minimum 48 hours
Multiplier change
48 h
Splits and reverse splits
Module change
24 h
Add or remove a rule
Token upgrade
7 days
UUPS, via IssuerTimelock
Pause
Immediate
Unpause is immediate too

Defaults. Each company can configure its timelocks within fixed bounds.

Roles

  • ISSUER_ADMINCompany multi-sig

    Configures modules, offerings, windows, distributions and votes.

  • REGISTRARRegistrar

    Mints and burns against cap table records and approves recoveries.

  • OPERATORPrecursor relayers

    Submits and sponsors transactions. Cannot move holder tokens alone.

  • PAUSERIssuer and registrar

    Pauses and unpauses a share class, with a reason on-chain.

Found a vulnerability? Write to security@useprecursor.xyz.

Recovery, not custody

  1. 01

    Lost wallet reported

    The holder reports the lost wallet and verifies their identity again with a trusted verifier.

  2. 02

    Two of three approve

    Any two of ISSUER_ADMIN, REGISTRAR and OPERATOR approve the replacement wallet. No single party can do it alone.

  3. 03RecoveryScheduled

    Scheduled in public

    The recovery is scheduled on-chain with its execution time, so the holder and anyone watching can see it before it happens.

  4. 04RecoveryCancelled

    Timelock runs

    The balance stays frozen for 72 hours by default. A mistaken or contested recovery can be cancelled.

  5. 05RecoveryExecuted

    Executed

    The full balance moves to the replacement wallet, with lots and holding periods intact.

Onboarding in under four weeks

Bring your cap table on-chain. Keep the rules yours.

Tell us about your company and the share classes you want to issue. We will walk your team through the Console, rehearse your configuration on testnet, and deploy when you are ready.

hello@useprecursor.xyz