You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Status: canonical product catalog (Phase 2, October 2026).
This document describes what Suban offers today and what is intentionally not
yet offered. Status values are:
Testnet — implemented and exercised on Pi/Arc testnet; not a mainnet
financial commitment.
Implemented — code and tests exist; deployment is owner-managed.
Experimental — usable for integration work, but interfaces or economics may
change.
Planned — design only; do not depend on it.
1. Infrastructure products
1.1 Suban RPC
What
JSON-RPC access to Pi network state, transaction submission/status/history, preflight simulation and Soroban interaction
For
Wallets, DApps, SDKs, backend services
Interface
JSON-RPC :8000; internal admin :8001
Repository
suban-rpc
Status
Implemented; operator-managed
Limits
Admin API is internal-only. The Rust preflight simulation tests are gated while the host/fixture protocol mismatch is resolved; getLedgerEntries itself is served by the Go path and is supported. See suban-rpc/COMPATIBILITY.md.
1.2 Suban API (Horizon-compatible data access)
What
Cached, rate-limited REST wrapper around Pi Horizon with convenience endpoints and a raw proxy
For
Explorers, analytics, applications that need account/ledger/transaction/asset data
Interface
/api/v1/*, /horizon/*, /arc/*, /health, /metrics on :4000
Repository
Suban-api
Status
Implemented
Limits
Read-only; no signing. Upstream Horizon availability determines freshness.
1.3 Data platform (event-indexer)
What
Versioned index of Pi ledgers, transactions, operations, accounts and Suban contract events with historical query API
For
Explorers, analytics, applications that should not run a Pi node or their own ingestion pipeline
Implemented and tested; testnet/experimental deployment
Limits
Derived, replayable view. Account balances are snapshots or activity stubs. Public hostname, TLS and production backfill are not yet provisioned. Public keys/quotas and webhooks are implemented.
2. Market data and oracle products
2.1 Multi-asset price controller
What
Independent PI/USD, USDC/USD, USDT/USD and oUSD/USD aggregation with provenance, freshness, confidence and trust states
For
Applications, risk systems and contracts that need a defensible price rather than a single exchange ticker
Interface
/api/v1/assets, /api/v1/price?asset=..., /api/v1/history, /api/v1/trust, /api/v1/sources, /api/v1/health, /api/v1/methodology, /metrics on :3000
Repository
suban-controller
Status
Implemented
Limits
oUSD requires an explicit HTTP feed (OUSD_PRICE_URL); without it the asset returns 503 and is never assigned a fabricated peg. PI source weights and freshness policy are configuration, not universal truth.
2.2 On-chain oracle publication
What
Opt-in signing of healthy controller observations into the Soroban oracle contract (set_price)
For
On-chain consumers that need a per-asset price with confidence
Interface
Soroban oracle contract; configured by ORACLE_PUSH_ENABLED, ORACLE_CONTRACT_ID, ORACLE_ADMIN_SECRET and per-asset ORACLE_ASSET*
Repository
suban-controller + Suban/contracts/oracle
Status
Implemented; disabled by default
Limits
Only HEALTHY observations are pushed. Failed pushes do not advance the breaker reference. Arc→Stellar bridge work does not change this path.
2.3 Price history and statistics
What
Append-only SQLite observations plus window high, low, open, close and count; versioned TWAP and volatility
For
Charts, dashboards, audits and downstream analytics
30-day default retention; breaker observations are stored for audit but excluded from public stats. TWAP/volatility return 503 when no observations exist and label partial coverage.
2.4 Deterministic risk calculator
What
Versioned lending-risk formulas: collateral value, debt value, health factor, max borrow and single-collateral liquidation price
For
Integrators that want consistent risk math before on-chain lending-state indexing exists
Interface
GET /api/v1/risk/methods, POST /api/v1/risk/lending, opt-in GET /api/v1/risk/lending/indexed/:account
Repository
suban-controller
Status
Implemented as a calculator plus an indexed-snapshot reader
Limits
The POST route uses caller-supplied positions. The indexed route reads data-platform snapshots (DATA_PLATFORM_URL), can lag the chain and is not live contract storage. Prices come from live aggregators; missing or stale prices return 503, fresh non-HEALTHY prices are marked degraded. Liquidation price is null for multi-collateral baskets.
2.5 Financial event projections
What
Pool, trade, liquidity, LP-position, lending-position and bounded account-activity views derived from indexed contract events
For
Explorers and analytics that need to inspect real swap/liquidity/lending activity
Interface
/financial/pools, /financial/pools/:id, /trades, /liquidity, /pools/:id/lp-positions, /pools/:id/valuation, /financial/lending/events, /financial/lending/accounts/:id, /financial/lending/summary, /financial/accounts/:id/activity, /financial/summary on the data platform (:3002)
Repository
Suban/services/event-indexer
Status
Implemented; enriched testnet deployment indexed
Limits
The enriched CPMM/stableswap/lending contracts are deployed and reindexed on Pi testnet, but there is no production consumer. USD valuation is opt-in, live-only and returns 503 for stale/degraded/unmapped prices. LP positions are netted internal share events, not transferable LP tokens. Lending positions are bounded indexed snapshots.
2.6 CPMM quote preview
What
Deterministic constant-product quote and price-impact preview in the SDK and over HTTP
For
Integrators prototyping swap UX without building a router
Interface
SDK quoteCpmm / CpmmPoolClient.getQuote; POST /api/v1/quote/cpmm; GET /api/v1/quote/cpmm/:contractId; GET /api/v1/quote/cpmm/:contractId/onchain; GET /api/v1/route/cpmm
Repository
Suban/sdk, suban-controller
Status
Preview only; Phase 4 gate not met
Limits
Caller-supplied reserves, indexed pool state or a read-only deployed get_quote simulation. Deployed parity is point-in-time; there is no stableswap quote, no execution or transaction construction, and no capital. Indexed state can lag the chain, and route discovery excludes unenriched pools.
3. Value-movement products
3.1 Escrow
What
On-chain escrow contracts, factory and a public auditability viewer
For
Counterparties that need conditional settlement without a custodian