Product · 23 October 2026
Smart routing,quicker to learn.
Two engine updates: every new provider now gets a fair trial, and a provider that suddenly approves far less loses its traffic within a few dozen payments instead of a few hundred.
The details
What changed.
We tested Smart routing the way it is used: thousands of payments through the real routing engine, against simulated providers whose true approval rates and fees we set and the engine was never told. It has to find them from outcomes, as it does with your traffic. The test now ships with the code and runs before every change to the engine.
It found one thing to fix. New providers share a small trial budget, about 1 payment in 10. The provider picked for a trial still had to outrank the proven ones, which it rarely did, so a new provider that declined one of its first payments could stay unused however well it approves. In the test, one provider approving 95% among nine approving 75% got under 1% of payments. Since engine 3.4.0 the trial payment is tried there first, and the provider with the fewest results gets the next trial, so each one gets its turn. The same test now sends that provider about nine payments in ten.
The second update is about speed. Smart routing remembers a provider's results for weeks, which is right for a steady provider and slow for one that suddenly starts declining. Since engine 3.5.0 each provider also has a short record of its last 50 or so results; when the two clearly disagree, the recent results decide until the long record catches up. In the test, a provider dropping from 93% to 50% approval lost most of its traffic after about 350 payments before, and now within a few dozen. The payment's routing says so: "approving less lately".
Nothing changes for rules that do not use Smart routing, and nothing for you to do. A soft decline on a trial still moves on to your next provider, and Payshen still never sends a payment to a second provider when the first may have charged the card.