-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lightning/Onchain architecture assumptions #5
Comments
they do not need onchain bitcoin. basically what actually happens is the user generates two invoices for the slightly different amounts with the same preimage. they give the larger one to the payer to pay and the smaller one (difference is the fee paid to lsp) to the lsp. when the lsp receives the htlc it opens a 0-conf channel with user then pays the smaller invoice which gives them the preimage and then turns around and uses the preimage to settle the larger invoice |
Regarding "What formats to support?" we need to separately discussing send and receive support. The wallet might want to support all of them for sending, so that the user can send to any other wallet. For receive though, since this is a non-custodial mobile wallet, I don't see how LNURL can be used as it needs to be custodial or you'd need to run a web server on the phone. And for receive in general, it is a largely unsolved problem. By far the best solution to that problem is lightning/bolts#989 which is unlikely to be available until 2023. I'd suggest punting on receiving as a use case. It is after all a "daily spending wallet" use case. So for v1 just focus on "user who wants to pay merchants." |
As for sending support, I'd suggest starting with bip21 (and bolt11) as that covers most situations. Then LNURL. |
For a Daily spending wallet, what are good decisions about when and what to support when it comes to lightning and onchain?
Expect new user to have never used a bitcoin wallet before / not have any bitcoin elsewhere.
Some assumptions I am starting with:
How to get channels?
Ideally a user is able to receive on lightning immediately after installing the app.
For this, a channel with receive capacity needs to be available.
If an LSP is required, who and how can this be integrated?
What formats to support?
Other considerations
The text was updated successfully, but these errors were encountered: