aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--routes/payments.js6
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);