Skip to content

Repeatpay: a plugin to handle recurring payments. - #9151

Open
rustyrussell wants to merge 11 commits into
ElementsProject:masterfrom
rustyrussell:guilt/repeatpay
Open

Repeatpay: a plugin to handle recurring payments.#9151
rustyrussell wants to merge 11 commits into
ElementsProject:masterfrom
rustyrussell:guilt/repeatpay

Conversation

@rustyrussell

@rustyrussell rustyrussell commented May 20, 2026

Copy link
Copy Markdown
Collaborator

Depends on #9150 [Merged!]

This handles paying recurring payments: repeatpay <invoice> <maxamount> then listrepeatpays, cancelrepeatpay and amendrepeatpay.

Since recurring invoices are experimental, this is experimental.

@rustyrussell rustyrussell added this to the v26.09 milestone May 20, 2026
@rustyrussell
rustyrussell requested a review from cdecker as a code owner May 20, 2026 08:51
@madelinevibes madelinevibes added the Status::Ready for Review The work has been completed and is now awaiting evaluation or approval. label Jun 17, 2026
@Lagrang3 Lagrang3 removed the Status::Ready for Review The work has been completed and is now awaiting evaluation or approval. label Jul 9, 2026
@Lagrang3 Lagrang3 modified the milestones: v26.09, v26.12 Jul 21, 2026
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-EXPERIMENTAL: JSON-RPC: `repeatpay` to make ongoing payments of (draft) recurring offers: also `listrepeatpays`, `amendrepeatpay and `cancelrepeatpay` commands.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Changelog-EXPERIMENTAL: Added `repeatpay` plugin for handling payment of recurring offers.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
I'll admit, I was going to add a list-sendpays-by-label, but Claude
came up with "I'll get the invoice from the previous logs" which made
me stop for a moment, but then sigh and allow it.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
We covered the other path, missed this.  So put it in save_payment()
itself.

Reported-by: Claude Sonnet 5.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
…eeper.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
@rustyrussell

Copy link
Copy Markdown
Collaborator Author

Rebased and a few fixes based on Claude's review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants