Manage routing in Hub to control payment paths, raise approval rates, and keep changes auditable with rollback.
Configure routing
Routing configurations manage payment traffic by merchant rules. A version is the state of a configuration: Draft for development or testing, and Live after publish.
Version control keeps updates safe and reversible. Key statuses:
- Configuration
- Inactive a configuration that is not currently in use.
- Active a configuration that has been published and is active.
- Archived hidden from the default list and still recoverable through the archived filter.
- 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 as
Draft
or
Live
. A new configuration starts as
Inactive
.
After testing, set the status to
Active
and publish. The version becomes
Live
.
Move an unused
Inactive
configuration to
Archived
. Restore it later to
Inactive
.
- Go to Orchestration > Routing configurations.
- 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
Hub To set the rule preset- Go to Orchestration > Routing configurations.
- 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
Hub To set rules- Go to Orchestration > Routing configurations.
- 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.
To set rule
- Click on Add rule and set:
- Parameter
- Logic operators
- Value Individual values or a value group when the parameter supports it.
- Click on Save.
- Select the values in the condition.
- Click on Save selected.
- Enter a Group name.
- Click on Save.
Saved groups appear at the top of the value list for that parameter. To edit, hover the group name, click on Edit, then click on Save. If a group is deactivated, it is hidden when you add or change rules. Existing rules that already use the group keep the same values and continue to be evaluated as before.
Value groups apply only to Country, Bank, BIN country, Card brand, Card type, and Currency conditions. Each group is tied to one parameter. A Country group cannot be reused on BIN country. Groups are visible only within your account.
To set metadata rule
- 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
Hub To set splits- Go to Orchestration > Routing configurations.
- 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
Hub To configure the segments- Go to Orchestration > Routing configurations.
- 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.
Bulk operations
Bulk operations help maintain large routing setups without manual, rule-by-rule editing. Use them to reuse one configuration across multiple channels or to update connector accounts and descriptors across an entire configuration.
Every operation produces drafts only. The active configuration continues to process payments until a draft is explicitly published from the Routing configurations page.
Website, connector account, and descriptor alignment is validated throughout the flow. The system aligns values automatically where possible and surfaces any mismatch as a conflict that must be resolved before changes can be saved.
Both operations support Import mapping and Download example. Use them to prepare mappings offline, save them, and reuse them in future operations.
Propagate changes
Copy a source configuration to other channels within the same payment method group. The routing logic is reused, while connector accounts and descriptors are re-aligned to each target channel’s website.
Hub To propagate changes across channels- Go to Orchestration > Routing configurations.
- Find the routing configuration you need and click on the action button ⋮.
- Click on Propagate changes.
- Select target channels from the channel list. Each channel is flagged as Has configuration or New configuration.
- Enable Override existing channel configurations to replace configurations on channels that already have one. On publish, the new draft supersedes the current configuration. When the toggle is disabled, a new inactive configuration is created for the channel instead, and the existing configuration remains untouched.
- Align each selected channel one by one:
- Map its Connector accounts and Descriptors in a similar way to the Replace connector accounts flow.
- Resolve feature conflicts before moving to the next channel.
- Click on Save drafts.
Replace connector accounts
Replace connector accounts or descriptors within a single configuration without breaking step-level features, instead of editing each segment manually.
Hub To replace connector accounts- Go to Orchestration > Routing configurations.
- Find the routing configuration you need and click on the action button ⋮.
- Click on Replace connector accounts.
- Define the mapping. The system lists every connector account and descriptor used in the configuration. For each row:
- Select a new Connector account, or keep the current one to rewrite only the descriptor.
- Set a new Descriptor. Dynamic descriptors are editable, while static descriptors are locked.
- Leave the row unchanged to keep the current account and descriptor as is. Unchanged rows are not affected by the operation.
- Optionally, use Import mapping or Download example to prepare the mapping offline.
- Click on Continue to preview and review the change summary: routes changed, steps changed, and conflicts. Conflicts are sorted first and must be resolved before saving.
- Click on Save as draft.
View routing
List, search, and open routing configurations in Hub or through the API.
API Send a request to the list routing configurations API v2 endpoint.- Filter by payment_method_group with EQ : CARD , DIGITAL_WALLET , or MERCHANT_MANAGED_NETWORK_TOKEN . Include channel_id for multi-channel keys.
- Paginate with next_page_token . Omit it on the first request.
- Pass id and latest_published_version_id to get routing configuration API v2 or get routing configuration version API v2 .
Hub Search by routing entity supports these types:
- Configuration ID
Unique identifier for a routing configuration. - Configuration version ID
Identifier for a specific configuration version. - Route ID
Unique identifier for a route. - Step ID
Unique identifier for a routing step.
To view routing entities on the configuration list
- Go to Orchestration > Routing configurations.
- Navigate to a configuration list page.
- In the routing entity search field, enter a configuration ID, configuration version ID, route ID, or step ID as described beside this list.
- 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 that contains that route in a new window. The route is centered and highlighted for easy identification. - Step
Opens the version that contains that step in a new window. The step is shown in the drawer and highlighted.
- Go to Orchestration > Routing configurations.
- Find the routing configuration ID you need and click on it.
- Navigate to a specific configuration version page.
- In the routing entity search field, enter a configuration version ID, route ID, or step ID as described beside this list.
- Configuration version
Opens here and highlights when it is the current version. Otherwise opens in a new window and highlights. - Route
Centers and highlights the route in the current version, or opens the matching version in a new window. - Step
Opens in the drawer and highlights in the current version, or opens the matching version in a new window.
Hub Search by params filters routes on a configuration version page by condition parameters. To search routes by condition parameters
- Go to Orchestration > Routing configurations.
- Open the routing configuration.
- Click Search by params.
- Open Search for routes where and add conditions:
- Condition parameter.
- Operator offered for that parameter. The default is Contains all.
- One or more values.
- Between rows, set AND or OR.
- Click Search and apply to see how the results are shown.
- Show only matching
Other branches collapse or hide. A banner can note that only selected branches are shown. - Highlight matches
Matching routes stand out. Other branches stay visible but de-emphasized. Use Show all or Deselect all to reset.
Track routing
Track routing activity for a configuration or for individual transactions:
- Track routing configuration
Full published route tree with route sets, rules, splits, segments, and cascade steps. - Routing events report
CSV export of routing decisions for orders in a selected date range. - Routing event log
Full routing journey for one order in Hub.
Track routing configuration returns the setup. The routing events report returns transaction-level decisions.
Track routing configuration
Track routing configuration returns the full route tree for a version. Use it to audit changes, copy logic across environments, or store an external snapshot of published routing.
API To track the latest published version when a routing configuration changes, set up routing configuration events first, then retrieve the version through the API.- Set up credentials API v2 and webhook endpoints.
- When a routing configuration version is published, receive the routing configuration version published Webhook notification.
- From the webhook payload, use
data.routing_config.idas config_id anddata.routing_config.latest_published_version_idas the version id . - Send a request to the get routing configuration version API v2 endpoint with config_id and id .
- Go to Orchestration > Routing configurations.
- Find the routing configuration you need and click on it.
- Navigate to the configuration version you need.
- In the Configuration details section, click on Export.
Routing events report
The report lists routing decisions for orders in a selected period. Each row covers selected and skipped steps, 3DS decisions, and the connector account used.
Use it to investigate performance, debug processing, and confirm that configurations behave as expected. Unlike track routing configuration, this export does not return the route tree.
API Use the Routing events API v1 report for order-level routing data: configuration and version, route and step details, 3DS decisions, and the selected connector account.
Routing events data is unloaded using the
created_at parameter by default, reflecting the most recent updates to the records.
To create a report
- Make a routing events API v1 request with date range parameters date_from and date_to .
- Receive the report URL
report_urlin the response. - Download the report in CSV format using the
report_idfrom the URL and authorization credentials.
Since the report is prepared asynchronously, it may take some time to become ready for download. If the report is not ready, the API reference returns the corresponding status code:
- 200 - authentication failure. Double-check your access to the Solidgate API.
- 204 - report is not yet ready. Wait a little longer for it to be generated.
- 302 - redirect to a one-time S3 download report link.
- 404 - report was not found.
- 410 - report is unavailable, expired.
Please note that the report is only available for 30 days from its generation date. After that period, it is no longer accessible. Hub To create a routing events report
- Go to Reports&Exports.
- In the top-right corner, click on +Create report.
- In the pop-up window, fill in the required details:
- Select the Routing events report type
- Select one or multiple channels
- Define a date range of up to 36 days
- Optionally, modify the auto-generated file name
- Click on Create.
Once confirmed, reports are generated for each selected channel. - Click on Download to save and access the report.
order_id string
Description
Order identifier defined by the merchant.
Example
923bb4e6-4a5f-41ec-81fb-28eb8a152e55
Description
Order identifier generated by Solidgate.
Example
psp_order_1samrzwv8my
Description
Payment identifier returned by the external provider.
Empty whenconnector_id is solidgate_acquiring.
Example
charge_64789DFS3827563HGF56
Description
Transaction identifier returned by the external provider.
Empty whenconnector_id is solidgate_acquiring.
Example
5019d00bb70f82cd42f6bc654cbdfcbd63a9b5b1dbd6a
Description
Transaction status reported by the provider for the routing step.
created- the transaction has been createdprocessing- the transaction is being processedverify- the transaction is awaiting verification (such as 3DS)success- the transaction completed successfullyfail- the transaction failed
Example
success
Description
Error codes Guide returned by the provider for a failed transaction.
Can benull.
Example
3.08
Description
Identifier of the routing configuration applied to the order.
Example
cfg_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Identifier of the specific configuration version that processed the order.
Example
cfgv_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Human-readable name of the routing configuration.
Example
EU cards routing
Description
Sequence number of the configuration version applied to the order.
Example
5
Description
Payment method group the routing configuration applies to.
carddigital_walletmerchant_managed_network_token
Example
card
Description
Identifier of the route within the configuration version.
Example
rt_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Human-readable name of the route.
Example
Visa EU
Description
Stable analytical route ID.
Persists across versions until the route changes, then regenerates. For merchant analytics over time.
Example
art_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Indicates whether the order matched the Default branch of the rule preset.
Example
false
Description
Type of rule preset the route belongs to.
block_payments- the route blocks matching paymentsforce_3ds- the route forces 3DS authenticationgoogle_pay_pan_only- the route applies to Google Pay PAN payments onlyany- the route applies to payments not covered by other presets
Example
force_3ds
Description
Sequence number of the step within the route, starting with 1 for the primary step.
Example
1
Description
Identifier of the routing step.
Example
stp_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Stable analytical step ID.
Persists across versions until the step changes, then regenerates. For merchant analytics over time.
Example
ars_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Stable analytical ID for a split group.
Persists across versions until the cascade changes, then regenerates. For merchant analytics over time.
Example
arc_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Reason a routing step was skipped. For the full list of values, see the step skip reason reference above.
Empty when the step was selected for processing.Example
SKIP_CONNECTOR_ACCOUNT_DEACTIVATED
Description
Indicates whether 3DS authentication was forced for the step.
Example
true
Description
Reason 3DS was forced. Values follow the Force 3DS preset branches:
antifraudscaclientexternal_mpicustom_rule
is_force_3ds is false.
Example
sca-regulation
Description
Exemption applied to 3DS authentication, such as a low-value or TRA SCA exemption.
Empty when no exemption was applied.Example
low-value
Description
Processing method applied at the step.
card- card paymentnetwork_token- network token paymentpsp_token- PSP token paymentcof- card-on-file paymentdigital_wallet- digital wallet payment
Example
card
Description
Descriptor used for the transaction at the step.
Example
google.com
Description
Identifier of the connector account selected for the step.
Example
ca_01HV9Z2K3M4N5P6Q7R8S9T0U1V
Description
Human-readable name of the connector account.
Example
Acquirer EU - Visa
Description
Identifier of the connector that processed the step.
Example
solidgate_acquiring
{
"order_id": "923bb4e6-4a5f-41ec-81fb-28eb8a152e55",
"psp_order_id": "psp_order_1samrzwv8my",
"provider_payment_id": null,
"provider_transaction_id": null,
"provider_transaction_status": "success",
"provider_transaction_error_code": null,
"configuration_id": "cfg_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"configuration_version_id": "cfgv_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"configuration_name": "EU cards routing",
"version": 5,
"payment_method_group": "card",
"route_id": "rt_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"route_name": "Visa EU",
"analytics_route_id": "art_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"is_default": false,
"precondition_type": "force_3ds",
"step_number": 1,
"step_id": "stp_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"analytics_step_id": "ars_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"analytics_segment_id": "arc_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"step_skip_reason": null,
"is_force_3ds": true,
"force_3ds_reason": "sca-regulation",
"force_3ds_exemption": null,
"processing_method": "card",
"descriptor": "google.com",
"connector_account_id": "ca_01HV9Z2K3M4N5P6Q7R8S9T0U1V",
"connector_account_name": "Acquirer EU - Visa",
"connector_id": "solidgate_acquiring"
}
Routing event log
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 is not supported
- SKIP_3DS_DISABLED - 3DS is turned off
- SKIP_TRA_CONDITIONS_NOT_MET - TRA conditions are not met
- SKIP_ZIP_CODE_MISSING - zip code is missing