Transactions
Concepts

Transactions

Soroban transaction lifecycle, footprint considerations, and ledger confirmation.

Interactions with the SplitPay smart contract follow the standard Soroban transaction lifecycle on Stellar.

Soroban Transaction Lifecycle

  1. Build: Client creates a Transaction with a Contract.call(method, ...args) operation.
  2. Simulate: Transaction is submitted to Soroban RPC via simulateTransaction to calculate CPU instructions, RAM limits, and read/write footprints.
  3. Assemble: The simulation results and required authorizations are assembled into an executable XDR.
  4. Sign: The payer or owner signs the assembled XDR via Freighter or private key.
  5. Broadcast: Signed XDR is submitted to the network via sendTransaction.
  6. Confirmation: Client polls getTransaction until status is SUCCESS.

Ledger Footprints & Authorization

Soroban requires explicit state declaration (read/write footprints) before execution to enable parallel transaction processing. Simulation handles this automatically in the SplitPay SDK.