diff --git a/src/xrpld/rpc/handlers/transaction/Simulate.cpp b/src/xrpld/rpc/handlers/transaction/Simulate.cpp index 61cdddafde..63b0e0aa97 100644 --- a/src/xrpld/rpc/handlers/transaction/Simulate.cpp +++ b/src/xrpld/rpc/handlers/transaction/Simulate.cpp @@ -281,6 +281,13 @@ simulateTxn(rpc::JsonContext& context, std::shared_ptr transaction) if (result.metadata) { + if (result.metadata->getVMReturnCode().has_value()) + { + // WASM code was executed during this simulation. + // Charge more for that since gas is not charged during simulation. + context.loadType = resource::kFeeHeavyBurdenRpc; + } + if (isBinaryOutput) { auto const metaBlob = result.metadata->getAsObject().getSerializer().getData();