Skip to content

Lightning/Onchain architecture assumptions #5

Closed
@danielnordh

Description

@danielnordh

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:

  • Default to lightning for send and receive, what formats to support?
  • Should be able to receive onchain payments (being paid a larger sum for work or selling an item second hand)
  • Should MAYBE be able to send onchain (sending to a savings wallet)

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.

  • Pay an LSP to open one
  • User opens one by funding with onchain bitcoin
  • Channel gets opened when receiving onchain bitcoin
  • See Breez, opens receive channel on the fly as needed, but from their own routing node. Their fees.
  • Use shared node like LNDHub

If an LSP is required, who and how can this be integrated?

  • Any channel opened to the user will cost money (this is a huge barrier for either user and/or the developer)
  • How much? ($2.50 on LNBig, $4.27 on Bitrefill Thor, $140 with Blocktank for receive only, 1,000,000 sats)
  • Can you open channels with LSPs via api's without contracts/signing up etc?

What formats to support?

  • Unified Payment Request / BIP21
  • Bolt 11 (single use, with expiry time)
  • Bolt 12 (ready for use?)
  • LNURL?
  • LNURL-pay?
  • Lightning addresses?
  • AMP/SMP?

Other considerations

  • If using LDK as node on mobile device, can it receive lightning offline?
  • Any way to open channel when receiving on lightning, and pay the fees to LSP out of received amount?
  • What happens if an LSP channel closes and the user has funds, goes to user onchain address?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions