Payment routing
Payment routing on your rules
For each transaction, your application picks the provider, the merchant account and an ordered fallback list. Orchestra carries it out.
Free to start • No credit card required
Route across providers without building each one
Choosing a provider per transaction normally means building and maintaining an integration for each one. With Orchestra you build one integration, keep your own provider accounts, and decide where each payment goes. See how provider choice affects processing fees.
Route across 130+ providers
How Orchestra solves it
Before Orchestra
Routing you build yourself
- One integration per provider
- Routing logic written and maintained in house
- A new market or provider means another build
- Each provider’s responses and decline reasons in a different format
- Manual switches when a provider is down
- Provider credentials stored in your own systems
With Orchestra
Routing with Orchestra
- One integration to 130+ providers
- Choose the provider and merchant account on each transaction
- Set an ordered fallback list; Orchestra works down it until one succeeds
- One standardized response, with decline reasons normalized
- New providers added on request, in under two weeks, at no cost
- Merchant credentials kept in Orchestra’s vault
Free to start • No credit card required
Your rules, on every request
Your application decides where each payment goes, using whatever logic suits your business, and sends the decision with the request. There is no routing screen to configure and nothing to deploy on our side.
Rules our customers use
By cost
Send each transaction type to the provider you pay least for it
By geography
EU transactions to EU-based processors
By merchant
Each of your merchants charged through its own provider account
Combined
Any mix of the above, with a fallback list behind it
// Your application picks the provider, merchant account and fallback order for each transaction
const response = await fetch('https://api.orchestrasolutions.com/PaymentGateway/charge', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-Api-Key': 'YOUR_API_KEY'
},
body: JSON.stringify({
amount: 25.00,
currency: 'USD',
paymentGatewayAccountName: 'stripeProduction',
fallbackUpgs: [
{ paymentGatewayAccountName: 'adyenBackup' },
{ paymentGatewayAccountName: 'worldpayTertiary' }
],
card: {
cardNumber: '@nQGywsQE9gbURtrXEjTZwtWqeMdK9nsO',
cardHolderName: 'Jane Smith',
expirationMonth: 12,
expirationYear: 2027
}
})
});
const result = await response.json();
Test routing in the sandbox immediately
One integration, every routing decision yours
Orchestra does not decide where your payments go. You do, and Orchestra takes on the work of connecting to every provider you choose.
All routing features included on every plan
Provider per transaction
Choose the PSP and merchant account on each request
Ordered fallback list
If a provider fails, Orchestra tries the next one in your list
Your own logic
Route by country, currency, card type, merchant or anything else you know
Insufficient-funds recovery
A partner model picks the best time to retry an insufficient-funds decline
Normalized responses
One response format and one set of decline reasons, whichever provider ran the payment
Change routing any time
Routing travels with each request, so a change applies to the next transaction
The same security on every route
Cards are captured and stored by Orchestra, so the provider you route to does not change how card data is handled.
Free to start • No credit card required
PCI DSS Level 1
Certified card capture and storage
ISO/IEC 27001:2022
Certified information security management
Portable vault
A card stored with Orchestra works with any connected provider


