diff --git a/electrum/invoices.py b/electrum/invoices.py index c9e9584a3..1ad04e7ca 100644 --- a/electrum/invoices.py +++ b/electrum/invoices.py @@ -128,7 +128,7 @@ class OnchainInvoice(Invoice): return self.amount_sat or 0 @classmethod - def from_bip70_payreq(cls, pr: 'PaymentRequest') -> 'OnchainInvoice': + def from_bip70_payreq(cls, pr: 'PaymentRequest', height:int) -> 'OnchainInvoice': return OnchainInvoice( type=PR_TYPE_ONCHAIN, amount_sat=pr.get_amount(), @@ -139,6 +139,7 @@ class OnchainInvoice(Invoice): exp=pr.get_expiration_date() - pr.get_time(), bip70=pr.raw.hex(), requestor=pr.get_requestor(), + height=height, ) @attr.s diff --git a/electrum/wallet.py b/electrum/wallet.py index 7d6f3b99a..005a9f8d1 100644 --- a/electrum/wallet.py +++ b/electrum/wallet.py @@ -704,8 +704,9 @@ class Abstract_Wallet(AddressSynchronizer, ABC): } def create_invoice(self, *, outputs: List[PartialTxOutput], message, pr, URI) -> Invoice: + height=self.get_local_height() if pr: - return OnchainInvoice.from_bip70_payreq(pr) + return OnchainInvoice.from_bip70_payreq(pr, height) if '!' in (x.value for x in outputs): amount = '!' else: @@ -728,7 +729,7 @@ class Abstract_Wallet(AddressSynchronizer, ABC): exp=exp, bip70=None, requestor=None, - height=self.get_local_height(), + height=height, ) return invoice