Transaction creation
xchain-encoder
Turns an ACTION into a ready-to-sign transaction.
Where it fits
SDK · Wallet
Encoder
Signed PSBT
Blockchain
Stateless: turns an ACTION into an optimally-encoded, unsigned transaction the caller signs and broadcasts.
What it is
The encoder converts an ACTION string, a set of UTXOs, and a public key into an unsigned PSBT, automatically choosing the most efficient on-chain encoding for the payload size.
How it fits into the platform
Client-side construction: the SDK and wallet call it to build transactions, which the caller then signs and broadcasts. It is fully stateless.
What it can do
- Auto-selects OP_RETURN, multisig, P2SH, or P2WSH encoding
- Handles payloads up to ~10 KB via a two-transaction reveal pattern
- Obfuscates payloads deterministically (AES-128-CTR)
- Runs as a Node service or a browser bundle
Under the hood
- Stateless: no storage, no outbound calls
- bitcoinjs-lib
- webpack browser build