Apply Routing rules
Routing is a system of Rules, Strategies, and Routes brought together to function as one mechanism. The main goal of applying Routing is to distribute the payment load in the most applicable way based on the needs of a specific business. Routing operates on the Transaction level right after the Payment Commit is initiated. To establish the correct distribution of the payments it is important to apply the Routing rules.
Create Routing rule
- Go to Processing and choose the Payment scheme you previously created on the grid.
- Navigate to the Payment methods tab of the specific Payment scheme and click the particular Method on the grid.
- Go to the Routing & Cascading tab. Click the Default strategy applied for every Method, then choose the Edit option. Navigate to the Rule tab.
- Each Rule specifies the condition, which consists of three parts: the Condition property, Operator and Value field.
- Choose the Condition property, apply the Operator and insert the Value into the corresponding field.
- To become familiar with all the Properties, Operators, and Value preconditions, look at the tables below.
Routing rules overview
| Condition property → applied | Description | Precondition for the value entity |
| Day of week | The property applies to the day of the week of the current month. | Data type: integer. The value must be greater than or equal to 7 and less than or equal to 1. |
| Day of month | The property covers the day of the month at the present time. | Data type: integer. The value must be greater than or equal to 31 and less than or equal to 1. |
| Payment amount | The Payment amount is set based on the currency used in a Payment Request. | Data type: float. |
| Random initial | The default property which enables you to set a particular number and if the system random number matches the condition you set with a relational operator, the payment can be delivered to a particular Route accordingly. | Data type: integer. The total number of characters in the string should be greater or equal to 1 and less than or equal to 15. |
| Auth 3DS mode | 3DS mode serves as an additional level of protection while the system asks the Cardholder to provide proof of identity and insert a unique code, password, etc. |
You can choose the value from the dropdown list containing:
|
| Auth CVV mode | CVV mode can be required for certain PSPs to enable accepting payments. Thus, you can establish the condition and make a CVV field required for your Customers if needed. | You can choose the value from the dropdown list containing:
|
| Card first 6 | The property covers the Card Bin, which is the first 6 items of a credit or debit card number used to identify which bank or institution issued the card. The Routing condition can be created based on that data. | Data type: integer. The total number of characters in the string should be equal to 6. |
| Card type | The property applies to the Card type that can be chosen and used. The Routing is initiated if the Card type condition is fulfilled. | You can choose the value from the dropdown list containing:
|
| Card network | The property covers the system response to the payment Card network type: Visa, Mastercard, American Express, Discover, Diners Club, China UnionPay, etc. | You can choose the value from the dropdown list containing all supported Card networks. |
| Payment currency | The property corresponds to a currency used when creating a Payment Request. | You can choose the value from the dropdown list containing the overview of all supported currencies. |
| Payment issuer country | The property pertains to the country from where the Payment Request was created. | You can choose the value from the dropdown list containing the supported countries. |
| Payment metadata | The property covers the Metadata included in the Payment Request. The Routing is initiated according to that specific Metadata. | You can enter data into the input key and input value fields. The key is an attribute, and the value is the key parameter. Data type: text, integer, float. |
| Card Successful Payments Day/Week/Month |
The property covers the system response to the number of successful card payments fulfilled per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Card Failed Payments Day/Week/Month |
The property covers the system response to the number of failed card payments fulfilled per day, week or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Card Total Payments Day/Week/Month |
The property covers the system response to all card payments (successful and failed) fulfilled per day, week or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Customer Successful Payments Day/Week/Month |
The property covers the system response to the number of Customer's successful payments fulfilled per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Customer Failed Payments Day/Week/Month |
The property covers the system response to the number of Customer's failed payments fulfilled per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Customer Total Payments Day/Week/Month |
The property covers the system response to the number of all Customer's payments fulfilled per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Card Successful Turnover Day/Week/Month |
The property covers the system response to the total monetary value of successful card transactions per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Card Not Final Turnover Day/Week/Month |
The property covers the system response to the total value of authorized but not yet settled card transactions per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Card Total Turnover Day/Week/Month |
The property covers the system response to the total monetary value of all card transactions per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Customer Successful Turnover Day/Week/Month |
The property covers the system response to the total monetary value of successful Customer’s transactions per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Customer Not Final Turnover Day/Week/Month |
The property covers the system response to the total value of authorized but not yet settled Customer’s transactions per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
| Customer Total Turnover Day/Week/Month |
The property covers the system response to the total monetary value of all Customer’s transactions per day, week, or month accordingly. | Data type: float. The total number of characters in the string should be less than or equal to 15. |
Operators overview
Operators are the relational symbols that set the condition and relation while combining the Property and the Value to establish the Rule. According to the determined Rule, the system chooses the applicable Route when the condition is met.
| Relational symbol/operator → chosen | Description |
| = Equals to | Represents a direct equality between the Property and the Value and shows that the condition is fulfilled if the Property corresponds to the Value. |
| ≠ Not equals | Indicates that the condition can be fulfilled if the Property and the Value are not equal and do not match. |
| > Greater than | Shows that the target Property value should be greater than the specified Value to fulfil the condition. |
| ≥ Greater or equal | Shows that the target Property value should be greater than or equal to the specified Value to fulfil the condition. |
| < Less than | Indicates that the target Property value should be less than the specified Value to meet the condition. |
| ≤ Less or equal | Indicates that the target Property value should be less than or equal to the specified Value to meet the condition and allow the system to choose the appropriate Route. |
| =+ Equals any of | Shows that the Property value should be equal to one of several specified Values. |
| ≠+ Not equals any of | Shows that the Property value is not supposed to be equal to one of several specified Values. |
| = Matches | Indicates an equality but can also include the partial match between the Property and the specified Value. |
| → On a List | Signifies that the Property item or value is included in a List. If the List is created in the system, you can choose it from the dropdown list. If you have not created it previously, click Create List. |
| −\→ Not on a List | Signifies that the Property item or value is not supposed to be included in a List. You can point out a List in the Value field. |
| = Key exists | Shows that the specific key exists within the dataset. |
| = Key not exist | Shows that the specific key does not exist within the dataset. |
| = Key matches | Indicates that the specific key matches the one presented in the dataset. |
Condition properties & Operators matrix
| Operators → Conditions ↓ |
= Equals to | ≠ Not equals | > Greater than | ≥ Greater or equal | < Less than | ≤ Less or equal | =+ Equals any of | ≠+ Not equals any of | = Matches | → On a List | −\→ Not on a List | = Key exists | = Key not exist | = Key matches |
| Day of week | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Day of month | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Payment amount | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Random initial | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Auth 3DS mode | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Auth CVV mode | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card first 6 | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card type | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card network | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Payment currency | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Payment issuer country | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Payment metadata | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| Card Successful Payments Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card Failed Payments Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card Total Payments Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Customer Successful Payments Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Customer Failed Payments Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Customer Total Payments Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card Successful Turnover Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card Not Final Turnover Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Card Total Turnover Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Customer Successful Turnover Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Customer Not Final Turnover Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Customer Total Turnover Day/Week/Month |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Add Group
- Go to the Routing & Cascading tab. Click the Default strategy applied for every Method, then choose the Edit option.
- Navigate to the Rule tab. After creating a Rule, click Add group.
- Choose the logical operator AND/OR depending on what condition you want to establish and what result you aim to get.
| Logical operator | Description |
| AND | Requires all conditions to be true to get the specific result and allow the system to apply a corresponding Route. |
| OR | Requires at least one condition to be true to initiate Routing. |

Updated 4 months ago
