From d86ee1817cfb94993a5db6fec55a2c5b007d4277 Mon Sep 17 00:00:00 2001 From: boufni95 Date: Mon, 10 Jun 2024 22:54:30 +0200 Subject: [PATCH] fix --- src/services/main/paymentManager.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/services/main/paymentManager.ts b/src/services/main/paymentManager.ts index 3a8e37c7..34ec5a22 100644 --- a/src/services/main/paymentManager.ts +++ b/src/services/main/paymentManager.ts @@ -164,6 +164,10 @@ export default class { const isAppUserPayment = userId !== linkedApplication.owner.user_id const serviceFee = this.getServiceFee(Types.UserOperationType.OUTGOING_INVOICE, payAmount, isAppUserPayment) const internalInvoice = await this.storage.paymentStorage.GetInvoiceOwner(req.invoice) + const invoiceAlreadyPaid = await this.storage.paymentStorage.GetPaymentOwner(req.invoice) + if (invoiceAlreadyPaid || (internalInvoice && internalInvoice.paid_at_unix > 0)) { + throw new Error("this invoice was already paid") + } let paymentInfo = { preimage: "", amtPaid: 0, networkFee: 0, serialId: 0 } if (internalInvoice) { paymentInfo = await this.PayInternalInvoice(userId, internalInvoice, { payAmount, serviceFee }, linkedApplication)