Skip to main content

Enforce Overview

Knowing that a payment succeeded is only half the battle. Your application still needs to know: Which payment rail should be selected? Is the payment truly final? Which features should be unlocked? What happens if a card is refunded next week?

[1. Verified Truth] ➔ [2. Smart Routing & Failover] ➔ [3. Evaluate Finality] ➔ [4. Enforce Entitlements]

SolydFlow Enforce is the runtime policy and execution layer that connects verified financial transactions to application access, payment routing, and customer entitlement lifecycles.


Truth vs. Enforce​

LayerCore QuestionPrimary Responsibility
Truth"What happened financially?"Verifies gateway receipts, evaluates consensus, and commits to the ledger.
Enforce"What should the system do about it?"Routes checkouts, evaluates finality, unlocks local/cloud features, and handles revokals.

The 4 Pillars of Enforce​

SolydFlow structures enforcement into four core capabilities:

PillarCapabilityWhy It Matters
Smart RoutingDynamic payment gateway selection based on currency, region, and uptime.Routes NGN to Paystack/Monnify, KES to M-Pesa, and USD to Stripe automatically.
Provider FailoverIntelligent fallback to backup payment rails during gateway outages.Prevents checkout drops without risking double-debits.
Transaction FinalityDistinguishes between temporary authorizations and irreversible settlements.Prevents granting permanent access on reversible or pending checks.
Entitlement EnforcementReal-time unlocking and revoking of application features.Powers <5ms offline checks on mobile and webhook sync to backends.

Real-World Multi-Market Routing in Action​

Consider a customer subscribing to your app from different regions:

┌───────────────────────────────────────┬────────────────────────────────────────┬───────────────────────────┐
│ Customer Location & Currency │ Enforce Smart Routing Selection │ Resulting Entitlement │
├───────────────────────────────────────┼────────────────────────────────────────┼───────────────────────────┤
│ 🇰🇪 Nairobi, Kenya (KES) │ M-Pesa STK Push (Daraja) │ Unlocks "pro_access" ✅ │
├───────────────────────────────────────┼────────────────────────────────────────┼───────────────────────────┤
│ 🇳🇬 Lagos, Nigeria (NGN) │ Paystack Card or Monnify Virtual Acc │ Unlocks "pro_access" ✅ │
├───────────────────────────────────────┼────────────────────────────────────────┼───────────────────────────┤
│ 🇬🇭 Accra, Ghana (GHS) │ Flutterwave Mobile Money (MTN/Telecel) │ Unlocks "pro_access" ✅ │
├───────────────────────────────────────┼────────────────────────────────────────┼───────────────────────────┤
│ 🇺🇸 New York, USA (USD) │ Stripe Credit Card / Apple Pay │ Unlocks "pro_access" ✅ │
└───────────────────────────────────────┴────────────────────────────────────────┴───────────────────────────┘

Notice that regardless of which payment provider processed the funds or what local currency was charged, Enforce produces a single, unified entitlement: pro_access.


Safe Failover vs. Blind Retries​

Enforce strictly separates route failover from naive charge retries:

  • Naive Failover (Dangerous): Provider A times out ➔ Immediately charge via Provider B ➔ Customer charged twice.
  • Enforce Safe Failover: Provider A times out ➔ Hold intent ➔ Verify whether Provider A debited funds ➔ If confirmed uncharged, safely failover to Provider B.

Explore Enforce Modules​

🧭 Smart Routing

Configure dynamic gateway routing rules by currency and region.

Read Guide →

🛡️ Provider Failover

Resilient payment failover without the risk of duplicate charges.

Read Guide →

⚖️ Transaction Finality

Understanding when a payment is authoritative and irreversible.

Read Guide →

🔑 Entitlement Enforcement

Offline-first feature gating and multi-device access synchronization.

Read Guide →