UNPKG

@adyen/api-library

Version:

The Adyen API Library for NodeJS enables you to work with Adyen APIs.

90 lines (89 loc) 4.77 kB
import { TransactionRuleEntityKey } from "./transactionRuleEntityKey"; import { TransactionRuleInterval } from "./transactionRuleInterval"; import { TransactionRuleRestrictions } from "./transactionRuleRestrictions"; export declare class TransactionRuleInfo { /** * 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](https://docs.adyen.com/issuing/transaction-rules#accumulate-data) than the `entityKey`. If not provided, by default, the rule will accumulate data at the **paymentInstrument** level. Possible values: **paymentInstrument**, **paymentInstrumentGroup**, **balanceAccount**, **accountHolder**, **balancePlatform**. */ "aggregationLevel"?: string; /** * Your description for the transaction rule. */ "description": 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**. */ "endDate"?: string; "entityKey": TransactionRuleEntityKey; "interval": TransactionRuleInterval; /** * The [outcome](https://docs.adyen.com/issuing/transaction-rules#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**. */ "outcomeType"?: TransactionRuleInfo.OutcomeTypeEnum; /** * Your reference for the transaction rule. */ "reference": string; /** * 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**. */ "requestType"?: TransactionRuleInfo.RequestTypeEnum; "ruleRestrictions": TransactionRuleRestrictions; /** * 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**. */ "score"?: number; /** * 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**. */ "startDate"?: string; /** * 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**. */ "status"?: TransactionRuleInfo.StatusEnum; /** * The [type of rule](https://docs.adyen.com/issuing/transaction-rules#rule-types), 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. */ "type": TransactionRuleInfo.TypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } export declare namespace TransactionRuleInfo { enum OutcomeTypeEnum { EnforceSca = "enforceSCA", HardBlock = "hardBlock", ScoreBased = "scoreBased", TimedBlock = "timedBlock" } enum RequestTypeEnum { Authentication = "authentication", Authorization = "authorization", BankTransfer = "bankTransfer", Tokenization = "tokenization" } enum StatusEnum { Active = "active", Inactive = "inactive" } enum TypeEnum { AllowList = "allowList", BlockList = "blockList", MaxUsage = "maxUsage", Velocity = "velocity" } }