pull down to refresh

The concept of open-pleb by @gandlaf21 is amazing (still WIP). It's a marketplace to match (1) a seller who has bitcoin but would like to pay a fiat QR code and (2) a buyer who has fiat and would like to stack non-KYC Bitcoin.
(1) seller walks into a store, chooses goods and has the option to pay via QR code (could be alipay or a million other payment systems globally). They put up an equivalent amount of ecash with a coordinator who then starts looking for someone on the other side.
(2) gets a notification and opens app to see there's a QR code waiting to paid. They pay the QR code and provide a proof to the coordinator.
If both users agree that the payment has taken place, the coordinator sends (1) the sats that (2) has put up.
If this works this is IMO the best way for stacking Bitcoin. No exchanges, just two regular people with two separate wants that meet each other on the internet. —@calle note
OpenPleb is a platform for matching users that want to pay a banking QR with bitcoin, and earners that want to earn bitcoin for paying the users offers.

UNDER CONSTRUCTION!

This project is under construction, and we are working on it actively. It is not considered ready for production use.

Architecture Overview

The architecture is built on the monorepo pattern. All code can be found in the packages directory. The backend is written in TypeScript and uses bun.js as the runtime and elysia.js as the API framework. The frontend is written in SvelteKit. For persistence, PostgreSQL is used with drizzle as the ORM. Shared logic is placed in the common package.

General Flow

The architecture contains 4 roles:
  • Maker: A user who wants to pay a banking QR with bitcoin.
  • Taker: An earner who wants to earn bitcoin for paying the users offers.
  • Server: Platform facilitating the matching between makers and takers.
  • Mint: Custodian while a match is in progress.

Disputes

Fiat banking usually doesn't offer open protocols that would allow us to make atomic swaps. Thus, we have to rely on participants to act in their best intrest, to preserve their bonds. Disputes are handled in the following way:
This is the intentional open source version of PlebQR #835356 currently working only in Thailand
reply