A Simple Non-Custodial Payments Gateway For Web2-or-3 Marketplaces
Hi, this isn't a scaling project :) It's more of a legal experiment - We seek to build a non-custodial way for Marketplace Service Providers (like Twitch, Etsy, et al) to charge a fee for Web3 payments that go through their marketplace.
My wife and I have a startup building a Web2 streaming content marketplace (like a Twitch competitor), and we want to allow our content creators to accept ETH/DAI as donations or content purchases in their store - but the custodial payments model is prohibitive to a small startup like us, because of the reporting requirements involved; we'd like to charge a flat 10% fee on all donations, but having to take custody of the remaining 90% of funds creates a legal headache for us.
Ether is programmable money, so we built this demonstration of a non-custodial payments provider, allowing traditional Web2 marketplaces to integrate ETH payments (DAI coming soon!), while still accepting the service fee. Now, a marketplace can render a PAYMENTS or DONATIONS widget and monitor the BrainStore contract for approved payments, accepting their service fees without reporting exposure for the greater bulk of the payment.
This project is a simple solidity smartcontract of a 3-layer self-service Factory pattern, with a hardhat + react frontend; the initial Factory contract is deployed to allow anyone to create a Marketplace ("Store Builder") - the owner of that Marketplace is then a self-service interface for content creators to deploy a new BrainStore, which is just a direct payments gateway with fee splitting logic.
Crucially, the content creator is the actor who deploys and controls the BrainStore contract; the content creator can transfer ownership, update the title, withdraw funds, and perform all control functions on the BrainStore, except for adjusting the feeBasis quantity and feeProvider address.