Add checkout to a React app that needs to support several payment providers at once.
Switch or add a new payment provider later without rewriting checkout code.
Build a payment flow that keeps raw card numbers out of your own servers.
Route a payment to a fallback provider automatically if the first one fails.
| donapulse/payfanout | 0xkinno/neuralvault | 0xmayurrr/ai-contractauditor | |
|---|---|---|---|
| Stars | 1 | 1 | 1 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | moderate | hard | easy |
| Complexity | 3/5 | 4/5 | 2/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires sandbox credentials from at least one payment provider (Stripe, Paysafe, PayPal, etc.) to test.
PayFanout is a code library for React and TypeScript apps that need to accept payments through more than one payment provider. Instead of writing separate integration code for Stripe, Paysafe, PayPal, PayZen, GoCardless, and Worldline, you write your app once against a single consistent API, and PayFanout translates your calls into whatever each provider actually expects behind the scenes. Your application code never has to know or care which payment provider is currently active. The project does not store any data itself. It has no database. Your own application is responsible for keeping track of which internal order or payment id maps to which provider's payment id, for remembering which webhook events it has already handled, and for any audit trail you need. PayFanout's role is purely to organize and normalize the payment process, not to remember anything about it. A core design rule is that card numbers are never stored or even touched directly by your code. All card entry happens inside secure, hosted fields supplied by each payment provider, so raw card data never passes through your servers. When a customer saves a card for later or sets up a recurring payment, the provider hands back a safe reference token instead of the real card number, and that token is what your database stores. The project is organized as a set of separate packages: a core package with shared logic and no provider-specific code, a server package for handling payments and webhooks, a React package with ready-made UI components like payment buttons and fields, and individual adapter packages for each supported provider, split into server-side and client-side halves. Adding support for a new payment provider means writing a new adapter package, with no changes needed to the core system or to existing application code. Full setup guides for each provider are hosted on the project's documentation site.
A code library that lets a React and TypeScript app accept payments through Stripe, PayPal, and other providers using one consistent API, without storing any payment data itself.
Mainly TypeScript. The stack also includes TypeScript, React, Node.js.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.