Transaction rules

Update a transaction rule

Updates a transaction rule.

  • To update only the status of a transaction rule, send only the status parameter. All other parameters not provided in the request are left unchanged.

  • When updating any other parameter, you need to send all existing resource parameters. If you omit a parameter in the request, that parameter is removed from the resource.

patch/transactionRules/{transactionRuleId}

Path parameters

transactionRuleIdstring required

The unique identifier of the transaction rule.

Request body

aggregationLevelstring

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.

descriptionstring required

Your description for the transaction rule.

endDatestring

The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, 2020-12-18T10:15:30+01:00.

If not provided, the rule will be evaluated until the rule status is set to inactive.

outcomeType'enforceSCA' | 'hardBlock' | 'scoreBased' | 'timedBlock'

The outcome that will be applied when a transaction meets the conditions of the rule.

Possible values:

  • hardBlock: 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.

Default value: hardBlock.

scoreBased is not allowed when requestType is bankTransfer.

referencestring required

Your reference for the transaction rule.

requestType'authentication' | 'authorization' | 'bankTransfer' | 'tokenization'

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.

scoreinteger

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.

startDatestring

The date when the rule will start to be evaluated, in ISO 8601 extended offset date-time format. For example, 2020-12-18T10: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'active' | 'inactive'

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'allowList' | 'blockList' | 'maxUsage' | 'velocity' required

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.

Response

OK - the request has succeeded.

aggregationLevelstring

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.

descriptionstring required

Your description for the transaction rule.

endDatestring

The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, 2020-12-18T10:15:30+01:00.

If not provided, the rule will be evaluated until the rule status is set to inactive.

idstring

The unique identifier of the transaction rule.

outcomeType'enforceSCA' | 'hardBlock' | 'scoreBased' | 'timedBlock'

The outcome that will be applied when a transaction meets the conditions of the rule.

Possible values:

  • hardBlock: 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.

Default value: hardBlock.

scoreBased is not allowed when requestType is bankTransfer.

referencestring required

Your reference for the transaction rule.

requestType'authentication' | 'authorization' | 'bankTransfer' | 'tokenization'

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.

scoreinteger

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.

startDatestring

The date when the rule will start to be evaluated, in ISO 8601 extended offset date-time format. For example, 2020-12-18T10: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'active' | 'inactive'

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'allowList' | 'blockList' | 'maxUsage' | 'velocity' required

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.

Changes