This post showcases building payment pools / coin pools* in Sapio!

https://rubin.io/bitcoin/2021/12/10/advent-13/

There will be many more posts in the series that will take this concept a lot further and showcase some more advanced things that can be built.

I think that payment pools are incredibly exciting -- we know that it's going to be tough to give every human a UTXO, even with Lightning. Payment Pools promise to help compress that chain load into single utxos so that users can be perfectly secure with a proof root and just need to do some transactions to recover their coins. While channels could live inside of payment pools, scaling via payment pools without nested channels can be nice because there is no degradation of assumptions for the coins inside being able to broadcast transactions quickly.

Payment pools in Sapio also provide a natural evolution path for things like Rollups (they're essentially federated rollups with unilateral exits), where state transitions in pools could one day be enforced by either covenants or some sort of ZK system in place of N-of-N signatures.

Hopefully this stimulates some folks to muck around with Sapio and experiment creating their own custom Payment Pools! I'd love to see someone hack some kind of EVM into the state transition function of a payment pool ;)

Cheers,

Jeremy

* we should probably nail down some terminology -- I think Payment Pools / Coin Pools are kinda "generic" names for the technique, but we should give specific protocols more specific names like payment channels : lightning network.