Home

Fee Schedule of Dijets Ternary Chains

Introduction#

In order to prevent the network being spammed, transactions on Dijets require the payment of a a minimal transaction fee. The fee is paid in DJTX. There are no miners in Dijets so the ransaction fee is instead burned (destroyed forever by sending the amount to a blackhole address). This burning of the transaction fees avoids the common pitfalls of Gas Wars & front running essentially turning Dijets into a deflationary cryptocurrency.

When you issue a transaction through Dijets's API, the transaction fee is automatically deducted from one of the addresses you control.

Ternary Chains Fee Schedule#

Different types of transactions require payment of a different transaction fee. This table shows the transaction fee schedule:

BlockchainTransaction TypeFees
Method ChainCreate a Subnetwork1 DJTX
Method ChainCreate a Blockchain1 DJTX
Method ChainAdd a Validator0 DJTX
Method ChainAdd a Delegator0 DJTX
Method ChainImporting DJTX0.001 DJTX
Method ChainExporting DJTX0.001 DJTX
Value ChainTransfer/Send0.001 DJTX
Value ChainCreate a Smart Asset0.01 DJTX
Value ChainMint an Asset0.001 DJTX
Value ChainImporting DJTX0.001 DJTX
Value ChainExporting DJTX0.001 DJTX
Utility ChainTransfer/Send>= 0.001485*

*Dijets Utility Chain is an EVM instance with variable gas fees. See below for more details.

Dijets Utility Chain Fees#

Dijets Utility Chain uses an algorithm to determine the "base fee" for a transaction. The base fee increases when network utilisation levels are above the threshold and decreases when network utilisation levels are below the threshold.

Dynamic Fee Transactions#

Transaction fees for non-atomic transactions are based on Ethereum's EIP-1559 style Dynamic Fee Transactions, which consists of a gasFeeCap and gasTipCap

The fee cap specifies the maximum price the transaction is willing to pay per unit of gas. The tip cap specifies the maximum amount above the base fee that the transaction is willing to pay per unit of gas. Therefore, the effective gas price paid by a transaction will be min(gasFeeCap, baseFee + gasTipCap).

info

The Gas Tip Cap is also known as the Priority Fee.

Unlike in Ethereum, where the priority fee is paid to the miner that produces the block (resulting in Gas wars and front running), in Dijets both the base fees and the priority fees are burned forever. For legacy transactions, which only specify a single gas price, the gas price serves as both the gas fee cap and the gas tip cap.

Users can make a simple API call to eth_baseFee method to estimate the base fee for upcoming block before submitting a transaction.

caution

During or before constructing or executing your transaction, if more blocks are produced then the base fee could be different from the base fee estimated by the API call. It is thus important to treat this value just as an estimate.

Use the eth_maxPriorityFeePerGas API call to estimate the priority fee needed to be included in the next block. This API call looks at the most recent blocks to determine what tips have been paid by recent transactions for them to be included in the block.

Transactions are ordered by the priority fee, then the timestamp (oldest first).

Based off of this information, you can specify the gasFeeCap and gasTipCap to your liking based on how you prioritize getting your transaction included as quickly as possible vs. minimizing the price paid per unit of gas.

Base Fee

The base fee can go as low as 25 nDJTX (Gwei) and has no upper bound. You can use the eth_baseFee and eth_maxPriorityFeePerGas API methods, or Dijets Utility Chain explorer for Gas Tracker, to estimate the gas price to use in your transactions.

Atomic Transaction Fees#

What is an Atomic Transaction

An Atomic Transaction in Dijets is a type of transaction used to move funds between Dijets Ternary Chain Ledgers. There are two primary types of Atomic Transactions - ImportTx and ExportTx.

Utility Chain's atomic transactions (that is imports and exports from/to other chains) charge dynamic fees based on the amount of gas used by the transaction and the base fee of the block that includes the atomic transaction.

Gas Used:

Utility Chain ItemGas
Unsigned Tx Byte1
Signature1000
Per Atomic Tx10000

We can derive from the above table that the gas used by an atomic transaction in Dijets is 1 * len(unsignedTxBytes) + 1,000 * numSignatures + 10,000

The TX fee additionally takes the base fee into account. Due to the fact that atomic transactions use units denominated in 9 decimal places, the base fee must be converted to 9 decimal places before calculating the actual fee paid by the transaction. Therefore, the actual fee is: gasUsed * baseFee (converted to 9 decimals).

Next#

  • Learn how to Adjust Gas Prices during high network activity Adjusting Gas Prices.
  • Learn how to send a transaction with Dynamic Fees using DijetsJS DijetsJS
Need some help?

You can join Dijets Support Space for a live chat with one of the team members. Join us on Qowalts.