Skip to content

Commit 94f2dd6

Browse files
authored
Merge pull request #392 from tnull/2024-10-add-preimage-to-successful-event
Add `payment_preimage` field to `Event::PaymentSuccessful`
2 parents a185c7e + 0ea5032 commit 94f2dd6

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

bindings/ldk_node.udl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ enum VssHeaderProviderError {
273273

274274
[Enum]
275275
interface Event {
276-
PaymentSuccessful(PaymentId? payment_id, PaymentHash payment_hash, u64? fee_paid_msat);
276+
PaymentSuccessful(PaymentId? payment_id, PaymentHash payment_hash, PaymentPreimage? payment_preimage, u64? fee_paid_msat);
277277
PaymentFailed(PaymentId? payment_id, PaymentHash? payment_hash, PaymentFailureReason? reason);
278278
PaymentReceived(PaymentId? payment_id, PaymentHash payment_hash, u64 amount_msat);
279279
PaymentClaimable(PaymentId payment_id, PaymentHash payment_hash, u64 claimable_amount_msat, u32? claim_deadline);

src/event.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ use lightning::events::{Event as LdkEvent, PaymentFailureReason};
3232
use lightning::impl_writeable_tlv_based_enum;
3333
use lightning::ln::channelmanager::PaymentId;
3434
use lightning::ln::types::ChannelId;
35-
use lightning::ln::PaymentHash;
35+
use lightning::ln::{PaymentHash, PaymentPreimage};
3636
use lightning::routing::gossip::NodeId;
3737
use lightning::util::errors::APIError;
3838
use lightning::util::ser::{Readable, ReadableArgs, Writeable, Writer};
@@ -65,6 +65,12 @@ pub enum Event {
6565
payment_id: Option<PaymentId>,
6666
/// The hash of the payment.
6767
payment_hash: PaymentHash,
68+
/// The preimage to the `payment_hash`.
69+
///
70+
/// Note that this serves as a payment receipt.
71+
///
72+
/// Will only be `None` for events serialized with LDK Node v0.4.2 or prior.
73+
payment_preimage: Option<PaymentPreimage>,
6874
/// The total fee which was spent at intermediate hops in this payment.
6975
fee_paid_msat: Option<u64>,
7076
},
@@ -163,6 +169,7 @@ impl_writeable_tlv_based_enum!(Event,
163169
(0, payment_hash, required),
164170
(1, fee_paid_msat, option),
165171
(3, payment_id, option),
172+
(5, payment_preimage, option),
166173
},
167174
(1, PaymentFailed) => {
168175
(0, payment_hash, option),
@@ -870,6 +877,7 @@ where
870877
let event = Event::PaymentSuccessful {
871878
payment_id: Some(payment_id),
872879
payment_hash,
880+
payment_preimage: Some(payment_preimage),
873881
fee_paid_msat,
874882
};
875883

0 commit comments

Comments
 (0)