diff options
| author | Adam Soltys <[email protected]> | 2020-03-11 15:10:40 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2020-03-11 15:10:40 -0700 |
| commit | c0888fab024cc9f7c99812bfabf9d7774312dbf7 (patch) | |
| tree | cad95683af97432f6092a2c2bae10fbb7a588db5 /routes/liquid/fee.js | |
| parent | bf2b51f0c2ae9b8f0f330dde6411e45fc0da8a25 (diff) | |
| download | coinos-server-c0888fab024cc9f7c99812bfabf9d7774312dbf7.tar.gz coinos-server-c0888fab024cc9f7c99812bfabf9d7774312dbf7.zip | |
refactor
Diffstat (limited to 'routes/liquid/fee.js')
| -rw-r--r-- | routes/liquid/fee.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/routes/liquid/fee.js b/routes/liquid/fee.js new file mode 100644 index 00000000..402c0b2a --- /dev/null +++ b/routes/liquid/fee.js @@ -0,0 +1,25 @@ +module.exports = async (req, res) => { + let { user } = req; + let { address, amount, feeRate } = req.body; + let tx, fee; + + try { + amount = parseInt(amount); + + tx = await lq.createRawTransaction([], { + [address]: (amount / SATS).toFixed(8) + }); + + let params = { + subtractFeeFromOutputs: amount === user.balance ? [0] : [] + } + + if (feeRate) params["feeRate"] = (parseInt(feeRate) / SATS * 1000).toFixed(8); + + tx = await lq.fundRawTransaction(tx, params); + res.send({ tx }); + } catch (e) { + l.error("error estimating liquid fee", e); + return res.status(500).send(e.message); + } +}; |
