Self-Deployment Guide
Self-deploy the routing service used by Hyperswitch Intelligent Routing
Self-hosted Hyperswitch deployments can run the routing service in their own infrastructure. Hyperswitch remains the payment orchestrator; the routing service is used by Hyperswitch to evaluate dynamic routing decisions.

Run The Routing Service
Clone the routing service repository:
Install Docker
Make sure Docker is installed on your system.
Windows: Docker Desktop for Windows
Linux: Docker Engine for Linux
Start the API with Docker Compose:
For the API, dashboard, and local docs together:
Repository Make Targets
You can also use the repository Make targets:
Legacy aliases are also available:
The init targets start the backing services, apply database setup, and load routing configuration from the repository config files. The run targets start only the routing API container for an already initialized setup.
Verify the service:
Plan for approximately 2 GB of disk space. After the service starts, refer to the Hyperswitch API reference for the payment APIs that use routing.
Connect With Hyperswitch
Configure the routing service URL in Hyperswitch:
When you are ready for Hyperswitch to use the external routing service, set the routing result source to decision_engine. Keep it as hyperswitch_routing while validating or migrating.
How Hyperswitch Uses It
Hyperswitch calls the routing service during the payment flow, receives the selected processor, performs eligibility and fallback checks, and then continues the payment with the chosen connector. After the payment outcome is known, Hyperswitch sends feedback so auth-rate routing and analytics stay accurate.
Production Checklist
Before sending live traffic, confirm:
Redis and database persistence are configured.
Health and readiness checks are monitored.
Default Fallback Routing is configured in Hyperswitch.
Payment outcomes are being reported for successful and failed attempts.
Routing decisions are visible in Hyperswitch analytics or logs.
Last updated
Was this helpful?

