High-level explanation
When you create a Pizza (a splitter contract), you're sending a transaction to the PizzaFactory contract, which then makes a cheap and lightweight "clone" (actually a proxy) of a single main Pizza contract we've already deployed. That proxy contract address is what you can share with friends or collaborators to send PYUSD (or any other token) into.
When you want to release funds, you send a transaction to that clone, which consults the underlying Pizza contract to figure out what to do. It then looks at all the payees and their portions, and sends them their share of the funds.
Last updated