๐Ÿ“ฆ juspay / decision-engine

open-source routing system designed for payment processing

โ˜… 111 stars โ‘‚ 30 forks ๐Ÿ‘ 111 watching โš–๏ธ Other
hacktoberfest
๐Ÿ“ฅ Clone https://github.com/juspay/decision-engine.git
HTTPS git clone https://github.com/juspay/decision-engine.git
SSH git clone git@github.com:juspay/decision-engine.git
CLI gh repo clone juspay/decision-engine
Ankit Kumar Gupta Ankit Kumar Gupta feat: rule validator (#202) 7439544 3 hours ago ๐Ÿ“ History
๐Ÿ“‚ main View all commits โ†’
๐Ÿ“ .config
๐Ÿ“ .github
๐Ÿ“ config
๐Ÿ“ cypress
๐Ÿ“ docs
๐Ÿ“ helm-charts
๐Ÿ“ migrations
๐Ÿ“ migrations_pg
๐Ÿ“ routing-config
๐Ÿ“ scripts
๐Ÿ“ src
๐Ÿ“„ .dockerignore
๐Ÿ“„ .gitignore
๐Ÿ“„ .typos.toml
๐Ÿ“„ build.rs
๐Ÿ“„ Cargo.lock
๐Ÿ“„ Cargo.toml
๐Ÿ“„ CONTRIBUTING.md
๐Ÿ“„ cypress.config.js
๐Ÿ“„ diesel_pg.toml
๐Ÿ“„ diesel.toml
๐Ÿ“„ Dockerfile
๐Ÿ“„ groovy.Dockerfile
๐Ÿ“„ justfile
๐Ÿ“„ LICENSE
๐Ÿ“„ Makefile
๐Ÿ“„ package-lock.json
๐Ÿ“„ package.json
๐Ÿ“„ README.md
๐Ÿ“„ test_euclid.sh
๐Ÿ“„ README.md

Decision Engine

Overview

The Decision Engine system helps in choosing the most optimal payment gateway in real-time for every transaction based on pre-defined rules, success rate, latency and other business requirements. It is a fully modular service that can work with any orchestrator and any PCI-compliant vaults.

Vision

Build a reliable, open source payments software for the world \- which is interoperable, collaborative and community-driven.

Features

The Decision Engine comes with the following features out-of-the box for your payment routing needs. โœ… Eligibility Check โ€“ Ensures only eligible gateways are used, reducing payment failures and improving transaction success.

๐Ÿ“Œ Rule-Based Ordering โ€“ Routes transactions based on predefined merchant rules, ensuring predictable and obligation-driven payment processing.

๐Ÿ”„ Dynamic Gateway Ordering โ€“ Uses real-time success rates and ML-driven optimization to route transactions to the best-performing gateway.

โš ๏ธ Downtime Detection โ€“ Monitors gateway health, dynamically reordering or pausing routing to prevent transaction failures during downtime.

To learn more, refer to this blog: https://juspay.io/blog/juspay-orchestrator-and-merchant-controlled-routing-engine

Architecture

How it can fit into your existing architecture

image

Try it out

Check the SETUP.md for detailed steps to try out the application.

API Reference :

Check the API_REFERENCE.md for more details

Support, Feature Requests, Bugs

For any support, join the conversation in Slack For new product features, enhancements, roadmap discussions, or to share queries and ideas, visit our GitHub Discussions

For reporting a bug, 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].

Contributing

We welcome contributions from everyone\! Here's how you can help:

See CONTRIBUTING.md for detailed guidelines.

Versioning

Check the CHANGELOG.md file for details.

Copyright and License

This product is licensed under the AGPL V3 License.