@adyen/api-library
Version:
The Adyen API Library for NodeJS enables you to work with Adyen APIs.
90 lines (89 loc) • 5.03 kB
TypeScript
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** (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](https://docs.adyen.com/issuing/3d-secure/). If the authentication fails or times out, the transaction is declined. This value is only allowed when `requestType` is **authentication**.
*/
"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: {
[]: 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"
}
}