> Lightning itself can't natively split payments
I think it can. If the wallet knows it wants to pay 400 sats to Alice, 300 to Bob, and 500 to Carol, it can arrange a route that passes through each of their nodes, and drop pending fee htlcs off at each one, whose value corresponds to the amount desired for that node. The last node reveals the preimage and then everyone gets paid. That's an atomic split payment that lightning has native support for.
Login to reply
Replies (5)
Centralized wallets will strangle this functionality, just like Visa and Mastercard suffocate true innovation, serving the Federal Reserve's stranglehold.
End receiver has to share that invoice though I assume? so it's still a trusted serve, and may be less efficient route and more failure prone than just 3 distinct invoices
Interesting concept though if I'm wrong
👀
I like that! Because I presume the payment to Alice, Bob and Carol is atomic in the sense all or nothing.
> End receiver has to share that invoice though I assume?
It's not strictly necessary. You could use a keysend payment to pay a group of nodes atomically without getting an invoice from the recipient. But if you *do* get an invoice from the recipient, that doesn't mean you are trusting him.
The invoice need not contain a list, created by the end node, of the people to pay. It *could* contain such a list, since ln invoices support custom fields; but it could also just be an ordinary ln invoice, and the sender could choose what additional nodes to pay through some out-of-band method.
The point is, LN routing works by atomically splitting a large amount into small sums which are dropped off node by node, atomically, and this can be turned into a payment splitting function by rendering each payment as just a large routing fee. But it has some drawbacks, like not working well if a recipient does not run a routing node.