{"id":16304,"date":"2024-03-20T09:13:35","date_gmt":"2024-03-20T08:13:35","guid":{"rendered":"https:\/\/docs.centralpay.com\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/"},"modified":"2026-08-12T15:40:48","modified_gmt":"2026-08-12T13:40:48","slug":"anti-fraud-services","status":"publish","type":"docs","link":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/","title":{"rendered":"Anti-fraud services"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">1. Organization of anti-fraud services<\/h2>\n\n<p class=\"wp-block-paragraph\">Anti-fraud services are segmented into 4 tools:<\/p>\n\n<ul class=\"wp-block-list\">\n<li><strong>Whitelist<\/strong><br \/>The purpose of the &#8220;whitelist&#8221; is to make the application of a transaction acceptance rule selective. It becomes inoperative for identified customers, VIPs, or trusted customers who are included in a &#8220;whitelist&#8221;. &#8220;Whitelists&#8221; apply to customer-specific data, such as their bank card number or IP address. This feature makes it possible to be less restrictive for certain user populations.   <\/li>\n\n\n\n<li><strong>Blacklist<\/strong><br \/>The &#8220;blacklist&#8221; service makes it possible to refuse payments. As with &#8220;whitelists&#8221;, &#8220;blacklists&#8221; apply to data specific to the cardholder (card, IP, phone, email). <\/li>\n\n\n\n<li><strong>Transaction acceptance rules<\/strong><br \/>This tool makes it possible to build the specific rules that define the conditions for accepting a payment.<\/li>\n\n\n\n<li><strong>Anti-fraud scoring<\/strong><br \/>The scoring service detects potentially fraudulent transactions based on cross-analysis of multiple payment-related data points.<\/li>\n<\/ul>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\">The transaction processing phases are always executed in this order.<\/p>\n\n<p class=\"wp-block-paragraph\">If the input data meets all the conditions of the defined &#8220;whitelist&#8221;, the &#8220;blacklist&#8221; service will not be executed and the transaction will be processed normally.<\/p>\n\n<p class=\"wp-block-paragraph\">If the input data meets one of the conditions of the defined &#8220;blacklist&#8221; and is not included in the &#8220;whitelist&#8221; service, the transaction will be refused and the &#8220;acceptance rule&#8221; service will not be executed. Each service is executed top-down with respect to the CentralPay actor hierarchy, which means that a platform can apply its anti-fraud service settings to its merchants, but the reverse is not possible. <\/p>\n\n<h2 class=\"wp-block-heading\">2. Fraud scoring tool<\/h2>\n\n<p class=\"wp-block-paragraph\">CentralPay relies on a fraud detection service based on machine learning algorithms.<\/p>\n\n<p class=\"wp-block-paragraph\">This predictive engine is built from a large sample of data provided by CentralPay in JSON format and sourced from <code>transaction<\/code>, <code>refund<\/code>, <code>dispute<\/code> data.<\/p>\n\n<p class=\"wp-block-paragraph\">This service relies on behavioral classification linked to the merchant\u2019s business sector.<\/p>\n\n<p class=\"wp-block-paragraph\">The engine returns an action and a score. The action instructs the payment service to accept or refuse the transaction. <\/p>\n\n<p class=\"wp-block-paragraph\">The score classifies the risk level by providing a percentage probability of fraud. This score is then interpreted in the rules engine. <\/p>\n\n<p class=\"wp-block-paragraph\">The score enables the merchant and the algorithm to interact together to improve.<\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\">Scores are classified as follows: <\/p>\n\n<ul class=\"wp-block-list\">\n<li><strong>From 0 to 19 = low risk<\/strong><br \/>Transaction accepted<br \/>No action<\/li>\n\n\n\n<li><strong>From 20 to 59 = medium risk<\/strong><br \/>Transaction accepted<br \/>Action: Send an event with score details for manual review and learning<\/li>\n\n\n\n<li><strong>+60 = high risk<\/strong><br \/>Transaction refused<br \/>Action: Send an event with score details for manual review and learning<\/li>\n<\/ul>\n\n<p class=\"wp-block-paragraph\">This fraud exposure analysis service analyzes the fraud risk exposure context of each transaction. This service returns a score that makes it possible to automatically process the expected response in the rules engine. <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\">The score is based on cross-analysis of the following data:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>IP risk index<\/li>\n\n\n\n<li>Proxy detection<\/li>\n\n\n\n<li>TOR network detection<\/li>\n\n\n\n<li>IP address verification<\/li>\n\n\n\n<li>Confidence factors<\/li>\n\n\n\n<li>Email checks<\/li>\n\n\n\n<li>Address &amp; phone checks<\/li>\n\n\n\n<li>High-risk shipping address<\/li>\n\n\n\n<li>IP address geolocation<\/li>\n\n\n\n<li>Identification of the devices used<\/li>\n\n\n\n<li>Email address<\/li>\n\n\n\n<li>Browser type<\/li>\n\n\n\n<li>Country mismatches<\/li>\n\n\n\n<li>Shipping address distance<\/li>\n\n\n\n<li>Billing address distance<\/li>\n\n\n\n<li>Email domain<\/li>\n\n\n\n<li>Time<\/li>\n\n\n\n<li>Order amount<\/li>\n\n\n\n<li>Country<\/li>\n\n\n\n<li>Phone number<\/li>\n\n\n\n<li>IP owner<\/li>\n\n\n\n<li>Email owner<\/li>\n\n\n\n<li>Card address verification<\/li>\n<\/ul>\n\n<h2 class=\"wp-block-heading\">3. Whitelists and blacklists<\/h2>\n\n<h3 class=\"wp-block-heading\">3.1. Whitelist<\/h3>\n\n<p class=\"wp-block-paragraph\">The purpose of the &#8220;whitelist&#8221; is to make the application of an acceptance rule selective. This rule becomes inoperative for identified customers, VIPs, or trusted customers who are included in a &#8220;whitelist&#8221;. <\/p>\n\n<p class=\"wp-block-paragraph\">The anti-fraud service then moves on to the next step.<\/p>\n\n<p class=\"wp-block-paragraph\">&#8220;Whitelists&#8221; apply to customer-specific data, such as their bank card number or IP address. This feature makes it possible to be less restrictive for a user population. <\/p>\n\n<h3 class=\"wp-block-heading\">3.2. Blacklist<\/h3>\n\n<p class=\"wp-block-paragraph\">The &#8220;blacklist&#8221; step makes it possible to refuse payments.<\/p>\n\n<p class=\"wp-block-paragraph\">As with &#8220;whitelists&#8221;, &#8220;blacklists&#8221; apply to data specific to the cardholder:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>Country<\/li>\n\n\n\n<li>Geographic regions<\/li>\n\n\n\n<li>Card numbers<\/li>\n\n\n\n<li>Phone numbers<\/li>\n\n\n\n<li>Email<\/li>\n\n\n\n<li>IP addresses<\/li>\n\n\n\n<li>IBAN<\/li>\n<\/ul>\n\n<h2 class=\"wp-block-heading\">4. Transaction acceptance rules<\/h2>\n\n<p class=\"wp-block-paragraph\">The acceptance rules engine is a powerful, modular application component that makes it possible to adapt the processing behavior to be applied to each transaction, such as:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>Allow<\/li>\n\n\n\n<li>Refuse<\/li>\n\n\n\n<li>Alert<\/li>\n<\/ul>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\">This service therefore makes it possible to define actions to be performed on each transaction from a wide list of available attributes: <em>fraud score, cardholder location, total sales amount over 7 or 30 days, VIP whitelist customer, specific parameter provided by the merchant\u2026<\/em><\/p>\n\n<p class=\"wp-block-paragraph\">An acceptance rule is a logical condition. It makes it possible to authorize, restrict, and\/or prohibit transactions.<br \/>A rule consists of 4 elements: the action, the attributes, the operators, the values. <\/p>\n\n<p class=\"wp-block-paragraph\">The syntax of a rule is as follows: &#8220;Action&#8221; &#8220;if&#8221; &#8220;Attribute&#8221; &#8220;Comparison operator&#8221; &#8220;Comparison value&#8221;<\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Example:<\/strong><\/p>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">REFUSE if card_country != 'FRA'<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">The rule shown in this example makes it possible to automatically refuse payments when the card country is not France.<br \/>The grammar syntax chosen by the platform for its acceptance engine is very similar to SQL syntax (used to interact with databases).<\/p>\n\n<h3 class=\"wp-block-heading has-medium-font-size\">4.1. Available actions<\/h3>\n\n<ul class=\"wp-block-list\">\n<li><strong>ALLOW<\/strong><br \/>Allows the payment<\/li>\n\n\n\n<li><strong>REFUSE<\/strong><br \/>Refuses the payment<\/li>\n\n\n\n<li><strong>ALERT<\/strong><br \/>Sends a &#8220;webhook&#8221; notification for the associated transaction<\/li>\n<\/ul>\n\n<h3 class=\"wp-block-heading has-medium-font-size\">4.2. Available attributes<\/h3>\n\n<p class=\"wp-block-paragraph\">By typing &#8220;#&#8221;, the available attributes are displayed.<\/p>\n\n<p class=\"wp-block-paragraph\">In a rule, an attribute is always followed by a comparison operator.<\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>List of attributes<\/strong>:<\/p>\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribute<\/th><th>Description<\/th><th>Value type<\/th><th>Example<\/th><\/tr><\/thead><tbody><tr><td><strong>#always<\/strong><\/td><td> <\/td><td>None<\/td><td> <\/td><\/tr><tr><td><strong>#transactions[_\u00e9tat][_entit\u00e9] [_temporalit\u00e9]<\/strong><\/td><td>Transaction count quota [state] [entity] [time period]<\/td><td>Integers<\/td><td><\/td><\/tr><tr><td><strong>#transactions_amount[_\u00e9tat] [_entit\u00e9][_temporalit\u00e9]<\/strong><\/td><td>Transaction amount quota [state] [entity] [time period]<\/td><td>Integers<\/td><td><\/td><\/tr><tr><td><strong>#amount<\/strong><\/td><td>Transaction amount in cents<\/td><td>Integer<\/td><td>#amount &gt; 100<\/td><\/tr><tr><td><strong>#card_country<\/strong><\/td><td>Card issuing country<\/td><td>String <br \/>ISO 3166-1 alpha-3<\/td><td>#card_country IN (&#8216;FRA&#8217;, &#8216;USA&#8217;, &#8216;BEL&#8217;, &#8216;DEU&#8217;)<\/td><\/tr><tr><td><strong>#card_establishment<\/strong><\/td><td>Card issuer<\/td><td> <\/td><td> <\/td><\/tr><tr><td><strong>#card_product<\/strong><\/td><td>Card type<\/td><td>&#8216;gold&#8217;, &#8216;platinium&#8217;<\/td><td> <\/td><\/tr><tr><td><strong>#card_product_type<\/strong><\/td><td>Card type (personal or corporate)<\/td><td>CONSUMER CORPORATE<\/td><td>#card_product_type = &#8216;CONSUMER&#8217;<\/td><\/tr><tr><td><strong>#card_region<\/strong><\/td><td>Card issuing region<\/td><td>&#8216;ASIA_PACIFIC&#8221;EUROPE&#8221;LATIN_AMERICA&#8221;MIDDLE_EAST_AND_AFRICA&#8221;USA_AND_CANADA&#8221;ANTARCTIQUE&#8221;UNKNOWN&#8217;<\/td><td>#card_region NOT IN (&#8216;ASIA_PACIFIC&#8217;, &#8216;LATIN_AMERICA&#8217;)<\/td><\/tr><tr><td><strong>#commercial_brand<\/strong><\/td><td>Card brand<\/td><td>VISA MASTERCARD AMEX OTHER<\/td><td>#commercial_brand != &#8216;VISA&#8217;<\/td><\/tr><tr><td><strong>#currency<\/strong><\/td><td>Transaction currency<\/td><td>String <br \/>ISO 4217<\/td><td>#currency = &#8216;EUR&#8217;<\/td><\/tr><tr><td><strong>#ip_country<\/strong><\/td><td>IP address country<\/td><td>String <br \/>ISO 3166-1 alpha-3<\/td><td>#ip_country IN (&#8216;FRA&#8217;, &#8216;USA&#8217;, &#8216;BEL&#8217;, &#8216;DEU&#8217;)<\/td><\/tr><tr><td><strong>#ip_region<\/strong><\/td><td>IP address region<\/td><td>&#8216;ASIA_PACIFIC&#8221;EUROPE&#8221;LATIN_AMERICA&#8221;MIDDLE_EAST_AND_AFRICA&#8221;USA_AND_CANADA&#8221;ANTARCTIQUE&#8221;UNKNOWN&#8217;<\/td><td>#card_region NOT IN (&#8216;ASIA_PACIFIC&#8217;, &#8216;LATIN_AMERICA&#8217;)<\/td><\/tr><tr><td><strong>#is_anonymous_ip<\/strong><\/td><td>Is an anonymous IP<\/td><td>TRUE | FALSE<\/td><td>#is_anonymous_ip = TRUE<\/td><\/tr><tr><td><strong>#is_three_d_secure<\/strong><\/td><td>Is a 3D-Secure transaction<\/td><td>TRUE | FALSE<\/td><td>#is_three_d_secure = TRUE<\/td><\/tr><tr><td><strong>#payout_amount<\/strong><\/td><td>Payout amount<\/td><td>Integer<\/td><td>#payout_amount &gt; 100<\/td><\/tr><tr><td><strong>#payout_currency<\/strong><\/td><td>Payout currency<\/td><td>String <br \/>ISO 4217<\/td><td>#payout_currency = &#8216;EUR&#8217;<\/td><\/tr><tr><td><strong>#risk_score<\/strong><\/td><td>Anti-fraud score<\/td><td>Double<\/td><td>#risk_score &gt; 2,34<\/td><\/tr><tr><td><strong>#custom_acceptance_data[&#8216;key&#8217;] = &#8216;value&#8217;<\/strong><\/td><td>custom field<\/td><td>key : Regex [a-zA-Z0-9_-]value: Regex [a-zA-Z0-9_-]<\/td><td>#custom_acceptance_data[&#8216;product_category&#8217;] = &#8216;high&#8217;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n<p class=\"wp-block-paragraph\">In the case of custom_acceptance_data[&#8216;key&#8217;] = &#8216;value&#8217;, for it to be taken into account, the exact same field must be included in the request for the targeted object.<\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Logical operators and parentheses:<\/strong><\/p>\n\n<p class=\"wp-block-paragraph\"><span style=\"text-decoration: underline\">Logical operators AND and OR<\/span><\/p>\n\n<p class=\"wp-block-paragraph\">The syntax used to define rules makes it possible to create multiple conditions within the same rule. The conditions will remain defined in the same way, with the only difference being that a keyword will be placed between the conditions. <\/p>\n\n<p class=\"wp-block-paragraph\">The keywords are and and or. They define how the rules engine will interpret the sequence of these rules. &#8220;AND&#8221; corresponds to inclusion and &#8220;OR&#8221; to exclusion.  <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Example:<\/strong><\/p>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">ALLOW <strong>if<\/strong> #amount &lt; 1000 and #card_country = 'FRA'<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">The previous example allows payments whose amount is less than 10 <strong>AND<\/strong> whose card is French. If one or the other of the defined conditions is not met, the action will not be executed. <\/p>\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Example:<\/strong><\/p>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">ALLOW <strong>if<\/strong> #amount &lt; 1000 or #card_country = 'FRA'<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">The previous example allows payments whose amount is less than 10 <strong>OR<\/strong> whose card is French. If one or the other of the defined conditions is met, the action will be executed. <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><span style=\"text-decoration: underline\">Parentheses<\/span><\/p>\n\n<p class=\"wp-block-paragraph\">Using parentheses when defining a multi-condition rule makes it possible to define condition blocks and the priorities between these blocks. The principle is the same as for priorities in mathematical operators. <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Example:<\/strong><\/p>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">ALLOW <strong>if<\/strong> #amount &lt; 1000 and (#card_country = 'FRA' or #currency = 'EUR')<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">In the previous example, the rules engine will first interpret the block (#card_country = &#8216;FRA&#8217; or #currency = &#8216;EUR&#8217;). That is, the payment will be allowed if (the card is French or the currency is the euro), AND the amount is less than 10. <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><span style=\"text-decoration: underline\">Rule execution order<\/span><\/p>\n\n<p class=\"wp-block-paragraph\">Rules are executed in an order to be defined. This order is important because as soon as a transaction meets the criteria of a rule, the following rules will not be processed. <\/p>\n\n<p class=\"wp-block-paragraph\">Rules are executed in the display order of the list in the interface.<br \/>A position indicator is displayed in each list. To change a rule\u2019s position, simply drag it to the desired position. <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"937\" height=\"532\" src=\"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles.png\" alt=\"\" class=\"wp-image-413\" srcset=\"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles.png 937w, https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles-300x170.png 300w, https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles-768x436.png 768w, https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles-230x131.png 230w, https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles-350x199.png 350w, https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles-480x273.png 480w\" sizes=\"(max-width: 937px) 100vw, 937px\" \/><\/figure>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Rule examples:<\/strong><\/p>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">ALLOW <strong>if<\/strong> #amount &lt; 1000 and #transactions_amount_daily &lt; 10000<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">This example allows transactions whose amount is less than 10 if the sum of the day\u2019s transaction amounts is less than 100.<\/p>\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">REFUSE <strong>if<\/strong> #risk_score &gt; 3 or (#ip_regions = 'ASIA_PACIFIC' and #card_region = 'ASIA_ PACIFIC')<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">This rule blocks payments if the risk score exceeds 3 or if the IP used and the card issuing region correspond to the &#8216;ASIA_PACIFIC&#8217; zone.<\/p>\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">THREE_D_SECURE <strong>if<\/strong> #card_country NOT IN ('FRA', 'USA', 'GBR')&nbsp;<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">This rule requires a 3D Secure transaction if the card country is not France, the United States, or Great Britain.<\/p>\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">ALLOW (#amount &lt; 10000 <strong>and<\/strong> #transactions_amount_daily &lt; 100000) or (#currency IN ('EUR', 'USD') and #transactions_amount_monthly &lt; 1000000)<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">This previous example ALLOWS payments IF the amount is LESS THAN 100 AND the sum of the day\u2019s transaction amounts is LESS THAN 1000 OR the currency is \u20ac or $ AND the sum of the month\u2019s transaction amounts is LESS THAN 10,000.<\/p>\n\n<p class=\"wp-block-paragraph\">The logical operators &#8220;AND&#8221; and &#8220;OR&#8221; are only syntactically correct in lowercase.<\/p>\n\n<h3 class=\"wp-block-heading has-medium-font-size\">4.3. Available comparison operators<\/h3>\n\n<ul class=\"wp-block-list\">\n<li>= (equals)<\/li>\n\n\n\n<li>!= (not equal to)<\/li>\n\n\n\n<li>&lt; (less than)<\/li>\n\n\n\n<li>&lt;= (less than or equal to)<\/li>\n\n\n\n<li>in (in the following)<\/li>\n\n\n\n<li>not in (not in the following)<\/li>\n<\/ul>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\">The comparison operators = , != , &gt; , &lt; , &gt;= and &lt;= must be followed by a value.<\/p>\n\n<p class=\"wp-block-paragraph\">The IN and NOT IN operators are followed by a list of comparison values.<br \/>A list of values is enclosed in parentheses, and the values inside the list are separated by commas.<\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Example:<\/strong><\/p>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">REFUSE if #currency NOT IN ('EUR', 'USD', 'GBP', 'CHF')<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">The example shown above makes it possible to refuse all payments whose currency is not the Euro, the US Dollar, the Pound Sterling, or the Swiss Franc.<\/p>\n\n<p class=\"wp-block-paragraph\">This syntax avoids writing multiple rules or multiple conditions within the same rule.<\/p>\n\n<h3 class=\"wp-block-heading has-medium-font-size\">4.4. Available values:<\/h3>\n\n<p class=\"wp-block-paragraph\">Depending on the value type, the syntax used to define the value will not be the same:<\/p>\n\n<ul class=\"wp-block-list\">\n<li><strong>Integers (numeric value without decimals):<\/strong> Standard syntax (e.g., 100)<\/li>\n\n\n\n<li><strong>Doubles (numeric value with decimals): <\/strong>The value is defined with a dot as the decimal separator (e.g., 12.32)<\/li>\n\n\n\n<li><strong>String: <\/strong>The value is defined between single quotes (e.g., &#8216;FRA&#8217;)<\/li>\n\n\n\n<li><strong>Booleans: <\/strong>The value is true or false (e.g., false)<\/li>\n<\/ul>\n\n<pre class=\"wp-block-preformatted\">\u2139\ufe0f \"Amount\" values must be provided in cents (e.g., for \u20ac10 you would provide a value of 1000).<\/pre>\n\n<h3 class=\"wp-block-heading has-medium-font-size\">4.5. Logical operators:<\/h3>\n\n<p class=\"wp-block-paragraph\">The available operators are AND and OR. They define how the rules engine will interpret the sequence of these rules. &#8220;AND&#8221; enables inclusion, while &#8220;OR&#8221; enables exclusion.  <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<p class=\"wp-block-paragraph\"><strong>Example:<\/strong><\/p>\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">REFUSE if #amount &lt; 1000 and #card_country != 'FRA'<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">The example shown above makes it possible to refuse payments whose amount is less than \u20ac10 AND whose card is not French. If one or the other of the defined conditions is not met, the action will not be executed. <\/p>\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>1. Organization of anti-fraud services Anti-fraud services are segmented into 4 tools: The transaction processing phases are always executed in this order. If the input data meets all the conditions of the defined &#8220;whitelist&#8221;, the &#8220;blacklist&#8221; service will not be executed and the transaction will be processed normally. If the input data meets one of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":16299,"menu_order":2,"comment_status":"open","ping_status":"closed","template":"","doc_tag":[],"doc_badge":[],"class_list":["post-16304","docs","type-docs","status-publish","hentry","no-post-thumbnail"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Anti-fraud services - CentralPay Documentation<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Anti-fraud services - CentralPay Documentation\" \/>\n<meta property=\"og:description\" content=\"1. Organization of anti-fraud services Anti-fraud services are segmented into 4 tools: The transaction processing phases are always executed in this order. If the input data meets all the conditions of the defined &#8220;whitelist&#8221;, the &#8220;blacklist&#8221; service will not be executed and the transaction will be processed normally. If the input data meets one of [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/\" \/>\n<meta property=\"og:site_name\" content=\"CentralPay Documentation\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-12T13:40:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles.png\" \/>\n\t<meta property=\"og:image:width\" content=\"937\" \/>\n\t<meta property=\"og:image:height\" content=\"532\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/\",\"url\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/\",\"name\":\"Anti-fraud services - CentralPay Documentation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/docs.centralpay.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/ordre-regles.png\",\"datePublished\":\"2024-03-20T08:13:35+00:00\",\"dateModified\":\"2026-08-12T13:40:48+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/#primaryimage\",\"url\":\"https:\\\/\\\/docs.centralpay.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/ordre-regles.png\",\"contentUrl\":\"https:\\\/\\\/docs.centralpay.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/ordre-regles.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/anti-fraud-services\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Automations, integrations and exports\",\"item\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/documentation\\\/automations-integrations-and-exports\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Anti-fraud services\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/\",\"name\":\"CentralPay Documentation\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/#organization\",\"name\":\"CentralPay Documentation\",\"url\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/docs.centralpay.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo-centralpay-2023.png\",\"contentUrl\":\"https:\\\/\\\/docs.centralpay.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo-centralpay-2023.png\",\"width\":2382,\"height\":370,\"caption\":\"CentralPay Documentation\"},\"image\":{\"@id\":\"https:\\\/\\\/docs.centralpay.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Anti-fraud services - CentralPay Documentation","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/","og_locale":"en_US","og_type":"article","og_title":"Anti-fraud services - CentralPay Documentation","og_description":"1. Organization of anti-fraud services Anti-fraud services are segmented into 4 tools: The transaction processing phases are always executed in this order. If the input data meets all the conditions of the defined &#8220;whitelist&#8221;, the &#8220;blacklist&#8221; service will not be executed and the transaction will be processed normally. If the input data meets one of [&hellip;]","og_url":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/","og_site_name":"CentralPay Documentation","article_modified_time":"2026-08-12T13:40:48+00:00","og_image":[{"width":937,"height":532,"url":"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/","url":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/","name":"Anti-fraud services - CentralPay Documentation","isPartOf":{"@id":"https:\/\/docs.centralpay.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/#primaryimage"},"image":{"@id":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/#primaryimage"},"thumbnailUrl":"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles.png","datePublished":"2024-03-20T08:13:35+00:00","dateModified":"2026-08-12T13:40:48+00:00","breadcrumb":{"@id":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/#primaryimage","url":"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles.png","contentUrl":"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/ordre-regles.png"},{"@type":"BreadcrumbList","@id":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/anti-fraud-services\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/docs.centralpay.com\/en\/"},{"@type":"ListItem","position":2,"name":"Automations, integrations and exports","item":"https:\/\/docs.centralpay.com\/en\/documentation\/automations-integrations-and-exports\/"},{"@type":"ListItem","position":3,"name":"Anti-fraud services"}]},{"@type":"WebSite","@id":"https:\/\/docs.centralpay.com\/en\/#website","url":"https:\/\/docs.centralpay.com\/en\/","name":"CentralPay Documentation","description":"","publisher":{"@id":"https:\/\/docs.centralpay.com\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/docs.centralpay.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/docs.centralpay.com\/en\/#organization","name":"CentralPay Documentation","url":"https:\/\/docs.centralpay.com\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/docs.centralpay.com\/en\/#\/schema\/logo\/image\/","url":"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/logo-centralpay-2023.png","contentUrl":"https:\/\/docs.centralpay.com\/wp-content\/uploads\/2023\/07\/logo-centralpay-2023.png","width":2382,"height":370,"caption":"CentralPay Documentation"},"image":{"@id":"https:\/\/docs.centralpay.com\/en\/#\/schema\/logo\/image\/"}}]}},"author_avatar":"https:\/\/secure.gravatar.com\/avatar\/0ab6fa93b0f18fc2235a0e635e81fc14b314e2bb1768930c4ac7606e1f34f470?s=96&d=mm&r=g","author_name":"centralpay_doc","_links":{"self":[{"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/docs\/16304","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/comments?post=16304"}],"version-history":[{"count":2,"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/docs\/16304\/revisions"}],"predecessor-version":[{"id":16306,"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/docs\/16304\/revisions\/16306"}],"up":[{"embeddable":true,"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/docs\/16299"}],"wp:attachment":[{"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/media?parent=16304"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/doc_tag?post=16304"},{"taxonomy":"doc_badge","embeddable":true,"href":"https:\/\/docs.centralpay.com\/en\/wp-json\/wp\/v2\/doc_badge?post=16304"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}