Concept
Transactions and fees
The stages of a Tenrai transaction, when it is final, how fees follow its mass, and what happens to a transaction that does not go through.
On this page
Stages
| Stage | Meaning |
|---|---|
| In mempool | A node accepted it and waits for a miner to include it |
| Mined | A work block carries it, usually within a second |
| Registered | A cut registered that work block |
| Finalized | A later cut executed it. The payment is final |
| Failed | It conflicted with another spend of the same coins, expired or was rejected |
Registered and Finalized usually follow one cut apart, and cuts come every 2.5 seconds. tenrai-wallet status --transaction <ID> --wait follows a transaction on the command line; an explorer shows the same stages.
Finality
A finalized transaction cannot be reversed. Tenrai has no reorganizations, so there is nothing to wait out after the first finalized cut. Wallets and explorers still count confirmations, the finalized cuts since then; an exchange may ask for several as house policy.
Fees
The fee pays for the transaction's mass, a measure of its size and the work it causes:
mass = bytes + 2 × inputs + 3 × outputs + 4 × witnesses + 5 × operation bytes + 6 × payload bytes
fee = mass × fee rateThe network minimum is 1 atom per unit of mass. Wallets read the current rates from the node and offer three levels:
| Level | Use |
|---|---|
| Minimum | Lowest fee; waits longest when the mempool is busy |
| Normal | The default |
| Priority | Moves ahead of normal transactions |
The Tenrai wallets never pick more than 4 times the minimum rate on their own, or 16 times at priority. A higher fee has to be set by hand.
Each coin a transaction spends carries an ML-DSA-65 signature, which makes up most of its mass. Spending from an address whose key is already registered on the chain costs about a third less per coin, which is why the wallets keep coins on one address by default.
Validity window
A transaction is valid for at most 1,800 cuts, about 75 minutes. If no cut executes it by then, it expires and its coins become spendable again. While the node does not know a sent transaction, for example because it was busy, the Tenrai wallets send it again every 30 seconds until it is known or expires.
Limits
| Limit | Value |
|---|---|
| Coins spent (inputs) | 8 |
| Outputs, change included | 8 |
| Payload | 1,024 bytes |
| Size | 46 KiB |
Protocol limits lists every consensus limit.
