Skip to main content

Overview

DynamicSvmWalletClient::sendTransaction signs the serialized message of a Solana transaction with the MPC ceremony and broadcasts it via Solana JSON-RPC in one call. Returns the transaction signature (base58) — the standard Solana tx ID. sendTransaction is the recommended path for most apps. Reach for signTransaction only if you need to assemble the wire envelope yourself.

Prerequisites

Sign + Broadcast in One Call

A fresh JSON-RPC client is constructed per call. For high-throughput scenarios, compose signTransaction with your own pooled RPC client.

Gas Sponsorship

Setting .sponsor(true) routes the broadcast through Dynamic’s sponsor path — Dynamic pays the SOL transaction fee and you don’t need to fund the wallet’s lamports balance. Gas sponsorship must be enabled for your environment in the Dynamic dashboard.
See Sponsor Transactions for the lower-level building block (sponsorTransaction returns the sponsor-signed wire envelope without broadcasting).

Building the Message

Use sava-core (or any other JVM Solana SDK) to assemble the unsigned transaction, fetch the latest blockhash, and serialize just the message portion:

Error Handling

If the broadcast itself fails (blockhash not found, sponsor pool exhausted, etc.), the error message surfaces verbatim — refresh the blockhash and retry.

Next Steps

Last modified on May 25, 2026