Francis Pouliot <> writes:
> Here is how I picture the ux issues taking place.
>    1. User goes on my app to buy Bitcoin with fiat, and opts to be paid out
>    via LN rather than on-chain BTC.
>    2. My app will tell him: "make an invoice with the following: msatoshi,
>    description.
>    3. He will go in his wallet and type msatoshi, description.
>    4. It's likey he won't pay too much attention, make a typo in
>    description, leave it blank, write his own description, etc.
>    5. When my app tries to pay, we of course have to decode his bolt11
>    first.
>    6. We have to have some logic that will compare the "h" or "d" that we
>    instructed him to create and the "h" or "d" that we got from the decoded
>    bolt 11 (which is an extra hassle for devs)
>    7. In the cases there they are not the same, we need to instruct the
>    user to create a new bolt 11 invoice because the one he created was not
>    correct.

Yes, there's a missing "give me an invoice" API for this kind of push
payment. has the same problem: there's a clumsy API where you
give them an invoice and it pays it if you have that much.

lninv: URL?  Description, min and max amounts, submission URL?  Ideally
the browser would reach out to the wallet to get an invoice and do the
submission itself (preserving sessions, cookies, etc) but I'm not sure
how that part of the stack works?

There was talk of something similar in Adelaide, but I hadn't
appreciated the concrete problem at the time :(

Lightning-dev mailing list

Reply via email to