diff options
| author | Adam Soltys <[email protected]> | 2023-09-09 22:47:40 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2023-09-09 22:47:40 -0700 |
| commit | 6a5ba3fb2c6c261a24bbf8f151f6484e0dedc50c (patch) | |
| tree | 894d8c62bb7cbf69de69556c955ca9235eff7fd6 | |
| parent | 17c23d4d46f918b9e0603e7d664b1710d22412a9 (diff) | |
| download | coinos-server-6a5ba3fb2c6c261a24bbf8f151f6484e0dedc50c.tar.gz coinos-server-6a5ba3fb2c6c261a24bbf8f151f6484e0dedc50c.zip | |
check for pending payments
| -rw-r--r-- | routes/payments.js | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/routes/payments.js b/routes/payments.js index 4b3cd25d..3dd8892d 100644 --- a/routes/payments.js +++ b/routes/payments.js @@ -73,11 +73,15 @@ export default { if (pays.find(p => p.status === "complete")) fail("Invoice has already been paid"); + if (pays.find(p => p.status === "pending")) + fail("Payment is already underway"); + p = await debit(payreq, total, maxfee, memo, user, types.lightning); let check = async () => { try { let { pays } = await ln.listpays(payreq); + l("checking", payreq, pays); if ((!pays.length || pays[0].status === "failed") && (await g(`payment:${p.id}`))) { await db.del(`payment:${p.id}`); @@ -91,6 +95,8 @@ export default { warn("reversing payment", p.id); await db.lRem(`${p.uid}:payments`, 1, p.id); + + clearInterval(interval); } } catch (e) { console.log(e); |
