Transaction Identifiers
GrpcTransactionId
Unified transaction identifier supporting both normal and numbered transaction types.Normal transaction type (used once per deposit)
Numbered transaction type (used multiple times)
NormalTransactionId
Transaction types that occur once per deposit or operation.Unspecified transaction type
Round transaction (operator’s collateral chain)
Kickoff transaction initiating withdrawal process
Move-to-vault transaction (deposit confirmation)
Payout transaction for withdrawals
Challenge transaction for dispute resolution
Disprove transaction responding to challenges
Disprove timeout transaction
Reimbursement transaction
Special identifier to request all transactions needed for a deposit
Dummy transaction for testing
Ready-to-reimburse state transaction
Kickoff not finalized transaction
Challenge timeout transaction
Burn unused kickoff connectors transaction
Yield kickoff transaction ID
Replacement deposit transaction
Latest blockhash timeout transaction
Latest blockhash transaction
Optimistic payout transaction
NumberedTransactionType
Transaction types that occur multiple times per operation (indexed by number).Unspecified indexed transaction type
Watchtower challenge transaction (one per watchtower)
Operator challenge negative acknowledgment
Operator challenge acknowledgment
Assert timeout transaction
Unspent kickoff transaction
Mini assert transaction (multiple per BitVM proof)
Watchtower challenge timeout
Transaction Models
TransactionRequest
Request to create transactions for a specific deposit and kickoff.Deposit UTXO outpoint
Kickoff identifier
RawSignedTx
Raw Bitcoin transaction in serialized format.Serialized Bitcoin transaction bytes
RawSignedTxs
Collection of raw signed transactions.Array of raw signed transactions
SignedTxWithType
Signed transaction with its type identifier.Transaction type identifier
Raw transaction bytes
SignedTxsWithType
Collection of signed transactions with their types.Array of signed transactions with type information
RawTxWithRbfInfo
Raw transaction with Replace-By-Fee signing information.Raw transaction bytes
RBF signing information
SendTxRequest
Request to send a transaction with fee specification.Raw signed transaction to send
Fee payment method
Fee Types
FeeType
Methods for paying transaction fees.Unspecified fee type
Child-Pays-For-Parent fee bumping
Replace-By-Fee for fee bumping
No additional fee funding required
Transaction Metadata
TxMetadata
Metadata associated with a transaction for tracking and debugging.Associated deposit outpoint
Operator’s x-only public key
Round index
Kickoff index
Transaction type identifier
Withdrawal Models
WithdrawParams
Parameters for withdrawal/payout transactions.Withdrawal ID in Citrea
User’s
TapSighashType::SinglePlusAnyoneCanPay signatureUser’s UTXO to claim the deposit
Withdrawal output’s script pubkey (signature is only valid for this pubkey)
Withdrawal output’s amount in satoshis (signature is only valid for this amount)
WithdrawParamsWithSig
Withdrawal parameters with optional verification signature.Core withdrawal parameters
Optional ECDSA signature from Citrea/aggregator for authentication
FinalizedPayoutParams
Parameters for finalized payout transactions.Bitcoin blockhash for the payout
Associated deposit outpoint