TransactionPayment
undefined## Storage
nextFeeMultiplier
Namespace
api.query.transactionPayment.nextFeeMultiplier
Type
function nextFeeMultiplier(
): u128
storageVersion
Namespace
api.query.transactionPayment.storageVersion
Type
function storageVersion(
): PalletTransactionPaymentReleases
Events
TransactionFeePaid
A transaction fee actual_fee
, of which tip
was added to the minimum inclusion fee, has been paid by who
.
Namespace
api.events.transactionPayment.TransactionFeePaid
Type
type TransactionFeePaid = {
who: SeedPrimitivesSignatureAccountId20,
actual_fee: u128,
tip: u128
}
undefined## Constants
operationalFeeMultiplier
A fee mulitplier for Operational
extrinsics to compute "virtual tip" to boost their priority
This value is multipled by the final_fee
to obtain a "virtual tip" that is later added to a tip component in regular priority
calculations. It means that a Normal
transaction can front-run a similarly-sized Operational
extrinsic (with no tip), by including a tip value greater than the virtual tip.
```rust,ignore // For Normal
let priority = priority_calc(tip);
// For Operational
let virtual_tip = (inclusion_fee + tip) * OperationalFeeMultiplier; let priority = priority_calc(tip + virtual_tip); ```
Note that since we use final_fee
the multiplier applies also to the regular tip
sent with the transaction. So, not only does the transaction get a priority bump based on the inclusion_fee
, but we also amplify the impact of tips applied to Operational
transactions.
Namespace
api.consts.transactionPayment.operationalFeeMultiplier
Type
type operationalFeeMultiplier = u8