juspay / hyperswitch
- понедельник, 13 февраля 2023 г. в 00:13:54
An Open Source Financial Switch to make Payments fast, reliable and affordable
Unified Payments Switch. Fast. Reliable. Affordable.
Quick Start Guide •
Fast Integration for Stripe Users •
Supported Features •
FAQs
What's Included •
Join us in building HyperSwitch •
Community •
Bugs and feature requests •
Versioning •
Copyright and License
HyperSwitch is an Open Source Financial Switch to make payments Fast, Reliable and Affordable. It lets you connect with multiple payment processors and route traffic effortlessly, all with a single API integration. Using HyperSwitch, you can:
HyperSwitch is wire-compatible with top processors like Stripe, making it easy to integrate.
You have three options to try out HyperSwitch:
Try it in our Sandbox Environment: Fast and easy to start. No code or setup required in your system.
Try our React Demo App: A simple demo of integrating Hyperswitch with your React app.
Install in your local system: Configurations and setup required in your system. Suitable if you like to customize the core offering.
If you are already using Stripe, integrating with HyperSwitch is fun, fast & easy. Try the steps below to get a feel for how quick the setup is:
As of Jan 2023, we support 14 payment processors and multiple payment methods. In addition, we are continuously integrating new processors based on their reach and community requests. Our target is to support 100+ processors by H2 2023. You can find the latest list of payment processors, supported methods, and features here.
In addition to all the features of the open-source product, our hosted version provides features and support to manage your payment infrastructure, compliance, analytics, and operations end-to-end:
System Performance & Reliability
Value Added Services
Enterprise Support
You can try the hosted version in our sandbox.
Got more more questions? Please refer to our FAQs page.
Within the repositories you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations.
The current setup contains a single repo, which contains the core payment router
and the various connector integrations under the src/connector
sub-directory.
├── config : config files for router. This stores the initial startup config and separate configs can be provided for debug/release builds.
├── crates : sub-crates
│ ├── masking : making pii information for pci and gdpr compliance
│ ├── router : the main crate
│ └── router_derive : utility macros for the router crate
├── docs : hand written documentation
├── examples : examples
├── logs : logs generated at runtime
├── migrations : diesel db setup
├── openapi : API definition
├── postman : postman scenarios for API
└── target : generated files
Payments should be open, fast, reliable and affordable to serve the billions of people at scale.
Globally payment diversity has been growing at a rapid pace. There are hundreds of payment processors and new payment methods like BNPL, RTP etc. Businesses need to embrace this diversity to increase conversion, reduce cost and improve control. But integrating and maintaining multiple processors needs a lot of dev effort. Why should devs across companies repeat the same work? Why can't it be unified and reused? Hence, HyperSwitch was born to create that reusable core and let companies build and customize on top of it.
This project is being created and maintained by Juspay, South Asia's largest payments orchestrator/switch, processing more than 50 Million transactions per day. The solution has 1Mn+ lines of Haskell code built over 10 years. HyperSwitch leverages our experience in building large-scale, enterprise-grade & frictionless payment solutions. It is built afresh for the global markets as an open-source product in Rust. We are long-term committed to building and making it useful for the community.
The product roadmap is open for the community's feedback. We shall evolve a prioritization process that is open and community-driven. We welcome contributions from the community. Please read through our contributing guidelines. Included are directions for opening issues, coding standards, and notes on development.
Important note for Rust developers: We aim for contributions from the community
across a broad range of tracks. Hence, we have prioritized simplicity and code
readability over purely idiomatic code. For example, some of the code in core
functions (e.g., payments_core
) is written to be more readable than
pure-idiomatic.
Get updates on HyperSwitch development and chat with the community:
Please read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.
Check the CHANGELOG.md file for details.
This product is licensed under the Apache 2.0 License.