Routing configurations enable the management of payment flows, ensure compliance, and optimize processing performance, all while maintaining flexibility and control over their payment infrastructure.
With a no-code, customizable platform, you can scale quickly to new geographies, improve payment conversion rates, and diversify risk.
Routing flow
Routing configuration is set up for a channel with the payment method level. This allows operators to manage and optimize payment traffic across multiple payment methods, such as Cards and Digital wallets, Apple Pay and Google Pay.
Each channel corresponds to a product, website, or store. To process payments at the same time, one account can have several channels.
Routing components
Routing configurations consist of several components, each essential for directing and optimizing payment traffic.
- Rule preset sets initial conditions, like blocking payments or enforcing 3DS.
- Rules define how payments are routed based on parameters and logic operators.
- Splits distribute payment traffic across connector accounts.
- Segments configure the processing sequence for payments, including fallbacks.
Rule preset
Rule presets are evaluated before routing rules are applied, ensuring that specific criteria are met before proceeding with the transaction.
Presets are evaluated from top to bottom, with the first matching condition taking precedence over subsequent ones. Each configuration type has its own rule presets. Key condition:
- Block payments
Blocks certain payments. If triggered, the transaction is declined with the decline code 0.04 Payment processing unavailable. - Force 3DS
Determines whether payment processing rules fall under force 3DS. This preset applies to all payments that antifraud system has identified as force 3DS, or provided force3ds true through the Solidgate API .- SCA regulation
A European rule to reduce fraud in online and contactless payments. - Low-value SCA exemption
Allows low-value transactions to skip SCA under PSD2. - TRA SCA exemption transaction handling
Permits low-risk transactions to bypass SCA, reducing friction. - Non-3DS for MIT/MOTO
3DS can often be bypassed or handled differently than standard online payments.
- SCA regulation
- Other PAN only
Specifies that only payments involving other PANs are allowed. - All other payments
Applies to all payments not otherwise categorized by the specific routing presets.
For the Digital wallets payment method, Force 3DS with Other PAN only is included in the Google Pay PAN only preset. This ensures that transactions are routed and processed only for Google Pay PANs with 3DS enforcement.
Each rule preset, except Block payments, includes a Default branch that must be completed. You cannot add rules to the Default branch, as it serves as the base setting. You can configure other branches as needed.
Rules
Routing rules are the core logic that defines how payments are routed through different payment processors (PSPs). These rules consist of parameters and values that can be combined using logical operators.
Rules condition:
- Can be as simple or complex as necessary, with condition nesting supported up to 3 levels.
- Work top-down by priority, meaning that if a payment matches the first rule, it follows that path, and further rules are not checked. Similarly, conditions within a rule operate in the same way.
- Amount USD - represents the total amount of the order.
- Bank - refers to the name of the bank associated with the transaction.
- BIN - defines a list of BINs used for routing based on specific patterns.
- BIN country - defines the country associated with the BIN.
- Card brand - used for the transaction, such as Visa, Mastercard, or other supported brands.
- Card type - specifies the type of card being used.
- Country - specifies the country associated with the customer or transaction for geographic routing.
- Currency - specifies the currency of the order.
- Customer account ID - specifies a unique identifier assigned to the customer's account for tracking.
- Customer email - specifies the email address associated with the customer for communication and transaction purposes.
- Data origin - specifies the origin of the data used in the transaction.
- External MPI - allows for the configuration of conditions based on the presence of external MPI data.
- Fraud risk detected - specifies whether a fraud risk has been detected in the transaction.
- Initiator origin - specifies the origin of the transaction initiator.
- IP address - specifies the IP address of the device used to initiate the transaction.
- Order amount - represents the total amount of the transaction in the original currency.
- Payment method type - defines the type of payment method being used.
- Traffic source - helps identify where the traffic is coming from.
- Website - specifies the website where the transaction is originating from.
- Equal - must exactly match the specified value.
Card brand = Visa - Greater than - must be greater than the specified value.
Amount > 100 - Greater than or equal - must be greater than or equal to the specified value.
Amount ≥ 100 - Less than - must be less than the specified value.
Amount < 100 - Less than or equal - must be less than or equal to the specified value.
Amount ≤ 100 - Not equal - must not match the specified value.
BIN country ≠ US - Not one of - must not match any value from a provided list.
Card type not in [Credit, Debit] - One of - must match any value from a provided list.
Website = one of [site1.com, site2.com]
Splits
Splits define how payment traffic is distributed across different connector accounts.
- Each split is assigned a percentage of traffic, and each group block of rules requires a separate split.
- Sum of all segments in a group must equal 100%.
- Maximum of 20 groups can be defined for a single rule.
Segments
Configuring a segment involves setting up the sequence of steps for a split group.
The list of available options depends on the connector itself, making it flexible and adaptable to the specific configuration of the connector account. Additionally, display whether the connector account supports the acceptance of External MPI Data.
- A maximum of 5 steps can be defined in a group. They can be the same, but the features and descriptors must differ.
- Fallbacks are not available on the Force 3DS branch.
For each segment, it is essential to ensure that the features/descriptors vary, even if the same connector account is used multiple times.
Steps allow fallback routing, directing traffic to MIDs when the initial route fails. Each step level is evaluated in sequence, providing up to 5 levels of fallback routing. Use steps for retry strategies after declines or failures to ensure continuous payment processing.
Stop error codes prevent transactions from proceeding to the next step. These errors indicate fundamental issues with the card, account, or transaction that cannot be resolved by routing to an alternative processor.
Attempting retries would result in the same failure regardless of the payment gateway used, while unnecessarily increasing processing costs and delaying the final response to the customer.
Stop error codes- 0.02 Order expired
- 2.06 Invalid CVV2 code
- 2.08 Invalid card number
- 2.09 Invalid expiration date
- 3.02 Insufficient funds
- 3.12 Closed account
- 4.01 Card is on blacklist
- 4.02 Stolen card
- 4.04 Lost card
- 4.07 Trusted antifraud system
Configure routing
Routing configurations manage payment traffic based on merchant routing rules. A version represents the state of a routing configuration, where Draft indicates it is in development or testing, and Live means it has been published and is in use.
Managing versions is crucial for ensuring smooth updates, preventing disruptions, and maintaining control over the routing setup as configurations evolve through different stages. Key routing statuses for:
- Configuration
- Inactive a configuration that is not currently in use.
- Active a configuration that has been published and is active.
- Version
- Draft a configuration under development or testing.
- Live a configuration that has been published and is active.
When creating routing configurations, operators can view, edit, and manage them for each channel and payment method.
Configurations are versioned, and each version can either be
Draft
or
Live
. When initially created, the configuration is set to
Inactive
.
Once tested and ready, the configuration status can be set to
Active
and published to production, changing the configuration version to
Live
.
- Go to Orchestration > Routing configuration.
- Click on Create routing configuration.
- Select Payment method.
- Choose Channel from the list.
- Enter Title and optionally Description.
- Click on Create.
To copy a route configuration
- Find the routing configuration you need and click on Copy routing configuration.
- In the duplicate configuration modal window, specify the required information:
- Select Payment method enabled and set according to the chosen configuration.
- Choose Channel from the list.
- Enter Title and optionally Description.
- Select Configuration version of the configuration to copy.
- Click on Duplicate.
Rule preset
Via Hub To set the rule preset- Go to Orchestration > Routing configuration.
- Find the routing configuration ID you need and click on it.
- Click on Force 3DS preset and enable the required preset conditions.
- Click on ×.
Rules
Via Hub To set rules- Go to Orchestration > Routing configuration.
- Find the routing configuration ID you need and click on it.
- Find the rule preset you need and click on +.
- Click on New condition and name it.
- Add Rule, Metadata rule or Rule group.
- Click on Save.
- Click on Add rule and set:
- Parameter
- Logic operators
- Value
- Click on Save.
- Click on Add metadata rule and set:
- Data type
- Parameter name
- Logic operators
- Value
- Click on Save.
- Click on Add rule group:
- Choose Rule or Metadata rule, or Rule group and set it.
- Set logic operators.
- Click on Save.
Splits
Via Hub To set splits- Go to Orchestration > Routing configuration.
- Find the routing configuration ID you need and click on it.
- Find the rule you need and click on + Add splits.
- Set % percentage for each group.
Segments
Via Hub To configure the segments- Go to Orchestration > Routing configuration.
- Find the routing configuration ID you need and click on it.
- Find the split group you need and click on Configure segment.
- Select Connector, Account, and Descriptor.
- Set additional settings.
- Click on Save.
View routing
You can search, view, and edit routing configurations and related entities directly from the configuration pages. The search supports the following entity types:
- Configuration ID
Unique identifier for a routing configuration. - Configuration version ID
Identifier for a specific version of a configuration. - Route ID
Unique identifier for a route. - Step ID
Unique identifier for a routing step.
These entities can also be retrieved from the routing log.
Via Hub To view the routing entity on the configuration list page- Go to Orchestration > Routing configuration.
- Navigate to a configuration list page.
- Use the search routing entity list to enter one of the options from the list on the right.
- Configuration - Opens the latest published version of the configuration in a new window.
- Configuration version - Opens that specific version in a new window.
- Route - Opens the version containing that route in a new window. The route is centered and highlighted for easy identification.
- Step - Opens the version containing that step in a new window. The step is displayed in the drawer and highlighted.
- Go to Orchestration > Routing configuration.
- Find the routing configuration ID you need and click on it.
- Navigate to a specific configuration version page.
- Use the search routing entity list to enter one of the options from the list on the right.
- Configuration version - If the searched version matches the current version, it opens here and highlights. If it is a different version, it opens in a new window and highlights.
- Route - If the route is in the current version, it opens here, centers, and highlights the route. If the route is in a different version, it opens that version in a new window, centers, and highlights the route.
- Step - If the step is in the current version, it opens here, shows it in the drawer, and highlights it. If the step is in a different version, it opens that version in a new window, shows it in the drawer, and highlights it.
Track routing
Routing event log provides detailed visibility into the sequence of actions that occurred with a specific order processed. It displays the complete routing journey, helping you understand how each transaction was processed and troubleshoot any issues. The routing event log shows the following event types:
- Step skipped
Indicates when a routing step was skipped, along with the reason for skipping. - Step selected
Shows which routing step was selected for processing. - Payment blocked
Displays when a payment was blocked, if blocking rules are configured. - 3DS decision
Shows the 3DS authentication decision and the reason for that decision.
- Go to Payments > Orders.
- Find an order that was processed through routing configuration and select it to go to the order details.
- Scroll down and click on the Routing log.
Tracking routing provides visibility into routing decisions and step processing, including when and why steps are skipped during payment processing.
Step skip reason- SKIP_FORM_SUPPORT - form support is not available
- SKIP_CONNECTOR_ACCOUNT_DEACTIVATED - connector account has been deactivated
- SKIP_CONNECTOR_INTEGRATION_DEACTIVATED - connector integration has been deactivated
- SKIP_CURRENCY_SUPPORT - currency is not supported
- SKIP_CARD_BRAND_SUPPORT - card brand is not supported
- SKIP_AUTH0_SUPPORT - Auth0 support is not available
- SKIP_EXTERNAL_MPI_SUPPORT - external MPI support is not available
- SKIP_COF_DPAN_SUPPORT - CoF DPAN support is not available
- SKIP_COF_PAN_SUPPORT - CoF PAN support is not available
- SKIP_MOTO_SUPPORT - MOTO support is not available
- SKIP_NONSTANDARD_CURRENCY_SUPPORT - non-standard currency support is not available
- SKIP_3DS_DISABLED - 3DS is disabled
- SKIP_TRA_CONDITIONS_NOT_MET - TRA conditions are not met
- SKIP_ZIP_CODE_MISSING - zip code is missing