SDK
Overview & Status
Current TypeScript client implementation and standalone SDK roadmap.
The SplitPay client layer provides TypeScript bindings for interacting with the SplitPay Soroban smart contract.
Implementation Status
The primary typed client is currently implemented within
splitpay-web/lib/contract/splitpay.ts as SplitPayContractClient. A standalone npm package (@splitpay/sdk) is planned as the contract interface achieves final stabilization.Current SDK Status & Architecture
Instead of inventing an unreleased package, this documentation directly covers the actual typed client running in production in splitpay-web.
The SplitPayContractClient Implementation
The client manages:
- Read Simulation: Simulates read-only methods (
get_pool,get_pool_members,get_payment,get_distributions) via Soroban RPC. - Transaction Assembly: Generates XDR strings for state-mutating calls ready for wallet signing.
- Broadcast & Polling: Submits signed XDR and polls until on-chain ledger inclusion.
Client Capabilities
Full Type Safety
Converts raw ScVal values to native TypeScript structs automatically.
Simulated Footprints
Assembles accurate resource fee and footprint estimations.
Wallet Agnostic
Outputs standard XDR signable by Freighter, dev keypairs, or hardware wallets.