← back to projects

Payment Gateway Integrations

2019

Reliable integrations into Egyptian payment channels — Fawry, Aman, and Sahel — with routing and failover at user scale.

Results

What it did

MillionsUsers Served
3Channels Integrated
FailoverAutomatic Retry
ResilientNo Single Point

The problem

Why it needed building

Utility and payment systems needed dependable connections to Egyptian payment channels, each with its own quirks and availability. A single failing provider could not be allowed to block payments for millions of users.

The approach

How it works

Integrated Fawry, Aman, and Sahel behind a routing layer that picks a channel, detects failures, and fails over to an alternate provider — so payments keep settling even when one channel degrades.

  1. Payment Request
  2. Channel Routing
  3. Failure Detection
  4. Settlement
  1. 01
    Payment RequestNormalized request enters the routing layer
  2. 02
    Channel RoutingRouter selects a provider — Fawry, Aman, or Sahel
  3. 03
    Failure DetectionTimeouts and errors trigger an automatic failover
  4. 04
    SettlementPayment settles via the first healthy channel

Live demo

Try it yourself

EGP 250
→
Router
→
Fawry
Aman
Sahel
Idle — send a payment to route it.

Illustrative gateway routing with failover across Fawry / Aman / Sahel — send a few times to see a retry.

Tech stack

Built with

.NET CoreNode.jsREST APIsPostgreSQLFawry/Aman

Working on something like this?