Rules you configure
Routing is a stored rule set evaluated in priority order, not a fixed table in code. Rules are added and reordered without a deploy.
Routing is an infrastructure layer, not a setting. Every transaction is scored against currency, region, card brand, merchant category, risk tier and amount band, matched to a rule set you control, and sent to a processor that is passing its health check — with the whole decision runnable as a simulation first.
Rules are matched on these attributes in priority order. Any of them may be left unset, in which case the rule matches every value.
Routing does not produce a single answer — it produces a ranked set, and uses the first member of it that is healthy. The rest stay in order behind it, which is what makes a failover instant rather than a recovery.
A processor only enters the set while its configuration is enabled and its health check is passing. A decline is an answer and stops here; an infrastructure fault moves down the set.
The same sequence runs for a card acceptance, a transfer and a payout. What changes between them is which rules match, not how the decision is made.
A routing layer that cannot be explained after the fact is a liability. Every choice here is made from stored rules, recorded as it happens, and reproducible.
Routing is a stored rule set evaluated in priority order, not a fixed table in code. Rules are added and reordered without a deploy.
Where several rules tie on priority, traffic divides by weight. The draw is seeded on the transaction, so a retry lands on the same processor as the original attempt.
A processor is eligible only while its configuration is enabled and its health check is passing. An unhealthy processor is skipped rather than attempted.
The remaining matching rules form an ordered fallback. Each failover is written as its own record, so the path a payment actually took can be read back.
The same decision runs as a simulation that touches nothing — the routing a rule change would produce can be inspected before it is live.
Each attempt carries its own idempotency key, derived per processor, so a failover can never present as a second charge.
The rules the engine follows, stated plainly — including where a decision stops and a deployment setting takes over.
BINK does not publish routing latency, throughput or success-rate figures. Nothing on this page is a performance claim.
Routing is deliberately not part of your request payload. The point of an orchestration layer is that the integration does not change when the path does.
Each of these is a rule scoped to something the engine already matches on — not a feature to be requested.
Scope a rule to a currency and region so payments in that corridor resolve to the processor you have chosen for it, without touching anything else.
Give two rules the same priority and different weights to shift a proportion of volume, with retries pinned so a payment never changes processor mid-attempt.
Route above and below an amount differently, using the minimum and maximum bounds a rule can carry.
Scope a rule to a single company where a commercial arrangement or a risk profile calls for its own path.
A routing decision is the first step of a longer path. These are the surfaces that take over once a processor has been chosen.
One integration, and the path is decided for you — on rules you can read, change and simulate.