From 5356c6d81e1c2a9fb88de4d72e2b33f63f20c1a8 Mon Sep 17 00:00:00 2001 From: wthrajat Date: Thu, 16 Jul 2026 19:27:55 +0530 Subject: [PATCH 1/3] fix(payments): surface payment preimage on send result [AMB-2789] LND and litd return payment_preimage in the send-payment stream but the SDK dropped it. Add preimage to NodePaymentResult and the stream update types, and pass it through in sendLndPayment and sendAssetPayment so callers can use it as proof of payment (L402 etc.). --- packages/payments/src/node/lit.ts | 1 + packages/payments/src/node/lnd.test.ts | 3 ++- packages/payments/src/node/lnd.ts | 1 + packages/payments/src/node/types.ts | 4 ++++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/payments/src/node/lit.ts b/packages/payments/src/node/lit.ts index 771a1d5..e8e4fef 100644 --- a/packages/payments/src/node/lit.ts +++ b/packages/payments/src/node/lit.ts @@ -48,6 +48,7 @@ export async function sendAssetPayment(params: SendAssetPaymentParams): Promise< terminal = { status: result.status, paymentHash: result.payment_hash, + preimage: result.payment_preimage, feeSat: result.fee_sat, failureReason: result.failure_reason, }; diff --git a/packages/payments/src/node/lnd.test.ts b/packages/payments/src/node/lnd.test.ts index f95e4e1..6c5df65 100644 --- a/packages/payments/src/node/lnd.test.ts +++ b/packages/payments/src/node/lnd.test.ts @@ -38,7 +38,7 @@ describe('sendLndPayment', () => { const { host, lastMacaroonHeader } = await startServer((_req, res) => writeLines(res, [ { result: { status: 'IN_FLIGHT' } }, - { result: { status: 'SUCCEEDED', payment_hash: 'abc', fee_sat: '3' } }, + { result: { status: 'SUCCEEDED', payment_hash: 'abc', payment_preimage: 'def', fee_sat: '3' } }, ]), ); @@ -54,6 +54,7 @@ describe('sendLndPayment', () => { assert.deepEqual(result, { status: 'SUCCEEDED', paymentHash: 'abc', + preimage: 'def', feeSat: '3', failureReason: undefined, }); diff --git a/packages/payments/src/node/lnd.ts b/packages/payments/src/node/lnd.ts index a2f7a56..c486e6a 100644 --- a/packages/payments/src/node/lnd.ts +++ b/packages/payments/src/node/lnd.ts @@ -42,6 +42,7 @@ export async function sendLndPayment(params: SendLndPaymentParams): Promise Date: Mon, 20 Jul 2026 18:08:55 +0530 Subject: [PATCH 2/3] chore: lint fix --- packages/payments/src/node/lnd.test.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/payments/src/node/lnd.test.ts b/packages/payments/src/node/lnd.test.ts index 6c5df65..10ebdcf 100644 --- a/packages/payments/src/node/lnd.test.ts +++ b/packages/payments/src/node/lnd.test.ts @@ -38,7 +38,14 @@ describe('sendLndPayment', () => { const { host, lastMacaroonHeader } = await startServer((_req, res) => writeLines(res, [ { result: { status: 'IN_FLIGHT' } }, - { result: { status: 'SUCCEEDED', payment_hash: 'abc', payment_preimage: 'def', fee_sat: '3' } }, + { + result: { + status: 'SUCCEEDED', + payment_hash: 'abc', + payment_preimage: 'def', + fee_sat: '3', + }, + }, ]), ); From aa3c57c4527cfd7fc28b4123ff48c65cfa9495c5 Mon Sep 17 00:00:00 2001 From: Anthony Potdevin Date: Mon, 20 Jul 2026 17:01:37 -0600 Subject: [PATCH 3/3] chore: rename preimage field --- packages/payments/src/node/lit.ts | 2 +- packages/payments/src/node/lnd.test.ts | 2 +- packages/payments/src/node/lnd.ts | 2 +- packages/payments/src/node/types.ts | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/payments/src/node/lit.ts b/packages/payments/src/node/lit.ts index e8e4fef..b7a7358 100644 --- a/packages/payments/src/node/lit.ts +++ b/packages/payments/src/node/lit.ts @@ -48,7 +48,7 @@ export async function sendAssetPayment(params: SendAssetPaymentParams): Promise< terminal = { status: result.status, paymentHash: result.payment_hash, - preimage: result.payment_preimage, + paymentPreimage: result.payment_preimage, feeSat: result.fee_sat, failureReason: result.failure_reason, }; diff --git a/packages/payments/src/node/lnd.test.ts b/packages/payments/src/node/lnd.test.ts index 10ebdcf..284853f 100644 --- a/packages/payments/src/node/lnd.test.ts +++ b/packages/payments/src/node/lnd.test.ts @@ -61,7 +61,7 @@ describe('sendLndPayment', () => { assert.deepEqual(result, { status: 'SUCCEEDED', paymentHash: 'abc', - preimage: 'def', + paymentPreimage: 'def', feeSat: '3', failureReason: undefined, }); diff --git a/packages/payments/src/node/lnd.ts b/packages/payments/src/node/lnd.ts index c486e6a..49f8a13 100644 --- a/packages/payments/src/node/lnd.ts +++ b/packages/payments/src/node/lnd.ts @@ -42,7 +42,7 @@ export async function sendLndPayment(params: SendLndPaymentParams): Promise