hyperswitch is a Payment Switch that lets you connect with multiple payment processors with a single API integration. Once integrated, you can add new payment processors and route traffic effortlessly. Using hyperswitch, you can:
- Reduce dependency on a single processor like Stripe
- Control & customize your payment flow with 100% visibility
- Reduce processing fees through smart routing
- Improve conversion rate with dynamic routing
- Expand your business reach with new payment methods
- Reduce development & testing efforts of adding new processors
hyperswitch is wire-compatible with top processors like Stripe making it easy to integrate.
- Quick Start Guide
- Supported Features
- What's Included
- Join us in building hyperswitch
- Community
- Bugs and feature requests
- Versioning
- Copyright and License
You have two options to try out hyperswitch:
- Try out our sandbox environment: Requires the least effort and does not involve setting up anything on your system.
- Try out hyperswitch on your local system: Requires comparatively more effort as it involves setting up dependencies on your system.
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:
- Get API keys from our dashboard.
- Follow the instructions detailed on our documentation page.
Features | Stripe | Adyen | Checkout | Authorize.net | ACI |
---|---|---|---|---|---|
Payments - CRUD, Confirm | ✅ | ✅ | ✅ | ✅ | ✅ |
Customers - CRUD | ✅ | ✅ | ✅ | ✅ | ✅ |
Refunds | ✅ | ✅ | ✅ | ✅ | WIP |
Mandates | ✅ | WIP | WIP | WIP | WIP |
PCI Compliance | ✅ | ✅ | ✅ | ✅ | ✅ |
The hosted version provides the following additional features:
-
System Performance & Reliability
- Scalable to support 50000 tps
- System uptime of upto 99.99%
- Low latency service
- Hosting option with AWS, GCP
-
Value Added Services
- Compliance Support incl. PCI, GDPR etc
- Support for processors / gateways not currently available as part of OSS (E.g. Chase Payments)
- Integration with Risk Management Solutions
- Support for Subscription
-
Payment Operations Support
- 24x7 Support
- Dashboards with deep analytics
- Experts team to consult and improve business metrics
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
We believe payments should be open, fast and cheap.
hyperswitch would allow everyone to quickly customize and set up an open payment switch, while giving a unified experience to your users, abstracting away the ever shifting payments landscape.
The hyperswitch journey starts with a payment orchestrator. It was born from our struggle to understand and integrate various payment options/payment processors/networks and banks, with varying degrees of documentation and inconsistent API semantics.
This project is created and currently maintained by Juspay.
We welcome contributions from the open source 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 rather than being pure-idiomatic.
Get updates on hyperswitch development and chat with the community:
- Read and subscribe to the official hyperswitch blog
- Join our Discord server
- Join our Slack workspace
- Ask and explore our GitHub Discussions
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.