Marketplace icon

Use transaction rules

Evaluate outgoing transfer requests from business accounts with predefined conditions and outcomes.

Transaction rules create conditional logic that automatically approves or declines a transfer based on the conditions that you specify. You can configure transaction rules to regulate outgoing fund transfers from business accounts in your balance platform. We recommend that you use transaction rules to make decisions based on transfer data and static conditions: for example, a fixed list of banks that your users must not transfer funds to.

How it works

You create a transaction rule using the POST /transactionRules endpoint in the Configuration API. When a user initiates a transfer using an Adyen business account, Adyen evaluates it using the transaction rules that you configured. If it meets the conditions of a rule, then Adyen applies the outcome to the transfer.

When creating transaction rules, you must consider:

  • The outcome that must be applied when a transfer meets the conditions of a rule.
  • The rule type, which defines what data the rule must use to analyze the transfer. For example, we can use only the data of the current transfer being analyzed, or we can use accumulated data from previous transfers.
  • The time interval when the rule conditions and outcome apply. For example, per transfer, daily, or weekly.
  • The conditions and how the conditions must be interpreted.
  • The entity to which the rule applies.

How transaction rules are evaluated

You can create a rule with one or more conditions, and apply one or more rules to an account. When a user makes a transfer, Adyen evaluates all of the applicable rules.

When you have multiple conditions and rules, Adyen evaluates the transfer request based on the following:

  • Multiple conditions within one rule: Adyen applies the outcome if the transfer meets all conditions within the rule.
  • Multiple rules: Adyen evaluates the rules based on a hierarchy of outcome and rule type. Transaction rules with a hard block outcome are evaluated first. If a transaction is already declined, remaining rules are no longer evaluated. A transaction rule is evaluated based on the following hierarchy:
    1. A hard-block outcome with a blocklist rule type
    2. A hard-block outcome with a velocity rule type
    3. A score-based outcome with a blocklist rule type
    4. A score-based outcome with a velocity rule type

Transaction rules can be overridden. For more information, reach out to your Adyen contact.

Outcome

The outcome determines what Adyen does when a transfer request meets the conditions of a rule. Depending on your use case, you can configure either a hard-block or score-based outcome.

Hard-block outcome

The transaction is declined.

Score-based outcome

A score-based outcome assigns a score to a transfer request. When configuring this outcome, you must specify a score between -100 and 100.

When evaluating transfer requests, Adyen adds up the scores of all the triggered score-based outcomes. If the total score is higher than 100, the transfer request is declined.

To decide on the outcome, consider your use cases. For example, if a user needs to transfer unusually large amounts of funds, but the counterparty is a trusted business partner, you may want configure a score-based outcome to handle the request, instead of instantly blocking the transfer.

Rule types

The rule type defines what data the rule uses to analyze and decide the outcome of a transfer request. Adyen can use the data of the current transfer, or use accumulated data from previous transfers.

The following rule types are available for fund transfers:

  • Block list: decline a transfer if it meets the specified conditions.
  • Velocity: decline a transfer if a set amount of previous transfers have met the specified conditions. Adyen only considers previous transfers within a specified time interval.

Time intervals

The time interval defines the period when the rule conditions and outcome apply. The interval also determines which transfers a rule must consider when it uses data from previous transfers.

The following types of time intervals are available for business accounts:

Type of time interval Description Example

Per transaction

The rule only uses data from the current transfer to make a decision.

The outcome also applies only to the current transfer request.

You can set a rule that allows a user to transfer a maximum of EUR 5000 per transfer request.

Fixed interval

The rule uses data from transfers made within the specified time interval, such as the ongoing day, week, or month.
The outcome applies to the current transfer and all following transfers until the end of the interval.
You can set a rule that allows a user to transfer a maximum of EUR 1000 from their account in a day. In this case, Adyen accumulates the data of all the outgoing transfers from that account within the current day.
If the user exceeds the EUR 1000 limit, all subsequent transfer request are declined until the next day.

Rolling interval

The rule uses conditions that are applied and counters are reset based on a start time, timezone, and duration that you define.
The outcome applies to the current transfer and all following transfers until the end of the interval.
You can set a rule that allows a user to transfer a maximum of EUR 5000 from their account within a week. You can specify a schedule for that week that starts every Monday, for a duration of seven days.
If the user exceeds the EUR 5000 limit, all subsequent transfer requests are declined until the start of the next week.

Sliding interval

The rule uses data from transfers that occurred within a specified time interval previous to the current transfer. For example, Adyen can check transfers made in the previous minutes, hours, or days.
The outcome applies to the current transfer and all following transfer requests until the specified interval ends.

You can set a rule that allows a user to make a maximum of five transfer requests within an hour. If the user makes five transfer requests in less than an hour, all subsequent transfers are declined until the next hour.

Conditions

Conditions determine what a transaction rule must check. We refer to these conditions as rule restrictions.

Rule restrictions consist of:

  • One or more types of conditions to evaluate when checking against the rule, such as the total amount, the counterparty, the counterparty's bank IBAN number, or a start time and an end time.
  • An operation type, which determines how the conditions must be evaluated. For example:
    • Match the counterparty.
    • Does not match the counterparty's bank IBAN number.
    • Equals, is greater than or equal to, or is less than the total amount.

The following rule restrictions and operation types are available for defining transaction rules for transfers:

Rule restriction name Available operation types Evaluation description
sameCounterparty equals Evaluates if the counterparty is identical as the requested transfer.
sameAmount equals Evaluates if the transfer amount is identical as the requested transfer.
totalAmount
  • equals
  • notEquals
  • greaterThanOrEqualTo
  • greaterThan
  • lessThanOrEqualTo
  • lessThan
Evaluates the summed total amount of transfers.
matchingTransactions
  • equals
  • notEquals
  • greaterThanOrEqualTo
  • greaterThan
  • lessThanOrEqualTo
  • lessThan
Evaluates the total number of transfers.
counterpartyBank
  • anyMatch
  • noneMatch
Evaluates the bank indicator in the IBAN.

Entity to which the rule applies

Each transaction rule must be applied to only one resource.

You can apply a transaction rule to any of the following resources:

  • A balance account (business account): the rule applies to a business account
  • An account holder: the rule applies to an account holder.
  • A balance platform: the rule applies to all business accounts and account holders on your balance platform.

If multiple rules apply to an account, Adyen evaluates all the rules. The transaction is blocked if it meets the conditions of a rule with a hard-block outcome.

Next steps