TransactionRule class abstract

TransactionRule

Properties:

  • aggregationLevel - The level at which data must be accumulated, used in rules with type velocity or maxUsage. The level must be the same or lower in hierarchy than the entityKey. If not provided, by default, the rule will accumulate data at the paymentInstrument level. Possible values: paymentInstrument, paymentInstrumentGroup, balanceAccount, accountHolder, balancePlatform.
  • description - Your description for the transaction rule.
  • endDate - The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, 2025-03-19T10:15:30+01:00. If not provided, the rule will be evaluated until the rule status is set to inactive.
  • entityKey - The type and unique identifier of the resource to which the rule applies.
  • id - The unique identifier of the transaction rule.
  • interval - The time interval when the rule conditions apply.
  • outcomeType - The outcome that will be applied when a transaction meets the conditions of the rule. Possible values: * hardBlock (default): the transaction is declined. * scoreBased: the transaction is assigned the score you specified. Adyen calculates the total score and if it exceeds 100, the transaction is declined. This value is not allowed when requestType is bankTransfer. * enforceSCA: your user is prompted to verify their identity using 3D Secure authentication. If the authentication fails or times out, the transaction is declined. This value is only allowed when requestType is authentication.
  • reference - Your reference for the transaction rule.
  • requestType - Indicates the type of request to which the rule applies. If not provided, by default, this is set to authorization. Possible values: authorization, authentication, tokenization, bankTransfer.
  • ruleRestrictions - Contains one or more objects that define the rule conditions. Each object must have a value and an operation which determines how the values must be evaluated. For example, a countries object can have a list of country codes \"US\", \"CA\" in the value field and anyMatch in the operation field.
  • score - A positive or negative score applied to the transaction if it meets the conditions of the rule. Required when outcomeType is scoreBased. The value must be between -100 and 100.
  • startDate - The date when the rule will start to be evaluated, in ISO 8601 extended offset date-time format. For example, 2025-03-19T10:15:30+01:00. If not provided when creating a transaction rule, the startDate is set to the date when the rule status is set to active.
  • status - The status of the transaction rule. If you provide a startDate in the request, the rule is automatically created with an active status. Possible values: active, inactive.
  • type - The type of rule, which defines if a rule blocks transactions based on individual characteristics or accumulates data. Possible values: * blockList: decline a transaction when the conditions are met. * maxUsage: add the amount or number of transactions for the lifetime of a payment instrument, and then decline a transaction when the specified limits are met. * velocity: add the amount or number of transactions based on a specified time interval, and then decline a transaction when the specified limits are met.
Annotations
  • @BuiltValue.new()

Constructors

TransactionRule([void updates(TransactionRuleBuilder b)])
factory

Properties

aggregationLevel String?
The level at which data must be accumulated, used in rules with type velocity or maxUsage. The level must be the same or lower in hierarchy than the entityKey. If not provided, by default, the rule will accumulate data at the paymentInstrument level. Possible values: paymentInstrument, paymentInstrumentGroup, balanceAccount, accountHolder, balancePlatform.
no setter
description String
Your description for the transaction rule.
no setter
endDate String?
The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, 2025-03-19T10:15:30+01:00. If not provided, the rule will be evaluated until the rule status is set to inactive.
no setter
entityKey TransactionRuleEntityKey
The type and unique identifier of the resource to which the rule applies.
no setter
hashCode int
The hash code for this object.
no setterinherited
id String?
The unique identifier of the transaction rule.
no setter
interval TransactionRuleInterval
The time interval when the rule conditions apply.
no setter
outcomeType TransactionRuleOutcomeTypeEnum?
The outcome that will be applied when a transaction meets the conditions of the rule. Possible values: * hardBlock (default): the transaction is declined. * scoreBased: the transaction is assigned the score you specified. Adyen calculates the total score and if it exceeds 100, the transaction is declined. This value is not allowed when requestType is bankTransfer. * enforceSCA: your user is prompted to verify their identity using 3D Secure authentication. If the authentication fails or times out, the transaction is declined. This value is only allowed when requestType is authentication.
no setter
reference String
Your reference for the transaction rule.
no setter
requestType TransactionRuleRequestTypeEnum?
Indicates the type of request to which the rule applies. If not provided, by default, this is set to authorization. Possible values: authorization, authentication, tokenization, bankTransfer.
no setter
ruleRestrictions TransactionRuleRestrictions
Contains one or more objects that define the rule conditions. Each object must have a value and an operation which determines how the values must be evaluated. For example, a countries object can have a list of country codes \"US\", \"CA\" in the value field and anyMatch in the operation field.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
score int?
A positive or negative score applied to the transaction if it meets the conditions of the rule. Required when outcomeType is scoreBased. The value must be between -100 and 100.
no setter
startDate String?
The date when the rule will start to be evaluated, in ISO 8601 extended offset date-time format. For example, 2025-03-19T10:15:30+01:00. If not provided when creating a transaction rule, the startDate is set to the date when the rule status is set to active.
no setter
status TransactionRuleStatusEnum?
The status of the transaction rule. If you provide a startDate in the request, the rule is automatically created with an active status. Possible values: active, inactive.
no setter
type TransactionRuleTypeEnum
The type of rule, which defines if a rule blocks transactions based on individual characteristics or accumulates data. Possible values: * blockList: decline a transaction when the conditions are met. * maxUsage: add the amount or number of transactions for the lifetime of a payment instrument, and then decline a transaction when the specified limits are met. * velocity: add the amount or number of transactions based on a specified time interval, and then decline a transaction when the specified limits are met.
no setter

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
rebuild(dynamic updates(TransactionRuleBuilder)) TransactionRule
Rebuilds the instance.
inherited
toBuilder() TransactionRuleBuilder
Converts the instance to a builder B.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

serializer → Serializer<TransactionRule>
no setter