Use Case

Multi-Rail Payment Orchestration

Improve reliability and conversion by routing payments across multiple rails with a single API.

Problem

Each rail has different availability and conversion rates. Orchestration reduces failed payments and latency.

Architecture
Application
Orangepill Routing Engine
Payment Attempt
Payment Rails (Cards, Bre-B, Wallets, Bank Transfers)
Confirmation

Implementation

  1. 1Declare allowed payment methods for the transaction.
  2. 2Create a payment with routing preferences.
  3. 3Use retries and failover when a rail declines.
  4. 4Capture the unified payment status for fulfillment.
Create payment with routing
await orangepill.payments.create({
  amount: 50000,
  currency: "COP",
  allowed_methods: ["bre_b", "card", "wallet", "bank_transfer"]
})

Production considerations

  • Use idempotency keys for retries and replay protection.
  • Monitor rail-level conversion and latency.
  • Set routing rules by amount, currency, or risk profile.
  • Reconcile multi-rail settlements in a single ledger.

Start building with Orangepill

Get access to programmable financial infrastructure and launch faster.