LIVE · v04.2.1 routing.engine = ✓ 18/18 PSPs p95 = 240ms · auth = 98.7% EUR · UTC · cluster eu-west-3
~/console $ open route

PRODUCT · routing engine · cards · A2A · wallets

One API. 18 PSPs. The highest auth rate every time.

Whaliepay routes every transaction through the rail with the best predicted success for that exact shopper. Cascading retries on failure, one tokenisation vault across all PSPs, one ledger across the lot — in 240ms p95.

18PSPs integrated
240msp95 end-to-end
+4.6%avg auth uplift
99.99%platform SLA
// architecture

One routing engine, eighteen rails, zero PSP lock-in

Your merchant code calls one Whaliepay API. We evaluate the rule set, the live success-rate matrix, the shopper signals — and forward to the rail that wins. If the rail declines, we retry on the next-best within 200ms. The shopper never sees the failure. Your finance team sees one ledger.

your merchantPOST /v1/payments
whaliepay · routing engine14ms decision · 240ms p95
winning railauth, capture, settle
Stripe
Adyen
Checkout.com
Worldline
Mollie
Braintree
Hipay
Klarna
Trustly
PPRO
NUVEI
dLocal
Rapyd
Razorpay
Stitch
Yapily
Tink
GoCardless

Whaliepay never holds funds. Money flows from the shopper to your PSP to your bank on the existing rails. We sit in the routing decision and the reconciliation step — no merchant of record, no holding period, no extra licensing.

// 4 core capabilities

What the routing engine actually does

Four pillars run under one engine. Each one is exposed in the console, each one is auditable end-to-end, each one shows you the data behind the decision.

01

Smart routing — auth-rate ranking, real time

The engine ranks the eligible rails for each shopper using the live success-rate matrix (PSP × BIN × country × method × hour band × amount band), shopper history, and twelve signal features. The top-ranked rail wins the transaction. Re-ranked every 4 seconds, never stale.

  • Decision in 14ms median, 28ms p95
  • Re-ranking refresh every 4s
  • Signal weights tunable per merchant
  • Every decision logged for audit
02

Cascading retries — invisible to the shopper

When a charge declines on rail A, the engine retries on rail B within 200ms — same card, same shopper, same amount — without the shopper ever seeing the failure. Median uplift: +4.6% auth across our customer base, with 1.4 retries per declined attempt on average.

  • 200ms retry window, p95
  • Soft-decline vs hard-decline taxonomy
  • Per-merchant retry depth (1-4)
  • No double-charge guarantee
03

Token vault — PCI-compliant, cross-PSP

Cards are tokenised once and reusable across every connected PSP. Migrate acquirers, add a new region, swap a rail — no need to re-collect cards from your customers. The vault is PCI-DSS Level 1, hosted EU-only by default, with HSM-backed key wrapping and quarterly rotation.

  • Network token + PAR fallback
  • Visa & Mastercard token-on-file
  • PCI-DSS L1 audited vault
  • EU-hosted by default
04

Unified ledger — one reconciliation

One double-entry ledger across all PSPs, A2A providers and wallets. Auto-reconciled to your bank within 4 hours of settlement, with discrepancies surfaced for finance. Closes the month from one screen, not from eighteen PSP exports.

  • Real-time double-entry posting
  • PSP-stamped journal lines
  • 4h bank reconciliation SLA
  • NetSuite, Sage, Pennylane, SAP exports
// feature deep dives

Six controls payments leads actually want

Whaliepay is built by people who have run payments inside merchants of all sizes. These six features are the ones you'll touch every week — not just the ones we put on the brochure.

RULES

Merchant rules engine

Write routing in plain language. "EU card under €100 → Adyen, Stripe fallback. SEPA → Mollie." Version-controlled like code, deploy with a click, roll back in one tap if the data disagrees.

A/B

A/B routing tests

Split traffic between two rule sets, watch the auth rate diverge in the console, promote the winner when you've seen enough volume. The engine handles allocation and statistical significance.

FRAUD

Fraud signal aggregation

We collect the fraud signals from every PSP, normalise them into one shopper-risk score, and feed it back into the routing decision. Stripe Radar, Adyen RevenueProtect, Forter, Riskified — one score.

3DS

3DS exemption optimizer

For SCA-mandated regions, we route low-risk shoppers through frictionless 3DS, and challenge only when the issuer is likely to authenticate. Average frictionless rate across our base: 71%, up from 38% pre-Whaliepay.

MCC

MCC overrides

If your business sits in a high-decline MCC (gaming, digital goods, subscription), we let you route by sub-MCC, by SKU, or by basket composition — the kind of granularity a single PSP would never offer.

BIN

BIN-level routing

Routing decisions go down to the issuing BIN. We've watched a single BIN range gain +12% auth by routing through a different acquirer — the engine spots that pattern in days, not in quarters.

// technical specs

Numbers we measure ourselves on, every quarter

If we can't meet these targets for one full quarter, we credit the affected customers a routing-month for free. Published on /status.html, audited by NCC Group, never adjusted retrospectively.

latency · p50 98ms end-to-end median, cards
latency · p95 240ms end-to-end p95, cards
latency · p99 480ms end-to-end p99, cards
throughput 28k TPS sustained, per region
SLA · platform 99.99% measured monthly
decision · median 14ms routing engine internal
retry · window 200ms retry-to-PSP p95
webhook · delivery 99.97% within 60s, 30-day
eu-west-3 · primary
Paris (FR)
3 AZ · GDPR · default region for EU merchants
us-east-1
Ashburn (US)
3 AZ · SOC 2 · default for North-American merchants
ap-southeast-2
Sydney (AU)
2 AZ · APAC merchants & AU dollar settlement
// integration matrix

18 PSPs, A2A providers and wallets

Connect what you already have. Whaliepay shipped its first PSP integration in late 2021 — every subsequent one has been put through the same shadow-mode validation: 48 hours mirroring your live traffic, before any production routing.

LIVE
Stripe
EU · US · UK · APAC · since 2021
cardswalletsSEPA
LIVE
Adyen
EU · US · UK · since 2021
cardswalletsSEPA
LIVE
Checkout.com
EU · UK · MEA · since 2022
cardswallets
LIVE
Worldline
EU · since 2022
cardsSEPA
LIVE
Mollie
EU · since 2021
cardsiDEALSEPA
LIVE
Braintree
US · EU · since 2022
cardsPayPal
LIVE
Hipay
EU · since 2023
cards
LIVE
Klarna
EU · US · since 2023
BNPL
LIVE
Trustly
EU · US · since 2023
A2A
LIVE
PPRO
EU · APAC · LATAM · since 2023
LPMs
LIVE
NUVEI
Global · since 2024
cardsLPMs
LIVE
dLocal
LATAM · APAC · MEA · since 2024
cardsLPMs
LIVE
Rapyd
Global · since 2024
cardsLPMs
LIVE
Razorpay
India · since 2025
cardsUPI
LIVE
Stitch
Africa · since 2025
A2A
LIVE
Yapily
EU · UK · since 2025
A2A
LIVE
Tink
EU · since 2025
A2A
LIVE
GoCardless
EU · UK · since 2025
SEPA DDBACS

See the full integration list →

// wh-cli

Watch a routing decision happen in real time

This is the live tail of our wh-cli, hooked into the staging routing engine on this site's load. Every line is a real decision: signal collection, rule evaluation, rank, forward, retry on failure.

wh@cluster eu-west-3 ~/cli $ route.tail --live --merchant=halcyon 15:02:14.281 tx_2a91f3 · €342.00 EUR · BIN 532112 (FR) · cards 15:02:14.295 signals.gather ok · 14ms · auth_rate(stripe-eu) = 99.2% · auth_rate(adyen-eu) = 98.4% 15:02:14.295 rules.evaluate ok · matched rule EU_CARD_PRIMARY_STRIPE 15:02:14.296 rail.rank ok · stripe-eu (0.992) > adyen-eu (0.984) > mollie (0.978) 15:02:14.297 rail.forward → stripe-eu · attempt 1/3 15:02:14.439 stripe-eu.auth ✓ approved · 142ms · auth_code 7A2B91 15:02:14.441 tx_2a91f3 CAPTURED · total 160ms · route stripe-eu · 1/3 attempts 15:02:14.620 tx_2a91f4 · €88.50 EUR · BIN 412341 (IT) · cards 15:02:14.634 signals.gather ok · 14ms · auth_rate(adyen-eu) = 99.1% · auth_rate(stripe-eu) = 96.3% · IT cards 15:02:14.635 rules.evaluate ok · matched rule EU_CARD_IT_ADYEN_PRIMARY 15:02:14.638 rail.forward → adyen-eu · attempt 1/3 15:02:14.798 adyen-eu.auth ✗ declined · do_not_honor (soft) · 160ms 15:02:14.799 rail.retry → stripe-eu · attempt 2/3 15:02:14.942 stripe-eu.auth ✓ approved · 143ms · auth_code 9F4D77 15:02:14.944 tx_2a91f4 CAPTURED · total 324ms · route stripe-eu · 2/3 attempts 15:02:15.108 tx_2a91f5 · €1,240.00 EUR · BIN 553200 (DE) · cards 15:02:15.124 signals.gather ok · 16ms · 3DS required (SCA, amount > €100) 15:02:15.126 3ds.exempt evaluating · risk_score 0.08 (low) · frictionless eligible 15:02:15.128 rail.forward → adyen-eu · 3ds.frictionless · attempt 1/3 15:02:15.310 adyen-eu.auth ✓ approved frictionless · 182ms · auth_code 3C8F22 15:02:15.312 tx_2a91f5 CAPTURED · total 204ms · route adyen-eu · 1/3 attempts · 3DS frictionless [stream live · re-render every 4s · press q to quit]

Send us one month of declines. We'll model the uplift.

Free routing audit on your real data. Signed NDA, results in 5 working days, projected auth-rate uplift, FX savings and retry-window impact sent back as a PDF.