# Create a document signing submission for the authenticated partner and user Source: https://docs.passage.coinlist.co/api-reference/documentsubmissions/create-a-document-signing-submission-for-the-authenticated-partner-and-user /api-reference/openapi.json post /v1/documents/{document_type}/submission Creates a signing submission for the given document type (e.g. a W-8BEN tax certification) for the current entity. The signing link is emailed to the user. Re-posting acts as a resend/re-sign where the document state allows it. The submitted PII pre-fills the form and is forwarded to Passport, never persisted by Frontline. # Generate a Sumsub KYC access token Source: https://docs.passage.coinlist.co/api-reference/kyc/generate-a-sumsub-kyc-access-token /api-reference/openapi.json post /v1/kyc-token Generates a short-lived Sumsub WebSDK access token for the current user so an identity verification flow can be started. Requires a user-scoped access token (authorization code grant); partner-only tokens (client credentials grant) are rejected. # Introspect token Source: https://docs.passage.coinlist.co/api-reference/oauth/introspect-token /api-reference/openapi.json post /oauth/introspect Returns metadata about an access token, including whether it is active. # Issue OAuth access token Source: https://docs.passage.coinlist.co/api-reference/oauth/issue-oauth-access-token /api-reference/openapi.json post /oauth/token Issues access tokens for `authorization_code`, `client_credentials`, and `refresh_token` grants using an `application/x-www-form-urlencoded` request body. For the `authorization_code` grant, the partner exchanges the code obtained from `GET /oauth/authorize` along with a PKCE `code_verifier`. # Revoke token Source: https://docs.passage.coinlist.co/api-reference/oauth/revoke-token /api-reference/openapi.json post /oauth/revoke Revokes an access or refresh token. # Allow a wallet address for an offer Source: https://docs.passage.coinlist.co/api-reference/offers/allow-a-wallet-address-for-an-offer /api-reference/openapi.json post /v1/offers/{offer_id}/allow-wallet # Connect a proven external wallet to an offer option Source: https://docs.passage.coinlist.co/api-reference/offers/connect-a-proven-external-wallet-to-an-offer-option /api-reference/openapi.json post /v1/offers/{offer_id}/addresses For options without a whitelisted-wallet requirement, submitting when a wallet is already connected updates the existing binding in place, keeping its id. Options with a whitelisted-wallet requirement accumulate wallets up to the requirement's max_wallets and then reject with `max_wallets_reached`. # Get an offer for the authenticated partner Source: https://docs.passage.coinlist.co/api-reference/offers/get-an-offer-for-the-authenticated-partner /api-reference/openapi.json get /v1/offers/{id} # List offers for the authenticated partner Source: https://docs.passage.coinlist.co/api-reference/offers/list-offers-for-the-authenticated-partner /api-reference/openapi.json get /v1/offers # List the user's connected wallets for an offer option Source: https://docs.passage.coinlist.co/api-reference/offers/list-the-users-connected-wallets-for-an-offer-option /api-reference/openapi.json get /v1/offers/{offer_id}/addresses # Remove a connected external wallet from an offer option Source: https://docs.passage.coinlist.co/api-reference/offers/remove-a-connected-external-wallet-from-an-offer-option /api-reference/openapi.json delete /v1/offers/{offer_id}/addresses/{id} Returns the removed binding. Rejected with `offer_ended` once the offer has ended; bindings on an offer that has not yet started remain deletable. # Encode an Ondo swap for broadcast Source: https://docs.passage.coinlist.co/api-reference/ondo/encode-an-ondo-swap-for-broadcast /api-reference/openapi.json post /v1/ondo/swap/transaction Encodes the buy the user just confirmed and returns calldata their wallet can sign and broadcast, plus the amounts it commits to. This is the commit step: it consumes an attestation and the calldata expires, so call it once per confirmation and never poll it. Approve the swap contract for the full amount first; an allowance short of it is rejected here rather than reverting on-chain. The addresses are resolved from the offer, so the request names the asset, not the tokens. # Get whether an Ondo asset is currently tradable Source: https://docs.passage.coinlist.co/api-reference/ondo/get-whether-an-ondo-asset-is-currently-tradable /api-reference/openapi.json get /v1/ondo/swap/trading-status Reports whether an Ondo asset can be traded right now on the given side, and the gross caps if so. Ondo reports its trading limits per side, so a buy and a sell of the same asset can differ. Free to poll and consumes no attestation. # Quote an Ondo asset Source: https://docs.passage.coinlist.co/api-reference/ondo/quote-an-ondo-asset /api-reference/openapi.json get /v1/ondo/swap/quote Prices a buy or sell of an Ondo asset and returns the quantity, the per-token USD price and the decimals the quantity is denominated in. Free to poll while the user edits an order; it consumes no attestation. Takes no chain parameter, since Ondo runs no testnet and every environment prices against Ethereum mainnet. # Create a participation for the authenticated partner and user Source: https://docs.passage.coinlist.co/api-reference/participations/create-a-participation-for-the-authenticated-partner-and-user /api-reference/openapi.json post /v1/participations # Get a participation for the authenticated partner and user Source: https://docs.passage.coinlist.co/api-reference/participations/get-a-participation-for-the-authenticated-partner-and-user /api-reference/openapi.json get /v1/participations/{id} # List participations for the authenticated partner and user Source: https://docs.passage.coinlist.co/api-reference/participations/list-participations-for-the-authenticated-partner-and-user /api-reference/openapi.json get /v1/participations ## Filtering `filters` takes Flop filter parameters serialized as `filters[0][field]`, `filters[0][op]`, and `filters[0][value]`, with one index per filter. The playground cannot build that shape, so use the code samples. Filterable fields: `offer_id`, `offer_option_id`, `user_id`, `status`, `user_email`. # Get PII for the authenticated partner and user Source: https://docs.passage.coinlist.co/api-reference/pii/get-pii-for-the-authenticated-partner-and-user /api-reference/openapi.json get /v1/pii Returns the user's PII (full legal name, country of citizenship, tax ID, permanent address) to pre-fill tax forms such as the W-8BEN. Fields that are unavailable are null. # List requirement statuses for all options of an offer Source: https://docs.passage.coinlist.co/api-reference/requirements/list-requirement-statuses-for-all-options-of-an-offer /api-reference/openapi.json get /v1/offers/{offer_id}/requirements/statuses # List requirements for all options of an offer Source: https://docs.passage.coinlist.co/api-reference/requirements/list-requirements-for-all-options-of-an-offer /api-reference/openapi.json get /v1/offers/{offer_id}/requirements # Get the swap contract's output token metadata Source: https://docs.passage.coinlist.co/api-reference/swap/get-the-swap-contracts-output-token-metadata /api-reference/openapi.json get /v1/swap/output-token Resolves outputToken() on the Superstate swap contract and returns the ERC-20 name, symbol and decimals of that token. # Get the swap contract's status Source: https://docs.passage.coinlist.co/api-reference/swap/get-the-swap-contracts-status /api-reference/openapi.json get /v1/swap/status Reads stopped() and SWAP_LEVEL() on the Superstate swap contract so clients can determine whether swaps are currently allowed. # Preview a swap Source: https://docs.passage.coinlist.co/api-reference/swap/preview-a-swap /api-reference/openapi.json get /v1/swap/preview Reads preview(inputToken, amount) on the Superstate swap contract and returns the quote: the input amount to pay, the fee charged on it and the output amount to receive. # Get the on-chain ERC-20 allowance for a token, owner and spender Source: https://docs.passage.coinlist.co/api-reference/token/get-the-on-chain-erc-20-allowance-for-a-token-owner-and-spender /api-reference/openapi.json get /v1/token/allowance Reads allowance(owner, spender) on the ERC-20 token contract. Can be used to determine whether an approval transaction is needed before a swap or token sale. # Get the on-chain ERC-20 balance of an address Source: https://docs.passage.coinlist.co/api-reference/token/get-the-on-chain-erc-20-balance-of-an-address /api-reference/openapi.json get /v1/token/balance Reads balanceOf(owner) on the ERC-20 token contract. Used to display the balance of the connected wallet the user will pay with. # Request a wallet ownership challenge Source: https://docs.passage.coinlist.co/api-reference/wallet-ownership/request-a-wallet-ownership-challenge /api-reference/openapi.json post /v1/wallet-ownership # Check whether a wallet is authorized on a swap contract Source: https://docs.passage.coinlist.co/api-reference/wallet/check-whether-a-wallet-is-authorized-on-a-swap-contract /api-reference/openapi.json get /v1/wallet/authorized Reads authorized(address) on the Superstate swap contract to determine whether the given wallet is allowed to swap. # Asset catalog Source: https://docs.passage.coinlist.co/assets/catalog What is in the Passage catalog today, and a plain-language primer on each asset class. ## The catalog at a glance | Category | Examples | Issuing partners | | - | - | - | | [Equities](/assets/equities) | Tokenized US stocks, equity index and sector funds | Superstate (Opening Bell), Ondo | | [Fixed income (yield)](/assets/fixed-income) | US Treasury funds, corporate credit, CLOs | Ondo, WisdomTree (coming soon), Centrifuge (coming soon) | | [Commodities](/assets/commodities) | Gold, silver, oil, natural gas | Ondo | | [Token sales](/use-cases/token-sales) | New token offerings | CoinList | Ondo alone contributes 442 assets across the three asset classes, and the catalog grows every time Passage connects to another tokenization platform. > **[Equities](/assets/equities)** > > 391 assets > **[Fixed income](/assets/fixed-income)** > > 30 assets > **[Commodities](/assets/commodities)** > > 21 assets See [Asset issuers](/assets/partners) for what each partner issues and what ownership of their tokens actually means. ## Trading windows Ondo assets trade in sessions that follow the US stock market, and each asset has its own set of sessions. The **Trading window** column on [Equities](/assets/equities), [Fixed income](/assets/fixed-income), and [Commodities](/assets/commodities) shows which set applies. | Trading window | When users can buy and sell (US Eastern time) | | - | - | | 24/7 | Every weekday session, plus weekends and US market holidays | | 24/5 | Sunday 8:05 PM to Friday 7:59 PM, across all four weekday sessions | | Extended hours | Weekdays, 4:01 AM to 7:59 PM | | Market hours | Weekdays, 9:31 AM to 3:59 PM | Some assets trade in a mix of sessions that does not fit these windows. For those, the column names the sessions instead, such as "Pre-market and regular hours." ### Sessions | Session | Hours (US Eastern time) | | - | - | | Pre-market | 4:01 AM to 9:29 AM | | Regular hours | 9:31 AM to 3:59 PM | | Post-market | 4:01 PM to 7:59 PM | | Overnight | 8:05 PM to 3:55 AM | | Off-Hours | Friday evening to Sunday evening, and US market holidays | Weekday sessions run only on US market days, so on a US market holiday only 24/7 assets trade. Trading pauses for a few minutes between sessions, during corporate actions on a ticker, and if risk limits trip. Outside regular hours, and especially in Off-Hours, liquidity is lower, spreads can be wider, and order limits are smaller. > [!NOTE] > > Trading windows reflect Ondo's schedule as of October 22, 2026, and Ondo adds assets to > Off-Hours over time. Live status for each asset is at > [status.ondo.finance/market](https://status.ondo.finance/market). ## Understanding the asset classes These primers are written for readers without a finance background. ### What is a stock? A stock is an ownership share in a company. If you own a share of Apple, you own a piece of Apple. Your share entitles you to the economic upside of the company, dividends, and other rights like voting. When the company becomes more valuable, your share generally does too, and some companies pay owners a portion of profits as dividends. Stocks can trade on public exchanges, where prices move constantly based on what buyers and sellers think the company is worth. There are also private shares that don't trade on major exchanges, but are purchased directly from the company or existing investors. ### What is a tokenized stock? A tokenized stock is a blockchain token that represents a share. Instead of holding shares in a brokerage account, your users hold a token in their own wallet. The token's value tracks the underlying stock, and it moves and settles like any other digital asset, including outside US market hours and without a registered brokerage relationship. One thing worth knowing is that not all tokenized stocks are created equally. Some represent direct, real ownership of the underlying share. Others are wrapped exposure, which tracks the price but carries different rights. See [Asset issuers](/assets/partners) for how this works issuer by issuer. ### What is a fund? A fund represents a basket of assets managed by an asset manager, for example WisdomTree. Funds can be managed actively, meaning the asset manager makes discretionary decisions on how to manage the portfolio, or passively, meaning the fund follows an existing asset allocation strategy or index. Some funds may be publicly traded like ETFs, while others may be private and not actively traded. There are many types of funds that represent exposure across all asset classes. A large share of the funds in the catalog are index funds, which track a basket of assets rather than a single one. The S\&P 500 tracks 500 of the largest US companies, so one S\&P 500 fund gives a user diversified exposure to the broad US stock market rather than a bet on any one company. Index funds sit in the asset class they track, so an S\&P 500 fund is listed under [Equities](/assets/equities) and a Treasury bond fund under [Fixed income](/assets/fixed-income). ### What is a yield product? A yield product covers a broad category of different types of financial assets. A yield product typically pays a return over time. The most common example is a US Treasury, which is a loan to the US government that pays interest and returns the principal at maturity. Because the US government backs them, US Treasuries are widely treated as one of the lowest-risk investments in the world, and their interest rate is often used as the baseline "risk-free" rate. Tokenized Treasury products let users hold that exposure as a token that accrues yield. Corporate debt works the same way, except the borrowers are companies rather than the government. That usually means a higher yield in exchange for more risk. ### What is a commodity? A commodity is a physical good that trades on a market, like gold, silver, oil, or natural gas. Prices move with global supply and demand rather than with the performance of any one company, which is why commodities are often held as a hedge against inflation or as diversification away from stocks. Users rarely take delivery of the physical good. Instead they hold a fund that owns it on their behalf, such as a gold trust that stores bullion in a vault, or a fund that tracks the commodity through futures contracts. Tokenized commodity products deliver that exposure as a single token. Passage also groups commodity-linked equity funds here, such as copper and uranium miner funds, because users buy them for exposure to the underlying commodity. > **[Next: Equities](/assets/equities)** > > Every tokenized stock and equity fund in the catalog, with ticker and issuer. # Commodities Source: https://docs.passage.coinlist.co/assets/commodities Every tokenized metals, energy, and commodity product in the Passage catalog, with ticker and issuer. Commodities are physical goods such as gold, silver, oil, and natural gas. The tokens below give exposure to those goods, either through funds holding the physical commodity or through futures and commodity-linked equities. See [Asset catalog](/assets/catalog) for a primer on the asset class, and [Asset issuers](/assets/partners) for what ownership of an Ondo token actually means. > [!NOTE] > > The catalog below reflects Ondo's published assets as of July 22, 2026. For current > availability, retrieve the [latest catalog](https://github.com/ondoprotocol/ondo-global-markets-token-list) > at runtime. > > The **Trading window** column shows when users can buy and sell each asset, as of > October 22, 2026. See [Trading windows](/assets/catalog#trading-windows) for what each one > means, and [status.ondo.finance/market](https://status.ondo.finance/market) for live status. ## Assets 21 tokenized commodity assets. The type column describes the instrument itself: **Company** for shares in a single company, **ETF**, **Fund**, or **Trust** for pooled vehicles that hold a basket on your behalf, and **Preferred** for preferred shares. | Asset | Ticker | Type | Issued by | Trading window | | - | - | - | - | - | | abrdn Physical Palladium Shares ETF | `PALLon` | ETF | Ondo | 24/5 | | abrdn Physical Platinum Shares ETF | `PPLTon` | ETF | Ondo | 24/5 | | abrdn Physical Precious Metals Basket Shares ETF | `GLTRon` | ETF | Ondo | Extended hours | | Breakwave Tanker Shipping ETF | `BWETon` | ETF | Ondo | Market hours | | First Trust Global Tactical Commodity Strategy Fund | `FTGCon` | Fund | Ondo | Market hours | | Franklin Responsibly Sourced Gold ETF | `FGDLon` | ETF | Ondo | Pre-market and regular hours | | Global X Copper Miners ETF | `COPXon` | ETF | Ondo | Extended hours | | Global X Silver Miners ETF | `SILon` | ETF | Ondo | 24/5 | | Global X Uranium ETF | `URAon` | ETF | Ondo | 24/5 | | Invesco DB Commodity Index Tracking Fund | `DBCon` | Fund | Ondo | Market hours | | Invesco Optimum Yld Dvsfd Cmd Str No K-1 ETF | `PDBCon` | ETF | Ondo | Market hours | | iShares Gold Trust | `IAUon` | Trust | Ondo | 24/5 | | iShares Silver Trust | `SLVon` | Trust | Ondo | 24/7 | | SPDR Gold Shares | `GLDon` | ETF | Ondo | 24/7 | | Sprott Nickel Miners ETF | `NIKLon` | ETF | Ondo | Market hours | | Sprott Uranium Miners ETF | `URNMon` | ETF | Ondo | 24/5 | | United States Oil Fund | `USOon` | Fund | Ondo | 24/5 | | US Brent Oil Fund | `BNOon` | Fund | Ondo | Extended hours | | US Copper Index Fund | `CPERon` | Fund | Ondo | 24/5 | | US Natural Gas Fund | `UNGon` | Fund | Ondo | 24/5 | | VanEck Rare Earth and Strategic Metals ETF | `REMXon` | ETF | Ondo | Market hours | > **[Next: Asset issuers](/assets/partners)** > > Ownership models and asset lifecycles, issuer by issuer. # Equities Source: https://docs.passage.coinlist.co/assets/equities Every tokenized stock and equity fund in the Passage catalog, with ticker and issuer. Equities are ownership shares in a company. Each token below tracks a listed share or an equity fund, and settles onchain like any other digital asset. See [Asset catalog](/assets/catalog) for a primer on the asset class, and [Asset issuers](/assets/partners) for what ownership of an Ondo token actually means. > [!NOTE] > > The catalog below reflects Ondo's published assets as of July 22, 2026. For current > availability, retrieve the [latest catalog](https://github.com/ondoprotocol/ondo-global-markets-token-list) > at runtime. > > The **Trading window** column shows when users can buy and sell each asset, as of > October 22, 2026. See [Trading windows](/assets/catalog#trading-windows) for what each one > means, and [status.ondo.finance/market](https://status.ondo.finance/market) for live status. ## Assets 391 tokenized equity assets: 326 single-company shares and 65 funds tracking equity indexes, sectors, regions, and themes. The type column describes the instrument itself: **Company** for shares in a single company, **ETF**, **Fund**, or **Trust** for pooled vehicles that hold a basket on your behalf, and **Preferred** for preferred shares. | Asset | Ticker | Type | Issued by | Trading window | | - | - | - | - | - | | AAON | `AAONon` | Company | Ondo | Pre-market and regular hours | | Abbott | `ABTon` | Company | Ondo | 24/5 | | AbbVie | `ABBVon` | Company | Ondo | 24/5 | | Accenture | `ACNon` | Company | Ondo | 24/5 | | ACM Research | `ACMRon` | Company | Ondo | Pre-market and regular hours | | Adobe | `ADBEon` | Company | Ondo | 24/5 | | Aehr Test Systems | `AEHRon` | Company | Ondo | 24/5 | | Airbnb | `ABNBon` | Company | Ondo | 24/5 | | Albemarle | `ALBon` | Company | Ondo | 24/5 | | Alibaba | `BABAon` | Company | Ondo | 24/5 | | Alpha and Omega Semiconductor | `AOSLon` | Company | Ondo | Market hours | | Alphabet Class A | `GOOGLon` | Company | Ondo | 24/7 | | Amazon | `AMZNon` | Company | Ondo | 24/7 | | AMC Entertainment | `AMCon` | Company | Ondo | Market hours | | AMD | `AMDon` | Company | Ondo | 24/7 | | American Airlines Group | `AALon` | Company | Ondo | 24/5 | | American Express | `AXPon` | Company | Ondo | 24/5 | | AMETEK | `AMEon` | Company | Ondo | Extended hours | | Amgen | `AMGNon` | Company | Ondo | 24/5 | | Amkor Technology | `AMKRon` | Company | Ondo | 24/5 | | Amphenol | `APHon` | Company | Ondo | 24/5 | | Analog Devices | `ADIon` | Company | Ondo | Extended hours | | Apollo Global Management | `APOon` | Company | Ondo | 24/5 | | Apple | `AAPLon` | Company | Ondo | 24/7 | | Applied Digital | `APLDon` | Company | Ondo | 24/5 | | Applied Materials | `AMATon` | Company | Ondo | 24/5 | | Applied Optoelectronics | `AAOIon` | Company | Ondo | 24/5 | | AppLovin | `APPon` | Company | Ondo | 24/5 | | Archer Aviation | `ACHRon` | Company | Ondo | Extended hours | | Arista Networks | `ANETon` | Company | Ondo | 24/5 | | Arm Holdings plc | `ARMon` | Company | Ondo | 24/7 | | Arqit Quantum | `ARQQon` | Company | Ondo | Market hours | | Arteris | `AIPon` | Company | Ondo | Market hours | | ASML Holding NV | `ASMLon` | Company | Ondo | 24/5 | | AST SpaceMobile | `ASTSon` | Company | Ondo | 24/5 | | Astera Labs | `ALABon` | Company | Ondo | 24/5 | | AT\&T | `Ton` | Company | Ondo | 24/5 | | Atkore | `ATKRon` | Company | Ondo | Market hours | | Aurora Innovation | `AURon` | Company | Ondo | Regular hours and post-market | | Axcelis Technologies | `ACLSon` | Company | Ondo | Pre-market and regular hours | | AXT | `AXTIon` | Company | Ondo | 24/5 | | B2Gold | `BTGon` | Company | Ondo | Market hours | | Baidu | `BIDUon` | Company | Ondo | 24/5 | | Bank of America | `BACon` | Company | Ondo | 24/5 | | BigBear.ai Holdings | `BBAIon` | Company | Ondo | Extended hours | | Bilibili | `BILIon` | Company | Ondo | 24/5 | | Bitdeer Technologies | `BTDRon` | Company | Ondo | Pre-market and regular hours | | BitGo Holdings | `BTGOon` | Company | Ondo | Extended hours | | BitMine Immersion Technologies | `BMNRon` | Company | Ondo | 24/5 | | Blackrock, Inc. | `BLKon` | Company | Ondo | 24/5 | | Block | `XYZon` | Company | Ondo | Regular hours and overnight | | Bloom Energy | `BEon` | Company | Ondo | 24/5 | | Boeing | `BAon` | Company | Ondo | 24/5 | | Broadcom | `AVGOon` | Company | Ondo | 24/7 | | Bullish | `BLSHon` | Company | Ondo | Market hours | | Cameco | `CCJon` | Company | Ondo | 24/5 | | Camtek | `CAMTon` | Company | Ondo | Pre-market and regular hours | | Capital One | `COFon` | Company | Ondo | 24/5 | | Capricor Therapeutics | `CAPRon` | Company | Ondo | Market hours | | Carvana | `CVNAon` | Company | Ondo | 24/5 | | Caterpillar | `CATon` | Company | Ondo | 24/5 | | Celestica | `CLSon` | Company | Ondo | 24/5 | | Cerebras Systems | `CBRSon` | Company | Ondo | 24/5 | | CEVA | `CEVAon` | Company | Ondo | Market hours | | Charles Schwab | `SCHWon` | Company | Ondo | Regular hours and overnight | | Chevron | `CVXon` | Company | Ondo | 24/5 | | Chipotle | `CMGon` | Company | Ondo | 24/5 | | Ciena | `CIENon` | Company | Ondo | 24/5 | | Cipher Mining | `CIFRon` | Company | Ondo | Extended hours | | Circle Internet Group | `CRCLon` | Company | Ondo | 24/7 | | Cisco Systems | `CSCOon` | Company | Ondo | 24/5 | | Citigroup | `Con` | Company | Ondo | 24/5 | | Cleveland-Cliffs | `CLFon` | Company | Ondo | Extended hours | | Cloudflare | `NETon` | Company | Ondo | 24/5 | | Coca-Cola | `KOon` | Company | Ondo | 24/5 | | Coherent | `COHRon` | Company | Ondo | 24/5 | | Cohu | `COHUon` | Company | Ondo | Market hours | | Coinbase | `COINon` | Company | Ondo | 24/7 | | ConocoPhillips | `COPon` | Company | Ondo | Extended hours | | Constellation Energy | `CEGon` | Company | Ondo | 24/5 | | Core Scientific | `CORZon` | Company | Ondo | 24/5 | | CoreWeave | `CRWVon` | Company | Ondo | 24/5 | | Corning | `GLWon` | Company | Ondo | 24/7 | | Costco | `COSTon` | Company | Ondo | 24/5 | | Coupang | `CPNGon` | Company | Ondo | Extended hours | | Credo Technology Group Holding | `CRDOon` | Company | Ondo | 24/5 | | CrowdStrike | `CRWDon` | Company | Ondo | 24/5 | | D-Wave Quantum | `QBTSon` | Company | Ondo | 24/5 | | Deere | `DEon` | Company | Ondo | Extended hours | | Defiance Quantum ETF | `QTUMon` | ETF | Ondo | 24/5 | | Dell Technologies | `DELLon` | Company | Ondo | 24/5 | | Denison Mines | `DNNon` | Company | Ondo | Market hours | | Digi Power X | `DGXXon` | Company | Ondo | Extended hours | | Direxion Daily Semi Bear 3X ETF | `SOXSon` | ETF | Ondo | 24/5 | | Direxion Daily Semi Bull 3X ETF | `SOXLon` | ETF | Ondo | Extended hours | | Disney | `DISon` | Company | Ondo | 24/5 | | DoorDash | `DASHon` | Company | Ondo | 24/5 | | Eaton | `ETNon` | Company | Ondo | 24/5 | | Eli Lilly | `LLYon` | Company | Ondo | 24/5 | | Emerson Electric | `EMRon` | Company | Ondo | Market hours | | Enbridge | `ENBon` | Company | Ondo | Extended hours | | Energy Fuels | `UUUUon` | Company | Ondo | 24/5 | | Enlivex Therapeutics | `ENLVon` | Company | Ondo | Market hours | | Enphase Energy | `ENPHon` | Company | Ondo | 24/5 | | Entegris | `ENTGon` | Company | Ondo | Pre-market and regular hours | | EQT | `EQTon` | Company | Ondo | Extended hours | | Equinix | `EQIXon` | Company | Ondo | 24/5 | | Exodus Movement | `EXODon` | Company | Ondo | Market hours | | Extreme Networks | `EXTRon` | Company | Ondo | Market hours | | Exxon Mobil | `XOMon` | Company | Ondo | 24/5 | | Fabrinet | `FNon` | Company | Ondo | 24/5 | | Fidelity Solana Fund | `FSOLon` | Fund | Ondo | Extended hours | | Figma | `FIGon` | Company | Ondo | 24/5 | | Figure Technology Solutions | `FIGRon` | Company | Ondo | Market hours | | First Majestic Silver | `AGon` | Company | Ondo | 24/5 | | First Trust NASDAQ Cybersecurity ETF | `CIBRon` | ETF | Ondo | Pre-market, regular hours, and overnight | | Flex | `FLEXon` | Company | Ondo | Extended hours | | Fluence Energy | `FLNCon` | Company | Ondo | 24/5 | | Ford Motor | `Fon` | Company | Ondo | 24/5 | | Forgent Power Solutions | `FPSon` | Company | Ondo | Pre-market and regular hours | | FormFactor | `FORMon` | Company | Ondo | 24/5 | | Franklin Focused Growth ETF | `FFOGon` | ETF | Ondo | Market hours | | Franklin Income Equity Focus ETF | `INCEon` | ETF | Ondo | Market hours | | Franklin US Large Cap Multifactor Index ETF | `FLQLon` | ETF | Ondo | Market hours | | Freeport-McMoRan | `FCXon` | Company | Ondo | 24/5 | | FuelCell Energy | `FCELon` | Company | Ondo | 24/5 | | Fundrise Innovation Fund | `VCXon` | Fund | Ondo | Extended hours | | Futu Holdings | `FUTUon` | Company | Ondo | 24/5 | | Galaxy Digital | `GLXYon` | Company | Ondo | Pre-market, regular hours, and overnight | | GameStop | `GMEon` | Company | Ondo | 24/7 | | GE Vernova | `GEVon` | Company | Ondo | 24/5 | | Gemini Space Station | `GEMIon` | Company | Ondo | Market hours | | Generac Holdings | `GNRCon` | Company | Ondo | Extended hours | | General Dynamics | `GDon` | Company | Ondo | Regular hours and post-market | | General Electric | `GEon` | Company | Ondo | 24/5 | | Global X Artificial Intelligence & Technology ETF | `AIQon` | ETF | Ondo | Market hours | | Global X Blockchain ETF | `BKCHon` | ETF | Ondo | Pre-market, regular hours, and overnight | | Global X Data Center & Digital Infrastructure ETF | `DTCRon` | ETF | Ondo | Extended hours | | Global X Defense Tech ETF | `SHLDon` | ETF | Ondo | 24/5 | | Global X Lithium & Battery Tech ETF | `LITon` | ETF | Ondo | Extended hours | | Global X MSCI Argentina ETF | `ARGTon` | ETF | Ondo | Regular hours and overnight | | Global X NASDAQ 100 Covered Call ETF | `QYLDon` | ETF | Ondo | 24/5 | | Global X Robotics & Artificial Intelligence ETF | `BOTZon` | ETF | Ondo | 24/5 | | Global X S\&P 500 Covered Call ETF | `XYLDon` | ETF | Ondo | Extended hours | | Global X Space Tech ETF | `ORBXon` | ETF | Ondo | Market hours | | Global X US Infrastructure Development ETF | `PAVEon` | ETF | Ondo | 24/5 | | GlobalFoundries | `GFSon` | Company | Ondo | 24/5 | | Goldman Sachs | `GSon` | Company | Ondo | 24/5 | | Grab Holdings | `GRABon` | Company | Ondo | Market hours | | Grindr | `GRNDon` | Company | Ondo | Market hours | | Halliburton | `HALon` | Company | Ondo | 24/5 | | Harmonic | `HLITon` | Company | Ondo | Market hours | | Hesai Group | `HSAIon` | Company | Ondo | Pre-market, regular hours, and overnight | | Hewlett Packard Enterprise | `HPEon` | Company | Ondo | Pre-market, regular hours, and overnight | | Himax Technologies | `HIMXon` | Company | Ondo | Market hours | | Hims & Hers Health | `HIMSon` | Company | Ondo | 24/5 | | HIVE Digital Technologies | `HIVEon` | Company | Ondo | Extended hours | | Home Depot | `HDon` | Company | Ondo | Market hours | | Hubbell | `HUBBon` | Company | Ondo | 24/5 | | Huntington Ingalls Industries | `HIIon` | Company | Ondo | Pre-market and regular hours | | Hut 8 | `HUTon` | Company | Ondo | 24/5 | | Hyperliquid Strategies | `PURRon` | Company | Ondo | Market hours | | IBM | `IBMon` | Company | Ondo | 24/5 | | Ichor Holdings | `ICHRon` | Company | Ondo | Pre-market and regular hours | | Innodata | `INODon` | Company | Ondo | 24/5 | | Intel | `INTCon` | Company | Ondo | 24/7 | | International Seaways | `INSWon` | Company | Ondo | Pre-market and regular hours | | Intuit | `INTUon` | Company | Ondo | 24/5 | | Intuitive Machines | `LUNRon` | Company | Ondo | Regular hours, post-market, and overnight | | Intuitive Surgical | `ISRGon` | Company | Ondo | 24/5 | | Invesco PHLX Semiconductor ETF | `SOXQon` | ETF | Ondo | 24/5 | | Invesco QQQ | `QQQon` | ETF | Ondo | 24/7 | | IonQ | `IONQon` | Company | Ondo | 24/5 | | IREN | `IRENon` | Company | Ondo | 24/5 | | Iridium Communications | `IRDMon` | Company | Ondo | Pre-market and regular hours | | iShares A.I. Innovation and Tech Active ETF | `BAIon` | ETF | Ondo | Extended hours | | iShares Bitcoin Trust | `IBITon` | Trust | Ondo | 24/7 | | iShares China Large-Cap ETF | `FXIon` | ETF | Ondo | 24/5 | | iShares Core MSCI EAFE ETF | `IEFAon` | ETF | Ondo | 24/5 | | iShares Core MSCI Emerging Markets ETF | `IEMGon` | ETF | Ondo | 24/5 | | iShares Core S\&P 500 ETF | `IVVon` | ETF | Ondo | 24/5 | | iShares Core S\&P MidCap ETF | `IJHon` | ETF | Ondo | 24/5 | | iShares Core S\&P Total US Stock Market ETF | `ITOTon` | ETF | Ondo | Extended hours | | iShares Defense Industrials Active ETF | `IDEFon` | ETF | Ondo | Market hours | | iShares Ethereum Trust ETF | `ETHAon` | ETF | Ondo | 24/7 | | iShares Expanded Tech-Software ETF | `IGVon` | ETF | Ondo | 24/5 | | iShares International Country Rotation Active ETF | `COROon` | ETF | Ondo | Pre-market and regular hours | | iShares Large Cap Core Active ETF | `BLCRon` | ETF | Ondo | Pre-market and regular hours | | iShares MSCI Brazil ETF | `EWZon` | ETF | Ondo | Extended hours | | iShares MSCI Chile ETF | `ECHon` | ETF | Ondo | Pre-market and regular hours | | iShares MSCI EAFE ETF | `EFAon` | ETF | Ondo | 24/5 | | iShares MSCI EAFE Value ETF | `EFVon` | ETF | Ondo | Pre-market, regular hours, and overnight | | iShares MSCI Emerging Markets ETF | `EEMon` | ETF | Ondo | 24/5 | | iShares MSCI India ETF | `INDAon` | ETF | Ondo | 24/5 | | iShares MSCI Japan ETF | `EWJon` | ETF | Ondo | 24/5 | | iShares MSCI South Korea ETF | `EWYon` | ETF | Ondo | 24/5 | | iShares Russell 1000 Growth ETF | `IWFon` | ETF | Ondo | 24/5 | | iShares Russell 2000 ETF | `IWMon` | ETF | Ondo | 24/5 | | iShares Russell 2000 Value ETF | `IWNon` | ETF | Ondo | 24/5 | | iShares S\&P Small-Cap 600 Value ETF | `IJSon` | ETF | Ondo | 24/5 | | iShares Semiconductor ETF | `SOXXon` | ETF | Ondo | 24/5 | | iShares Systematic Alternatives Active ETF | `IALTon` | ETF | Ondo | Market hours | | iShares US Aerospace and Defense ETF | `ITAon` | ETF | Ondo | 24/5 | | iShares US Equity Factor Rotation Active ETF | `DYNFon` | ETF | Ondo | 24/5 | | iShares US Industry Rotation Active ETF | `INROon` | ETF | Ondo | Market hours | | iShares US Technology ETF | `IYWon` | ETF | Ondo | 24/5 | | Jabil | `JBLon` | Company | Ondo | 24/5 | | JD.com | `JDon` | Company | Ondo | 24/5 | | Johnson & Johnson | `JNJon` | Company | Ondo | 24/5 | | JPMorgan Chase | `JPMon` | Company | Ondo | 24/5 | | Kanzhun | `BZon` | Company | Ondo | Market hours | | Keel Infrastructure | `KEELon` | Company | Ondo | 24/5 | | Keysight Technologies | `KEYSon` | Company | Ondo | 24/5 | | KLA | `KLACon` | Company | Ondo | 24/5 | | Kopin | `KOPNon` | Company | Ondo | Market hours | | KraneShares CSI China Internet ETF | `KWEBon` | ETF | Ondo | 24/5 | | Lam Research | `LRCXon` | Company | Ondo | Extended hours | | Lattice Semiconductor | `LSCCon` | Company | Ondo | Pre-market and regular hours | | Leonardo DRS | `DRSon` | Company | Ondo | Market hours | | Li Auto | `LIon` | Company | Ondo | Regular hours and overnight | | LightPath Technologies | `LPTHon` | Company | Ondo | Market hours | | Lightwave Logic | `LWLGon` | Company | Ondo | Extended hours | | Lincoln Electric | `LECOon` | Company | Ondo | Regular hours and post-market | | Linde plc | `LINon` | Company | Ondo | 24/5 | | Lockheed | `LMTon` | Company | Ondo | 24/5 | | Lowe's | `LOWon` | Company | Ondo | Market hours | | Lumentum Holdings | `LITEon` | Company | Ondo | 24/5 | | MACOM Technology Solutions Holdings | `MTSIon` | Company | Ondo | 24/5 | | MARA Holdings | `MARAon` | Company | Ondo | 24/5 | | Marvell Technology | `MRVLon` | Company | Ondo | 24/7 | | MasTec | `MTZon` | Company | Ondo | Market hours | | Mastercard | `MAon` | Company | Ondo | 24/5 | | MaxLinear | `MXLon` | Company | Ondo | 24/5 | | McDonald's | `MCDon` | Company | Ondo | 24/5 | | MercadoLibre | `MELIon` | Company | Ondo | 24/5 | | Merck | `MRKon` | Company | Ondo | 24/5 | | Meta Platforms | `METAon` | Company | Ondo | 24/7 | | Methode Electronics | `MEIon` | Company | Ondo | Market hours | | Micron Technology | `MUon` | Company | Ondo | 24/7 | | Microsoft | `MSFTon` | Company | Ondo | 24/7 | | MicroStrategy | `MSTRon` | Company | Ondo | 24/7 | | MKS Inc. | `MKSIon` | Company | Ondo | Extended hours | | Mobileye Global | `MBLYon` | Company | Ondo | Market hours | | Moderna | `MRNAon` | Company | Ondo | Extended hours | | MP Materials | `MPon` | Company | Ondo | 24/5 | | MYR Group | `MYRGon` | Company | Ondo | Market hours | | NANO Nuclear Energy | `NNEon` | Company | Ondo | Extended hours | | Navitas Semiconductor | `NVTSon` | Company | Ondo | 24/5 | | Nebius Group | `NBISon` | Company | Ondo | 24/5 | | NetEase | `NTESon` | Company | Ondo | Market hours | | Netflix | `NFLXon` | Company | Ondo | 24/5 | | Newmont | `NEMon` | Company | Ondo | 24/5 | | NextEra Energy | `NEEon` | Company | Ondo | Market hours | | Nike | `NKEon` | Company | Ondo | 24/5 | | NIO | `NIOon` | Company | Ondo | Extended hours | | nLIGHT | `LASRon` | Company | Ondo | Extended hours | | Nokia | `NOKon` | Company | Ondo | 24/5 | | Nordic American Tankers | `NATon` | Company | Ondo | Market hours | | Northrop Grumman | `NOCon` | Company | Ondo | 24/5 | | Nova | `NVMIon` | Company | Ondo | Extended hours | | Novo Nordisk | `NVOon` | Company | Ondo | 24/5 | | Nucor | `NUEon` | Company | Ondo | Extended hours | | NuScale Power | `SMRon` | Company | Ondo | 24/5 | | nVent Electric | `NVTon` | Company | Ondo | Extended hours | | NVIDIA | `NVDAon` | Company | Ondo | 24/7 | | Occidental Petroleum | `OXYon` | Company | Ondo | Extended hours | | Oceaneering International | `OIIon` | Company | Ondo | Market hours | | Okeanis Eco Tankers | `ECOon` | Company | Ondo | Pre-market, regular hours, and overnight | | Oklo | `OKLOon` | Company | Ondo | 24/5 | | ON Semiconductor | `ONon` | Company | Ondo | Market hours | | Ondas Holdings | `ONDSon` | Company | Ondo | Extended hours | | Onto Innovation | `ONTOon` | Company | Ondo | Extended hours | | Opendoor Technologies | `OPENon` | Company | Ondo | Market hours | | Opera | `OPRAon` | Company | Ondo | Market hours | | Oracle | `ORCLon` | Company | Ondo | 24/7 | | Oscar Health | `OSCRon` | Company | Ondo | Market hours | | Ouster | `OUSTon` | Company | Ondo | Extended hours | | Palantir Technologies | `PLTRon` | Company | Ondo | 24/5 | | Palo Alto Networks | `PANWon` | Company | Ondo | 24/5 | | PayPal | `PYPLon` | Company | Ondo | 24/5 | | PDD Holdings | `PDDon` | Company | Ondo | 24/5 | | Penguin Solutions | `PENGon` | Company | Ondo | Market hours | | PepsiCo | `PEPon` | Company | Ondo | 24/5 | | Petrobras | `PBRon` | Company | Ondo | 24/5 | | Pfizer | `PFEon` | Company | Ondo | 24/5 | | PG\&E | `PCGon` | Company | Ondo | Market hours | | Pinterest | `PINSon` | Company | Ondo | Extended hours | | Planet Labs | `PLon` | Company | Ondo | 24/5 | | Plug Power | `PLUGon` | Company | Ondo | Extended hours | | Powell Industries | `POWLon` | Company | Ondo | Extended hours | | Power Integrations | `POWIon` | Company | Ondo | Market hours | | Primoris Services | `PRIMon` | Company | Ondo | Regular hours and post-market | | Procter & Gamble | `PGon` | Company | Ondo | 24/5 | | ProShares Short QQQ | `PSQon` | ETF | Ondo | 24/5 | | ProShares UltraPro QQQ | `TQQQon` | ETF | Ondo | 24/7 | | ProShares UltraPro Short QQQ | `SQQQon` | ETF | Ondo | Extended hours | | Qualcomm | `QCOMon` | Company | Ondo | 24/5 | | Quanta Services | `PWRon` | Company | Ondo | 24/5 | | Quantum Computing | `QUBTon` | Company | Ondo | Regular hours and overnight | | Rambus | `RMBSon` | Company | Ondo | 24/5 | | REalloys | `ALOYon` | Company | Ondo | Market hours | | Reddit | `RDDTon` | Company | Ondo | 24/5 | | Redwire | `RDWon` | Company | Ondo | Regular hours, post-market, and overnight | | Regeneron Pharmaceuticals | `REGNon` | Company | Ondo | 24/5 | | Rigetti Computing | `RGTIon` | Company | Ondo | 24/5 | | Riot Platforms | `RIOTon` | Company | Ondo | 24/5 | | Rivian Automotive | `RIVNon` | Company | Ondo | 24/5 | | Robinhood Markets | `HOODon` | Company | Ondo | 24/5 | | RoboStrategy | `BOTon` | Company | Ondo | Market hours | | Rocket Lab | `RKLBon` | Company | Ondo | 24/5 | | Rockwell Automation | `ROKon` | Company | Ondo | Extended hours | | Roundhill Memory ETF | `DRAMon` | ETF | Ondo | 24/7 | | RTX | `RTXon` | Company | Ondo | Extended hours | | S\&P Global | `SPGIon` | Company | Ondo | 24/5 | | Salesforce | `CRMon` | Company | Ondo | 24/5 | | SanDisk | `SNDKon` | Company | Ondo | 24/7 | | SAP | `SAPon` | Company | Ondo | 24/5 | | Scorpio Tankers | `STNGon` | Company | Ondo | Pre-market and regular hours | | Seagate | `STXon` | Company | Ondo | 24/5 | | ServiceNow | `NOWon` | Company | Ondo | 24/5 | | SharpLink Gaming | `SBETon` | Company | Ondo | 24/5 | | Shopify | `SHOPon` | Company | Ondo | 24/5 | | SK Hynix | `SKHYon` | Company | Ondo | 24/7 | | Skyworks Solutions | `SWKSon` | Company | Ondo | Extended hours | | SLB | `SLBon` | Company | Ondo | Extended hours | | Snap | `SNAPon` | Company | Ondo | Market hours | | Snowflake | `SNOWon` | Company | Ondo | 24/5 | | SoFi Technologies | `SOFIon` | Company | Ondo | 24/5 | | SolarEdge Technologies | `SEDGon` | Company | Ondo | Market hours | | SoundHound AI | `SOUNon` | Company | Ondo | 24/5 | | Southern | `SOon` | Company | Ondo | Market hours | | Southern Copper | `SCCOon` | Company | Ondo | 24/5 | | SpaceX | `SPCXon` | Company | Ondo | 24/7 | | SPDR S\&P 500 ETF | `SPYon` | ETF | Ondo | 24/7 | | Spotify | `SPOTon` | Company | Ondo | 24/5 | | Starbucks | `SBUXon` | Company | Ondo | 24/5 | | Steel Dynamics | `STLDon` | Company | Ondo | Pre-market and regular hours | | STMicroelectronics | `STMon` | Company | Ondo | 24/5 | | Super Micro Computer | `SMCIon` | Company | Ondo | 24/5 | | Symbotic | `SYMon` | Company | Ondo | 24/5 | | T-Mobile US | `TMUSon` | Company | Ondo | Extended hours | | Taiwan Semiconductor Manufacturing | `TSMon` | Company | Ondo | 24/7 | | Talen Energy | `TLNon` | Company | Ondo | Market hours | | TaskUs | `TASKon` | Company | Ondo | Market hours | | TE Connectivity | `TELon` | Company | Ondo | Extended hours | | Teekay Tankers | `TNKon` | Company | Ondo | Market hours | | Teradyne | `TERon` | Company | Ondo | 24/5 | | Terawulf | `WULFon` | Company | Ondo | Market hours | | Tesla | `TSLAon` | Company | Ondo | 24/7 | | Texas Instruments | `TXNon` | Company | Ondo | Extended hours | | Thermo Fisher Scientific | `TMOon` | Company | Ondo | Extended hours | | Tower Semiconductor | `TSEMon` | Company | Ondo | 24/5 | | Toyota | `TMon` | Company | Ondo | 24/5 | | Trane Technologies | `TTon` | Company | Ondo | 24/5 | | Trip.com Group | `TCOMon` | Company | Ondo | Extended hours | | Tsakos Energy Navigation | `TENon` | Company | Ondo | Regular hours and overnight | | TTM Technologies | `TTMIon` | Company | Ondo | 24/5 | | Uber | `UBERon` | Company | Ondo | 24/5 | | Ultra Clean Holdings | `UCTTon` | Company | Ondo | Pre-market and regular hours | | Union Pacific Corporation | `UNPon` | Company | Ondo | 24/5 | | United Microelectronics | `UMCon` | Company | Ondo | Pre-market, regular hours, and overnight | | United States Antimony | `UAMYon` | Company | Ondo | Extended hours | | UnitedHealth | `UNHon` | Company | Ondo | 24/5 | | Uranium Energy | `UECon` | Company | Ondo | Pre-market and regular hours | | USA Rare Earth | `USARon` | Company | Ondo | 24/5 | | VanEck Oil Services ETF | `OIHon` | ETF | Ondo | Extended hours | | Vanguard Energy ETF | `VDEon` | ETF | Ondo | Extended hours | | Vanguard Real Estate ETF | `VNQon` | ETF | Ondo | 24/5 | | Vanguard Total Stock Market ETF | `VTIon` | ETF | Ondo | 24/5 | | Vanguard Value ETF | `VTVon` | ETF | Ondo | Extended hours | | VeriSign | `VRSNon` | Company | Ondo | Regular hours and post-market | | Verizon | `VZon` | Company | Ondo | 24/5 | | Vertex Pharmaceuticals | `VRTXon` | Company | Ondo | 24/5 | | Vertiv | `VRTon` | Company | Ondo | 24/5 | | Vicor | `VICRon` | Company | Ondo | Extended hours | | VinFast Auto | `VFSon` | Company | Ondo | Market hours | | Visa | `Von` | Company | Ondo | 24/5 | | Vishay Intertechnology | `VSHon` | Company | Ondo | Pre-market and regular hours | | Vishay Precision Group | `VPGon` | Company | Ondo | Pre-market and regular hours | | Vistra | `VSTon` | Company | Ondo | Extended hours | | Walmart | `WMTon` | Company | Ondo | 24/5 | | Waste Management | `WMon` | Company | Ondo | Regular hours, post-market, and overnight | | Wells Fargo | `WFCon` | Company | Ondo | 24/5 | | WESCO International | `WCCon` | Company | Ondo | Regular hours and post-market | | Western Digital | `WDCon` | Company | Ondo | 24/5 | | Westlake | `WLKon` | Company | Ondo | Pre-market and regular hours | | WhiteFiber | `WYFIon` | Company | Ondo | Pre-market and regular hours | | Williams | `WMBon` | Company | Ondo | Pre-market and regular hours | | WisdomTree US Quality Dividend Growth Fund | `DGRWon` | Fund | Ondo | Market hours | | Wolfspeed | `WOLFon` | Company | Ondo | 24/5 | | Worthington Steel | `WSon` | Company | Ondo | Market hours | > **[Next: Fixed income](/assets/fixed-income)** > > Tokenized treasuries, credit, and other yield-bearing assets. # Fixed income Source: https://docs.passage.coinlist.co/assets/fixed-income Every tokenized treasury, bond, and credit product in the Passage catalog, with ticker and issuer. Fixed income covers assets that pay a return over time, from US Treasuries through corporate credit and securitized products. See [Asset catalog](/assets/catalog) for a primer on the asset class, and [Asset issuers](/assets/partners) for what ownership of an Ondo token actually means. > [!NOTE] > > The catalog below reflects Ondo's published assets as of July 22, 2026. For current > availability, retrieve the [latest catalog](https://github.com/ondoprotocol/ondo-global-markets-token-list) > at runtime. > > The **Trading window** column shows when users can buy and sell each asset, as of > October 22, 2026. See [Trading windows](/assets/catalog#trading-windows) for what each one > means, and [status.ondo.finance/market](https://status.ondo.finance/market) for live status. ## Assets 30 tokenized fixed income and yield-bearing assets. The type column describes the instrument itself: **Company** for shares in a single company, **ETF**, **Fund**, or **Trust** for pooled vehicles that hold a basket on your behalf, and **Preferred** for preferred shares. | Asset | Ticker | Type | Issued by | Trading window | | - | - | - | - | - | | AB Ultra Short Income ETF | `YEARon` | ETF | Ondo | Pre-market and regular hours | | Franklin High Yield Corporate ETF | `FLHYon` | ETF | Ondo | Market hours | | iBoxx \$ High Yield Corporate Bond ETF | `HYGon` | ETF | Ondo | 24/5 | | iShares 0-3 Month Treasury Bond ETF | `SGOVon` | ETF | Ondo | 24/5 | | iShares 1-3 Year Treasury Bond ETF | `SHYon` | ETF | Ondo | 24/5 | | iShares 20+ Year Treasury Bond ETF | `TLTon` | ETF | Ondo | 24/5 | | iShares 3-7 Year Treasury Bond ETF | `IEIon` | ETF | Ondo | 24/5 | | iShares 7-10 Year Treasury Bond ETF | `IEFon` | ETF | Ondo | 24/5 | | iShares Aaa - A Rated Corporate Bond ETF | `QLTAon` | ETF | Ondo | Pre-market and regular hours | | iShares AAA CLO Active ETF | `CLOAon` | ETF | Ondo | Market hours | | iShares Core US Aggregate Bond ETF | `AGGon` | ETF | Ondo | 24/5 | | iShares Euro High Yield Corporate Bond USD Hedged ETF | `EUHYon` | ETF | Ondo | Pre-market and regular hours | | iShares Flexible Income Active ETF | `BINCon` | ETF | Ondo | Extended hours | | iShares Floating Rate Loan Active ETF | `BRLNon` | ETF | Ondo | Extended hours | | iShares Global Government Bond USD Hedged Active ETF | `GGOVon` | ETF | Ondo | Pre-market and regular hours | | iShares High Yield Active ETF | `BRHYon` | ETF | Ondo | Pre-market, regular hours, and overnight | | iShares High Yield Corporate Bond BuyWrite Strategy ETF | `HYGWon` | ETF | Ondo | Market hours | | iShares Investment Grade Systematic Bond ETF | `IGEBon` | ETF | Ondo | Pre-market and regular hours | | iShares J.P. Morgan EM Local Currency Bond ETF | `LEMBon` | ETF | Ondo | Market hours | | iShares Securitized Income Active ETF | `SECUon` | ETF | Ondo | Market hours | | iShares Systematic Bond ETF | `SYSBon` | ETF | Ondo | Market hours | | iShares TIPS Bond ETF | `TIPon` | ETF | Ondo | 24/5 | | iShares Total Return Active ETF | `BRTRon` | ETF | Ondo | Pre-market and regular hours | | Janus Henderson AAA CLO ETF | `JAAAon` | ETF | Ondo | Extended hours | | PIMCO 0-5 Year High Yield Corporate Bond Index ETF | `HYSon` | ETF | Ondo | 24/5 | | SPDR Bloomberg 1-3 Month T-Bill ETF | `BILon` | ETF | Ondo | 24/5 | | Strategy Stretch Preferred | `STRCon` | Preferred | Ondo | 24/7 | | Strive Preferred | `SATAon` | Preferred | Ondo | Extended hours | | VanEck CLO ETF | `CLOIon` | ETF | Ondo | Market hours | | WisdomTree Floating Rate Treasury Fund | `USFRon` | Fund | Ondo | 24/5 | > **[Next: Commodities](/assets/commodities)** > > Tokenized metals, energy, and broad commodity exposure. # Asset issuers Source: https://docs.passage.coinlist.co/assets/partners What a token represents and what your users can do with it, issuer by issuer. What a token actually represents, and what your users can do with it after they buy, both depend on who issued it. Two tokens tracking the same stock can carry meaningfully different rights depending on which platform issued them, so each issuer has its own page covering its ownership model alongside the lifecycle of its assets. ## Issuer profiles at a glance | Issuer | What they issue | Ownership model | Powers which use cases | | - | - | - | - | | [Superstate](/assets/partners/superstate) | Tokenized US equities (Opening Bell) | Direct ownership of the underlying equity | Tokenized stocks, permissioned lending/borrowing pools | | [Ondo](/assets/partners/ondo) | 400+ assets: equities, fixed income, commodities | Wrapped economic exposure | Tokenized stocks, yield, commodities | | [CoinList](/assets/partners/coinlist) | Token sales | Direct token allocation / ownership | Early stage crypto exposure | | Centrifuge (coming soon) | Tokenized funds from established managers including Janus Henderson and Apollo | Wrapped economic exposure | Yield, tokenized funds, DeFi collateral | | WisdomTree (coming soon) | US Treasury funds, index funds, and mutual funds | Direct ownership of the underlying funds | Yield, tokenized funds | > **[Superstate](/assets/partners/superstate)** > > Direct ownership > **[Ondo](/assets/partners/ondo)** > > Wrapped exposure > **[CoinList](/assets/partners/coinlist)** > > Token sales > **[Next: Wallet partners](/wallet-partners)** > > The other half of the partner story: who supplies the wallets your users sign with. # CoinList Source: https://docs.passage.coinlist.co/assets/partners/coinlist Token sales run by CoinList, embedded inside your app, with direct token allocation on each sale's terms. CoinList is the token sale partner. Where the other partners issue assets that trade continuously, CoinList offers run as discrete sales with their own window, terms, and eligibility. ## What it is Token sales. Passage embeds sales that CoinList already runs inside your app, so your users get access to new token offerings without leaving it. > [!NOTE] > > This is for surfacing sales CoinList already runs. If you are raising for your own token, see [Run your raise](/use-cases/run-your-raise). ## Ownership model Direct token allocation on the terms of each sale. Your users receive an allocation of the token itself, not a wrapper or a claim on an underlying security. Allocation follows whatever schedule the sale defines. ## How users buy Users contribute during the sale window, with eligibility set per sale rather than once across the catalog. A user who qualified for one offering will not necessarily qualify for the next. The contribution settles later on Passage's own schedule rather than in the same transaction, which is the main way this differs from the instant swaps used by [Superstate](/assets/partners/superstate) and [Ondo](/assets/partners/ondo). Offers carry a `type` field, and CoinList sales arrive as `coinlist::token_sale`. [`CheckoutContainer`](/sdk/checkout) routes on that and renders the SDK's own token-sale checkout: wallet, amount paid in a stablecoin the sale accepts, and review. `ClaimContainer` lists the user's participations in the sale and where each one stands. ## What users can do with it Receive distributions on the sale's configured schedule, including any vesting or lockups that apply. Sell the tokens through DeFi or exchanges. Stake the tokens on the network, where applicable. CoinList powers [token sales](/use-cases/token-sales). ## Build it > **[CoinList Token Sale](/sdk/invest-flow)** > > Approve funds and record a participation with `passage.tokenSale.execute`. > **[Track participations](/sdk/invest-flow#track-participations)** > > Read and create participations for a sale. # Ondo Source: https://docs.passage.coinlist.co/assets/partners/ondo A broad catalog of 400+ tokenized assets across equities, fixed income, and commodities. Ondo assets are only available to non-US investors. Ondo adds assets regularly, so treat the [Ondo token list](https://github.com/ondoprotocol/ondo-global-markets-token-list) as the source of truth rather than a fixed roster. ## What it is A broad catalog of 400+ assets, spanning [equities](/assets/equities), [fixed income](/assets/fixed-income), and [commodities](/assets/commodities). That covers single-company shares, index and sector funds, Treasuries and corporate credit, and physical metals and energy. Assets are issued as wrapped economic exposure. The asset holder has economic exposure to the underlying asset, but does not own the asset outright. The issuing entity owns the underlying asset and issues a claim against it to the investor. ## Ownership model Wrapped exposure. The token tracks the value of the underlying asset but confers fewer rights than direct share ownership. Practically, that means your users get the price exposure without the shareholder rights that come with a directly owned share. Where those rights matter to your users, [Superstate](/assets/partners/superstate) is a better partner. ## How users buy Tokens are minted directly from the issuer through an RFQ purchase flow. The user places an order and confirms the price before the purchase processes. Tokens and stablecoins settle in a single transaction. Unlike Superstate assets, Ondo assets are not allowlist-gated, so there is no wallet registration step before the purchase. ## What users can do with it Buy, sell, and hold it for exposure, and earn yield where the product accrues it. Ondo powers [tokenized stocks and funds](/use-cases/tokenized-assets), yield, and commodities. ## FAQ > **What does my user actually own?** > > Economic exposure, not title in the underlying asset. Ondo tokenized equities are backed 1:1 by securities at licensed US broker-dealers, issued by Ondo Global Markets (BVI) Limited through a bankruptcy-remote SPV with an independent director, overcollateralization, a third-party security agent, and daily attestations. > **Does one token equal one share?** > > Not always. Ondo stocks are total-return trackers, which means dividends are reinvested net of withholding taxes. The price typically matches the price of the stock exactly on the day Ondo issues it, but over time, as dividends are reinvested, the price drifts to represent more than one share and stops tracking the stock. > > This matters for how you communicate price to users. Do not use traditional market data for the stock. Use the official pricing from Ondo, or a provider such as CoinGecko. Scaled UI makes this look share-like on Solana and BNB Chain, but not on Ethereum. > **Do my users need to conduct KYC with Ondo directly?** > > No. Individual users do not need to complete KYC with Ondo. > > Compliance obligations differ based on your business model and structure. DEXs and self-custodial swaps may not require direct KYC on their users to transact in Ondo tokens. Other businesses may be obligated to perform KYC, which Passage supports. > > In all cases you are obligated to perform certain compliance functions and apply geographic restrictions, which Passage will help you support. Contact your Passage representative about the compliance model appropriate for your business. > **Which jurisdictions?** > > Ondo tokens are not available in the following jurisdictions: Afghanistan, Belarus, Crimea, Cuba, Donetsk People's Republic (DNR) Ukraine, Luhansk People's Republic (LNR) Ukraine, Kherson region Ukraine, Zaporizhzhia region Ukraine, Iran, Libya, Myanmar, North Korea (DPRK), Russia, Sevastopol Ukraine, Somalia, South Sudan, Sudan, Syria, United States (including states, territories, possessions, and federal districts), and Canada. > > There may be additional restrictions for specific tokens. Each offering outlines its full restricted list. > **How does a user buy?** > > Tokens are available through an RFQ purchase flow. Users place an order and then confirm the price before the purchase processes. Purchases can only be made in USDC. > > Tokens are generally minted directly via Ondo, available instantly and atomically. Tokens and stablecoins settle in a single transaction. Fractional tokens are supported. > > Because it is an RFQ system connected directly to Ondo Global Markets, it generally provides good pricing up to the individual token limits offered via the RFQ. > **What are the market hours?** > > Hours depend on the asset. On weekdays, Ondo follows the sessions of the US market from Sunday evening to Friday evening, US Eastern time: pre-market, regular hours, post-market, and overnight. About half of Ondo's assets trade in all four sessions, close to 24 hours a day, 5 days a week. The rest trade in fewer sessions, and some only during regular US market hours. > > A smaller set also trades over weekends and US market holidays, in Ondo's Off-Hours session. Users can buy and sell these assets through Passage whenever that session is open. They include NVIDIA (`NVDAon`), Tesla (`TSLAon`), Apple (`AAPLon`), and the S\&P 500 (`SPYon`). The **Trading window** column of [Equities](/assets/equities), [Fixed income](/assets/fixed-income), and [Commodities](/assets/commodities) shows each asset's hours and marks these as 24/7. See [Trading windows](/assets/catalog#trading-windows) for the full schedule. > > Liquidity is lower outside regular hours, especially on weekends. Spreads can be wider and the largest order smaller. A weekend asset can also pause for a while if it reaches its Off-Hours limit, until trading frees the limit up. Users should check the price quoted by the RFQ before they buy or sell. > > Trading pauses for a few minutes between sessions, during corporate actions on a ticker, and if risk limits trip. Live status for each asset, including the current weekend list, is at [status.ondo.finance/market](https://status.ondo.finance/market). > **Are there order maximums or minimums?** > > Each asset has different order sizing limits, visible in the offer details. The minimum is \$1. > **Can a user sell?** > > Yes. The selling flow is identical to the purchase flow: an atomic burn redeeming to USDC. > **Dividends?** > > Dividends are auto-reinvested net of withholding taxes, reflected as an increasing token balance on Solana (support coming soon) and as tracker value on Ethereum. There is no cash distribution. > **Voting rights?** > > Ondo token holders do not own the underlying stock, so they are not entitled to voting rights. Proxy voting may be available where Ondo enables it. > **Are the tokens transferable?** > > Yes, peer-to-peer and into DeFi protocols across Ethereum, BNB Chain, and Solana, and bridgeable to HyperEVM. There is no allowlisting on Ondo tokens. > **Can these assets be used in DeFi?** > > Yes, widely. Certain Ondo tokens may be used as collateral in lending, or for perps on Ondo's perp platform. AMM pools also exist, but liquidity is often very thin. Passage's Ondo swaps tend to have much better pricing at larger sizes. > **Do my users get tax documents?** > > No. Your users will not get tax documents from Passage or Ondo related to purchases and sales of Ondo tokens, dividends, or any other corporate actions. > **Why would a transaction fail?** > > The usual cause is timing. Each asset trades only in its own sessions, and trading pauses between sessions, during corporate actions on a given ticker, and if risk limits trip. A weekend asset also pauses when it reaches its Off-Hours limit. Live status is published at [status.ondo.finance/market](https://status.ondo.finance/market). Transfers are unaffected by any of this and keep working when mint and redeem are paused. > > Mint and redeem also require completed onboarding. Holding tokens does not make someone eligible to redeem, so a user who picked up tokens on a secondary market and never onboarded has no redemption path. Their only options are to keep holding or to sell on a secondary market where permitted. > **What if I end the integration?** > > Users keep and control their tokens. ## Build it > **[Ondo Swap](/sdk/ondo-swap)** > > The buy and sell paths used by Ondo assets. > **[Asset catalog](/assets/catalog)** > > Every asset Ondo issues, by asset class, with ticker and type. # Superstate Source: https://docs.passage.coinlist.co/assets/partners/superstate Tokenized US equities through Opening Bell. Each token represents direct ownership of the underlying share. Companies sell stock to individuals directly through Opening Bell, typically at a discount, or through IPOs. Each token represents direct ownership of the underlying share. ## What it is Users purchase shares directly from the company, for example Tesla or NVIDIA, often at a discount to the currently traded price. Your users hold an asset issued by the company directly, tokenized through Superstate. Superstate acts as the transfer agent and records the ownership both offchain and onchain. Superstate tokenized assets are direct ownership with full rights, not a wrapper or indirect economic exposure only. ## Ownership model Direct ownership. The token represents real ownership of the underlying share, so holding the token means owning the equity itself. Owners receive dividends directly and can vote their shares, and ownership is recorded in the name of the investor. This distinction may matter to your users. A Superstate token and an [Ondo](/assets/partners/ondo) token can track the same stock and still carry meaningfully different rights. Superstate equities are typically available to U.S. individuals, whereas Ondo equities are not. ## How users buy Direct issuance, minting from the issuer. The user pays a stablecoin and receives the tokenized share in the same transaction, with no separate settlement step. Superstate assets are allowlisted, so a user's wallet has to be registered against the offer before a swap or transfer can settle. This allowlisting is how ownership is recorded offchain. Passage provides all the transactions and flows for allowlist registration end to end, including proving the user controls the wallet and broadcasting the allowlist transaction where the contract requires one. ## What users can do with it Hold it, or use it in permissioned DeFi. The allowlists that gate Superstate assets are the same ones that make permissioned Uniswap pools and RWA lending markets available to your users, so these assets are not just static positions sitting in a wallet. Tokenized stock can also be redeemed directly for shares offline via Superstate. If your users want to send or transfer their shares after purchase, they will need to allowlist each new wallet. Allowlisting is once per wallet per offer, so a wallet cleared for one offer is not automatically cleared for another, and any transaction to a non-allowlisted wallet will fail. Superstate powers [tokenized stocks](/use-cases/tokenized-assets) and [permissioned DeFi pools](/use-cases/permissioned-defi-pools). ## FAQ > **What does my user actually own?** > > Real shares. Superstate is the SEC-registered transfer agent and records legal ownership onchain as tokens move. No wrappers, derivatives, or a separate share class. > **Who is the issuer of record?** > > The public company itself. Superstate is the transfer agent maintaining the registry across book-entry, tokenized, and DeFi-protocol holdings. > **Do my users need a separate Superstate account?** > > No, only a CoinList account. Passage KYC satisfies the requirement. > > To redeem for ordinary shares offchain, the user will need to complete that process with Superstate. > **What is the allowlist requirement?** > > A wallet must be allowlisted before it can hold tokenized shares, and supported networks vary by equity. Adding a wallet to the allowlist requires the user to complete KYC and some additional requirements, then sign a transaction onchain. > > Allowlisting is once per wallet per offer, so a wallet cleared for one offer is not automatically cleared for another. It can be completed as part of the purchase process, or independently per wallet for transfers. See [Allowlist a wallet](/sdk/swap-flow#step-3-allowlist-the-wallet). > **Which jurisdictions?** > > Different assets and offerings may have different eligibility requirements. In general, Superstate assets are available in most geographies including the U.S. OFAC-sanctioned countries are always restricted. Check the specific offering requirements for eligibility restrictions. > **How does a user buy?** > > Direct issuance, minting from the issuer. > **Is there a minimum?** > > Minimums are set by each issuing company and may differ from offer to offer. Minimums apply to direct issuance only. Secondary purchases on a supported DEX have no issuer-imposed floor. > **Can a user sell?** > > Yes, tokens can be sold via permissioned DeFi pools such as those offered by Uniswap. As of today, there are no live pools. > > Users can also convert the token into traditional equity via Superstate. > **Are there lock-ups?** > > No. > **Dividends and distributions?** > > Real dividends, paid out to the holder rather than reinvested. There are two routes, and the issuing company picks which one applies, so it can differ by asset. > > * **Onchain:** paid in USDC or another crypto asset, using the wallet information Superstate collects from investors. > * **Fiat:** the dividend is paid out in cash. Superstate coordinates with the company's existing transfer agent to make that happen. > **Can it be transferred out?** > > Yes, between allowlisted wallets, with restrictions enforced at the token level. Transactions or transfers between non-allowlisted wallets will fail onchain. > > We recommend adding a check to the onchain allowlist before allowing a user to transfer tokens. You can allowlist additional wallets through Passage for users without a purchase transaction. See [Allowlist a wallet](/sdk/swap-flow#step-3-allowlist-the-wallet). > > Users can also burn to book-entry and DRS-transfer to a traditional brokerage, which takes 2 to 3 business days. > **Do my users get tax documents?** > > Yes, if relevant to their holding period. Holders of Superstate tokenized equities directly own the underlying asset and receive dividends directly. The dividends are taxable, and tax documents are provided directly to the investor from Superstate, via the email associated with their Passage account. > > As part of onboarding to the allowlist, the user is required to submit tax documentation through Passage. For U.S. investors, this information is collected automatically as part of KYC. Non-U.S. investors are required to complete a W-8 form. > **Can these assets be used in DeFi?** > > Yes, but each pool needs to be specially configured because of the allowlist. Kamino pools exist on Solana and Aave pools exist on Ethereum. > > No permissioned Uniswap pools are live today. > **Why would a transaction fail?** > > Most commonly the wallet is not allowlisted for that offer. Allowlisting is per wallet per offer, so a wallet cleared for one Superstate offer is not automatically cleared for another. Transfers also require the receiving wallet to be allowlisted, so sending to an unverified address will fail. Restrictions are enforced at the token level, meaning the transaction reverts onchain rather than being blocked beforehand. > > On the sell side, a swap can fail because no DEX pool is live for that asset, or because the pool is too thin for the size. For direct issuance, purchases below an issuer's minimum will be rejected, and offerings can close once the size is reached. > **What if I end the integration?** > > Users keep the tokens in their own wallet and can hold or liquidate independently. ## Build it > **[Allowlist a wallet](/sdk/swap-flow#step-3-allowlist-the-wallet)** > > Register a user's wallet against the offer with `authorizeWallet` before they buy. > **[Superstate Swap](/sdk/swap-flow)** > > The purchase path used by Superstate assets. # React SDK changelog Source: https://docs.passage.coinlist.co/changelogs/react Release history for @passage-cl/react, formerly @coinlist-co/react > [!NOTE] > > This changelog covers the [`@passage-cl/react`](https://www.npmjs.com/package/@passage-cl/react) SDK. Up to v0.12.1 it was published as [`@coinlist-co/react`](https://www.npmjs.com/package/@coinlist-co/react). **v0.14.0** October 21, 2026 - The Centrifuge sell checkout, on-chain Centrifuge claims, and the coinlist\_account requirement This release completes the Centrifuge vault journey. `CheckoutContainer` now mounts a redemption checkout for `side="sell"`, and the SDK encodes claims on-chain itself instead of asking the API for calldata. The vault status reports each direction separately, and the API's refusals arrive as typed reasons. The requirements checklist knows the new `coinlist_account` requirement. > [!NOTE] > > Centrifuge is `@alpha`, outside the compatibility contract, so its breaking changes ship in a minor release. Nothing outside the Centrifuge types breaks. ### Breaking Changes #### Centrifuge claims are encoded by the SDK `passage.centrifuge.createClaim` and `passage.centrifuge.createClaimProceeds` are removed, with `CentrifugeVaultClaimTransaction` and `CentrifugeVaultClaimProceedsTransaction`. Their endpoints, `POST /v1/centrifuge/vault/claim` and `/claim-proceeds`, do not exist on the API. A claim is the vault proxy's own unauthenticated call, so `passage.centrifuge.claim` now calls the proxy's `deposit` or `redeem` from the wallet with the maximum amount, which claims everything claimable. No API request and no approval come first. | Before | After | | - | - | | `ClaimCentrifugeVaultParams` `{ wallet, chain, symbol, direction }` | `{ wallet, vault, direction }`, where `vault` is a `CentrifugeVault` | | `CentrifugeClaimPhase` `'preparing' \| 'awaiting-wallet' \| 'confirming'` | `'awaiting-wallet' \| 'confirming'` | | `CentrifugeClaimStepUi` `'preparing' \| 'awaiting-wallet' \| 'confirming'` | `'awaiting-wallet' \| 'confirming'` | | `CentrifugeClaimError` `{ step: 'prepare', reason: 'nothing-to-claim' \| 'frozen' \| 'generic' }` | `{ step: 'nothing-to-claim' }`. `frozen` and `generic` are gone | | `CentrifugeClaimResult.claimed: BlockchainAmount` | `settlement: CentrifugeClaimSettlement \| null` | | `CentrifugeVaultClaimed.claimed` (the `onClaimed` payload) | `settlement: CentrifugeClaimSettlement \| null` | | `CentrifugeClaimFailureUi` includes `'wallet-frozen'` | Removed | | `CentrifugeClaimDialogUi.amount` | `estimate` | `CentrifugeClaimSettlement` is `{ assets, shares }`, read from the `Deposited` or `Redeemed` event in the receipt. It is `null` only when the receipt cannot be decoded. **Migration:** ```ts theme={null} // Before const result = await passage.centrifuge.claim({ wallet, chain, symbol, direction: "deposit" }); if (result.type === "success") console.log(result.claimed); // After const result = await passage.centrifuge.claim({ wallet, vault, direction: "deposit" }); if (result.type === "success") console.log(result.settlement?.shares); ``` #### Centrifuge vault status reports each direction `CentrifugeVaultStatus` is now `{ chain, symbol, deposit, redeem, asOf }`. `deposit` and `redeem` are each a `CentrifugeDirectionState`: `'active'`, `'paused'` (it can come back) or `'stopped'` (permanent for that proxy on that chain). | Removed | Use instead | | - | - | | `vaultAddress`, `linked`, `permissioned`, `membershipValidUntil`, `halted`, `priceUpdatedAt` | Nothing. The API no longer reports them | | `orderability`, `CentrifugeOrderability`, `CentrifugeOrderReason`, `CentrifugeVaultReason` | `status.deposit` or `status.redeem` | **Migration:** ```ts theme={null} // Before const canBuy = status.orderability.type === "orderable"; // After const canBuy = status.deposit === "active"; const canSell = status.redeem === "active"; ``` #### Centrifuge checkout and claim types | Before | After | | - | - | | `CentrifugeBuyReviewUiState`, with `investAmount` | `CentrifugeReviewUiState`, with `amount` | | `CentrifugeBuyReviewUiEvent` | `CentrifugeReviewUiEvent` | | `CentrifugeOrderPlaced` `{ wallet, amount, transaction, txHash }` | `CentrifugeBuyOrderPlaced \| CentrifugeSellOrderPlaced`. Each has `side` and its own `transaction` | | `useCentrifugeBuyCheckoutViewModel` `onOrderPlaced(order: CentrifugeOrderPlaced)` | `onOrderPlaced(order: CentrifugeBuyOrderPlaced)` | | `CentrifugeOrderPlacedUiState` visible `outputAsset`, `totalCost` | `asset`, `amount`, `claims` | | `CentrifugeClaimActionUi` `{ type: 'blocked', reason }`, `CentrifugeClaimBlockedReasonUi` | Removed. Nothing about the vault blocks a claim | **Migration:** a `config["centrifuge::vault"].onOrderPlaced` handler now runs for both directions. Read `order.side` before `order.transaction`. ```ts theme={null} onOrderPlaced: (order) => { if (order.side === "buy") track("deposit", order.txHash); else track("redemption", order.txHash); }, ``` ### Added #### Centrifuge sell checkout `` for a `centrifuge::vault` offer now mounts a redemption checkout. Before, it rendered an empty container. * The steps are wallet, amount and review. A preselected wallet skips the wallet step, as on the buy side. * The amount is a number of the vault's share tokens, bounded by the wallet's balance. The offer's dollar minimum applies to deposits only. * Placing the order approves the vault proxy for the shares when the allowance is short, builds the request and broadcasts it. A redemption pays nothing yet: the fund fulfils it later, and the user claims the USDC in `ClaimContainer`. * The checkout blocks with "Redeeming is paused right now" when the vault's `redeem` direction is paused or stopped. * `config["centrifuge::vault"].onOrderPlaced` fires after the redemption request mines, with `order.side === "sell"`. * To build your own UI, use `useCentrifugeSellCheckoutViewModel` (`@alpha`) with `CentrifugeSellCheckoutUiState` and `CentrifugeSellCheckoutUiEvent`. | Method | Endpoint | | - | - | | `buildRedeemTransaction({ symbol, chain, walletAddress, amount })` | `POST /v1/centrifuge/vault/sell` | | `prepareSell`, `sell` (browser only) | Approve the share token, then the endpoint above, through the wallet | `passage.centrifuge.placeRequest` now broadcasts either a buy or a redeem transaction. #### Typed Centrifuge refusals When the API refuses to build a Centrifuge request, `prepareBuy`, `prepareSell`, `buy` and `sell` return `{ step: 'build-refused', reason }` instead of `build-transaction`. `reason` is a `CentrifugeRequestRefusal`: `'requirements-not-met'`, `'insufficient-balance'`, `'direction-paused'`, `'direction-stopped'`, `'vault-refused'` or `'no-proxy-on-chain'`. The checkout shows its own message for each. See [Errors](/sdk/errors). `ApproveThenBuildError` and `ApproveThenBuildResult` take this reason as an optional type parameter that defaults to `never`, so the Ondo error types are unchanged. #### Claim estimates Each claimable row and the claim dialog show a `~` estimate of what the claim pays, at the vault's spot price. After the claim mines, the dialog shows the exact amount from the receipt. `CentrifugeDepositPosition` gains `estimatedShares`, `CentrifugeRedeemPosition` gains `estimatedAssets`, and `CentrifugeClaimRowUi` gains `estimate`. #### `coinlist_account` requirement `RequirementType` gains `'coinlist_account'`. The checklist shows it as "CoinList Account", "Sign in with a CoinList account." The user meets it by signing in, so its action opens no page. Code with an exhaustive `switch` over `RequirementType` needs the case. See [Requirements](/sdk/requirements). ### Changed * **The Centrifuge buy checkout** blocks only when the vault's `deposit` direction is paused or stopped. Before, it also blocked on an unlinked, halted or unpermissioned vault, or a stale price. * **The Centrifuge claim card** no longer polls the vault status. Each row leads with what the claim pays, in that token's icon, and the claim dialog is titled with it ("Claiming \~964.12 deJTRSY"). * **The Centrifuge order-placed dialog** shows the amount invested or redeemed, the receiving wallet, and a notice to claim once the order is processed. ### Fixed * Centrifuge claims work. Before, both claim directions failed with a `404`. * A Centrifuge request whose signature went stale, because it expired or a claim moved the wallet's nonce, now reports `request-expired`, so placing it again builds a fresh one. **v0.13.0** October 19, 2026 - The SDK moves to @passage-cl/react, a smaller public API, the token-sale and Centrifuge checkouts, ClaimContainer, and session expiry handling > [!WARNING] > > **The SDK has moved to a new package: `@passage-cl/react`.** v0.13.0 and every later version are published only under the new name. `@coinlist-co/react` stops at v0.12.1, gets no further updates, and will be deprecated on npm. To upgrade, uninstall the old package, install the new one and update every import path. > > ```bash theme={null} > npm uninstall @coinlist-co/react > npm install @passage-cl/react > ``` > > | Before | After | > | - | - | > | `@coinlist-co/react` | `@passage-cl/react` | > | `@coinlist-co/react/universal` | `@passage-cl/react/universal` | > | `@coinlist-co/react/server` | `@passage-cl/react/server` | This release renames the SDK to Passage, in its package name and in its exported names. There are no deprecated aliases, so every app has to migrate. It also shrinks the public API to root Containers, their viewmodels, data hooks and namespaces, and the package now ships as ESM only. `CheckoutContainer` takes `side` as a prop and needs no `config`. It mounts the SDK's own CoinList token-sale checkout and a Centrifuge vault checkout, and honors a preselected wallet in every flow. The new `ClaimContainer` shows the second leg of an asynchronous offer. Session renewal is single-flight, and the new `onSessionExpired` tells you when a session ends. ### Breaking Changes #### The package is now `@passage-cl/react` The SDK is published as [`@passage-cl/react`](https://www.npmjs.com/package/@passage-cl/react). The `/universal` and `/server` entry points keep their subpaths. See the install commands and the table above. **Migration:** replace `@coinlist-co/react` with `@passage-cl/react` in `package.json` and in every import, then apply the renames below. #### Exported names are rebranded to Passage Every export that named the SDK after CoinList is renamed. The old names are gone. | Entry point | Before | After | | - | - | - | | `.` | `CoinListProvider`, `CoinListProviderProps` | `PassageProvider`, `PassageProviderProps` | | `.` | `useCoinList()`, `UseCoinListResult` | `usePassage()`, `UsePassageResult` | | `.` | `useCoinList().coinlist` | `usePassage().passage` | | `.` | `CoinListClient`, `createCoinListClient` | `PassageClient`, `createPassageClient` | | `.` | `CoinListClientInitializationError` | `PassageClientInitializationError` | | `.` | `CoinListStyleScope`, `CoinListStyleScopeProps` | `PassageStyleScope`, `PassageStyleScopeProps` | | `.` | `CoinListContextProvider` | `PassageProvider` (the alias is merged into the provider) | | `.` | `CoinListContext`, `CoinListContextValue` | No longer exported. Read the client with `usePassage()` | | `./server` | `CoinListServer`, `createCoinListServer` | `PassageServer`, `createPassageServer` | The field on the hook result is renamed too: `const { coinlist } = useCoinList()` becomes `const { passage } = usePassage()`. The members of the client and server are unchanged, so `coinlist.offers.list()` becomes `passage.offers.list()`. The provider-missing error now reads `usePassage() must be used within PassageProvider. Wrap your app with .` Names that mean CoinList the company keep the CoinList name. These include `CoinListSignInButton`, `CoinListSignInCardContainer`, the `CoinListTokenSale*` checkout and participation names, `passage.tokenSale`, the `coinlist::*` offer types, `ClientConfig.coinlistBaseUrl`, and the `coinlist.*` browser storage keys. **Migration:** a find-and-replace over your source, in this order: ```text theme={null} @coinlist-co/react -> @passage-cl/react createCoinListClient -> createPassageClient createCoinListServer -> createPassageServer CoinListClientInitializationError -> PassageClientInitializationError CoinListClient -> PassageClient CoinListServer -> PassageServer CoinListProvider -> PassageProvider UseCoinListResult -> UsePassageResult useCoinList -> usePassage CoinListStyleScope -> PassageStyleScope ``` Then rename the destructured `coinlist` field of `usePassage()` to `passage`. ```tsx theme={null} // Before import { CoinListProvider, useCoinList } from "@coinlist-co/react"; const { coinlist } = useCoinList(); await coinlist.offers.list(); // After import { PassageProvider, usePassage } from "@passage-cl/react"; const { passage } = usePassage(); await passage.offers.list(); ``` #### CSS class names and selectors are rebranded | Before | After | | - | - | | `.clco-sdk-root` (the scope class on every SDK component) | `.pcl-sdk-root` | | Tailwind prefix `clcosdk:` | `pclsdk:` | | `--clcosdk-*` theme variables | `--pclsdk-*` | | `clcosdk-on-light`, `clcosdk-on-dark`, `clcosdk-status-dot-ping` | `pclsdk-on-light`, `pclsdk-on-dark`, `pclsdk-status-dot-ping` | | `@keyframes clco-status-ping` | `@keyframes pcl-status-ping` | | Injected `