diff --git a/backend/src/api/transaction-utils.ts b/backend/src/api/transaction-utils.ts index acb268b44..2d1f0f955 100644 --- a/backend/src/api/transaction-utils.ts +++ b/backend/src/api/transaction-utils.ts @@ -67,11 +67,12 @@ class TransactionUtils { public extendMempoolTransaction(transaction: IEsploraApi.Transaction): MempoolTransactionExtended { const vsize = Math.ceil(transaction.weight / 4); + const fractionalVsize = (transaction.weight / 4); const sigops = this.countSigops(transaction); // https://github.com/bitcoin/bitcoin/blob/e9262ea32a6e1d364fb7974844fadc36f931f8c6/src/policy/policy.cpp#L295-L298 - const adjustedVsize = Math.max(vsize, sigops * 5); // adjusted vsize = Max(weight, sigops * bytes_per_sigop) / witness_scale_factor + const adjustedVsize = Math.max(fractionalVsize, sigops * 5); // adjusted vsize = Max(weight, sigops * bytes_per_sigop) / witness_scale_factor const feePerVbytes = Math.max(Common.isLiquid() ? 0.1 : 1, - (transaction.fee || 0) / vsize); + (transaction.fee || 0) / fractionalVsize); const adjustedFeePerVsize = Math.max(Common.isLiquid() ? 0.1 : 1, (transaction.fee || 0) / adjustedVsize); const transactionExtended: MempoolTransactionExtended = Object.assign(transaction, {