Template created

Event occurs when the Pismo platform creates a flex controls template. Event contains template information. Create a flex controls template in the Pismo Control Center or contact a Pismo support representative.
More information: Flexible transaction controls.

Type: object
Domain: rules
Event: template_created
Version: 1

|
accumulator_rules required

Type: array

deny_code required

Title: Deny code
Description: Accumulator flex control deny code.
Type: string
Min length: 1
Max length: 50
Example:
ERR_MAX_SPENDING_LIMIT

custom_code

Title: Custom code
Description: Alphanumeric three-character custom code and can be the alternative custom code. Alternative custom code overrides the standard platform custom code and provides the reason set in the alternative custom code. When the platform denies a control evaluation, the custom code provides the denial code.
Type: string
Min length: 3
Max length: 3
Example:
A1B

max_limit required

Title: Max limit
Description: Max flex control.
Type: integer
Example:
10000

name required

Title: Name
Description: Flex control name.
Type: string
Min length: 1
Max length: 50
Example:
purchase-1M-rule

type required

Title: Type
Description: Accumulator flex control type.
Type: string
Min length: 1
Max length: 14
Example:
spending_limit

active

Title: Active
Description: Flex control active state.
Type: boolean
Example:
true

description

Title: Description
Description: Flex control description.
Type: string
Min length: 1
Max length: 200
Example:
This flex control is the maximum amount that the user can spend.

limit_duration

Title: Limit duration
Description: Flex control limit period duration in ISO 8601 format.
Type: string
Min length: 1
Max length: 5
Example:
P1M

processing_codes

Title: Processing codes
Description: Processing codes list for evaluating the conditions flex control.
Type: string
Min length: 1
Max length: 6
Example:
07000

association required

Title: Association
Type: array
Example:

[
    "account"
]
entity_type required

Title: Entity type
Description: Entity type: natural_person is an individual, legal_person is a corporation or other legal entity type.
Type: string
Min length: 1
Max length: 14
Must be one of the following:
legal_person
natural_person
Example:
legal_person

id required

Title: ID
Description: Template ID
Type: string
Min length: 1
Max length: 96
Example:
b22bc8ae-b178-4370-8164-e21154d88d87

name required

Title: Name
Description: Template name.
Type: string
Min length: 1
Max length: 50
Example:
Template one

org_id required

Title: Org ID
Description: Flex control template organization ID.
Type: string
Min length: 1
Max length: 1024
Example:
TN-b22bc8ae-b178-4370-8164-e21154d88d87

program_id required

Title: Program ID
Description: Flex control template program ID.
Type: integer
Example:
137

restriction_rules required

Type: array

conditions required

Type: array

attribute required

Title: Attribute
Description: Attribute evaluated in the condition.
Type: string
Min length: 1
Max length: 22
Example:
week_day

operator required

Description: eq - equal to value
neq - not equal to value
lt - lower than value
lte - lower than or equal to value
gt - greater than value
gte - greater than or equal to value
in - includes the value
nin - does not include the value
bt - between two values
Type: string
Must be one of the following:
eq
neq
lt
lte
gt
gte
in
nin
bt

value required

Title: Value
Description: The value to compare.
Type: string
Min length: 1
Max length: 1024
Example:
monday,tuesday,wednesday,thursday,friday

deny_code required

Title: Deny code
Description: Restriction deny code.
Type: string
Min length: 1
Max length: 50
Example:
ERR_VAL_WEEK_DAY

custom_code

Title: Custom code
Description: Alphanumeric three-character custom code and can be the alternative custom code. Alternative custom code overrides the standard platform custom code and provides the reason set in the alternative custom code. When the platform denies a control evaluation, the custom code provides the denial code.
Type: string
Min length: 3
Max length: 3
Example:
A1B

name required

Title: Name
Description: Flex control name.
Type: string
Min length: 1
Max length: 50
Example:
balance-limit-10000-rule

active

Title: Active
Description: Flex control active state.
Type: boolean
Example:
true

description

Title: Description
Description: Flex control description.
Type: string
Min length: 1
Max length: 200
Example:
This flex control restricts the transaction when balance account is greather than 10000, this flex control is used to deny the transaction for law reasons.

processing_codes

Title: Processing codes
Description: Processing codes list for evaluating the conditions flex controls.
Type: string
Min length: 1
Max length: 6
Example:
07000

description

Title: Description
Description: Template description.
Type: string
Min length: 1
Max length: 200
Example:
Template flex control for legal person.

card

Title: Card
Description: Card level accumulators.
Type: object

{
    "$schema": "http://json-schema.org/draft-07/schema",
    "type": "object",
    "title": "Template created",
    "description": "Event occurs when the Pismo platform creates a flex controls template. Event contains template information. Create a flex controls template in the Pismo Control Center or contact a Pismo support representative. <br>More information: <a href='https://developers.pismo.io/pismo-docs/docs/flex-controls' target='_blank'>Flexible transaction controls</a>.",
    "required": [
        "accumulator_rules",
        "association",
        "entity_type",
        "id",
        "name",
        "org_id",
        "program_id",
        "restriction_rules"
    ],
    "properties": {
        "accumulator_rules": {
            "title": "Accumulator flex controls",
            "type": "array",
            "items": {
                "type": "object",
                "required": [
                    "deny_code",
                    "max_limit",
                    "name",
                    "type"
                ],
                "properties": {
                    "deny_code": {
                        "title": "Deny code",
                        "description": "Accumulator flex control deny code.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "examples": [
                            "ERR_MAX_SPENDING_LIMIT"
                        ]
                    },
                    "custom_code": {
                        "title": "Custom code",
                        "description": "Alphanumeric three-character custom code and can be the alternative custom code. Alternative custom code overrides the standard platform custom code and provides the reason set in the alternative custom code. When the platform denies a control evaluation, the custom code provides the denial code.",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 3,
                        "examples": [
                            "A1B"
                        ]
                    },
                    "max_limit": {
                        "title": "Max limit",
                        "description": "Max flex control.",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 18446744073709551617,
                        "examples": [
                            10000
                        ]
                    },
                    "name": {
                        "title": "Name",
                        "description": "Flex control name.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "examples": [
                            "purchase-1M-rule"
                        ]
                    },
                    "type": {
                        "title": "Type",
                        "description": "Accumulator flex control type.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 14,
                        "examples": [
                            "spending_limit"
                        ]
                    },
                    "active": {
                        "title": "Active",
                        "description": "Flex control active state.",
                        "type": "boolean",
                        "default": "true",
                        "examples": [
                            true
                        ]
                    },
                    "description": {
                        "title": "Description",
                        "description": "Flex control description.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200,
                        "examples": [
                            "This flex control is the maximum amount that the user can spend."
                        ]
                    },
                    "limit_duration": {
                        "title": "Limit duration",
                        "description": "Flex control limit period duration in ISO 8601 format.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 5,
                        "examples": [
                            "P1M"
                        ]
                    },
                    "processing_codes": {
                        "title": "Processing codes",
                        "description": "Processing codes list for evaluating the conditions flex control.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 6,
                        "examples": [
                            "07000"
                        ]
                    }
                }
            }
        },
        "association": {
            "title": "Association",
            "description": "Template association.",
            "type": "array",
            "enum": [
                "account",
                "customer",
                "card"
            ],
            "items": {
                "type": "string",
                "title": "The association item",
                "examples": [
                    "account"
                ]
            }
        },
        "entity_type": {
            "title": "Entity type",
            "type": "string",
            "description": "Entity type: `natural_person` is an individual, `legal_person` is a corporation or other legal entity type.",
            "minLength": 1,
            "maxLength": 14,
            "enum": [
                "legal_person",
                "natural_person"
            ],
            "examples": [
                "legal_person"
            ]
        },
        "id": {
            "title": "ID",
            "description": "Template ID",
            "type": "string",
            "minLength": 1,
            "maxLength": 96,
            "examples": [
                "b22bc8ae-b178-4370-8164-e21154d88d87"
            ]
        },
        "name": {
            "title": "Name",
            "description": "Template name.",
            "type": "string",
            "minLength": 1,
            "maxLength": 50,
            "examples": [
                "Template one"
            ]
        },
        "org_id": {
            "title": "Org ID",
            "description": "Flex control template organization ID.",
            "type": "string",
            "minLength": 1,
            "maxLength": 1024,
            "examples": [
                "TN-b22bc8ae-b178-4370-8164-e21154d88d87"
            ]
        },
        "program_id": {
            "title": "Program ID",
            "description": "Flex control template program ID.",
            "type": "integer",
            "minimum": 1,
            "maximum": 18446744073709551617,
            "examples": [
                137
            ]
        },
        "restriction_rules": {
            "title": "Restriction rules",
            "description": "Restriction flex control list.",
            "type": "array",
            "items": {
                "type": "object",
                "required": [
                    "conditions",
                    "deny_code",
                    "name"
                ],
                "properties": {
                    "conditions": {
                        "title": "Conditions",
                        "description": "Flex control conditions",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "required": [
                                "attribute",
                                "operator",
                                "value"
                            ],
                            "properties": {
                                "attribute": {
                                    "title": "Attribute",
                                    "description": "Attribute evaluated in the condition.",
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 22,
                                    "examples": [
                                        "week_day"
                                    ]
                                },
                                "operator": {
                                    "description": "eq - equal to value <br> neq - not equal to value <br>lt - lower than value <br>lte - lower than or equal to value <br>gt - greater than value <br>gte - greater than or equal to value <br>in - includes the value <br>nin - does not include the value <br>bt - between two values",
                                    "type": "string",
                                    "enum": [
                                        "eq",
                                        "neq",
                                        "lt",
                                        "lte",
                                        "gt",
                                        "gte",
                                        "in",
                                        "nin",
                                        "bt"
                                    ]
                                },
                                "value": {
                                    "title": "Value",
                                    "description": "The value to compare.",
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 1024,
                                    "examples": [
                                        "monday,tuesday,wednesday,thursday,friday"
                                    ]
                                }
                            }
                        }
                    },
                    "deny_code": {
                        "title": "Deny code",
                        "description": "Restriction deny code.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "examples": [
                            "ERR_VAL_WEEK_DAY"
                        ]
                    },
                    "custom_code": {
                        "title": "Custom code",
                        "description": "Alphanumeric three-character custom code and can be the alternative custom code. Alternative custom code overrides the standard platform custom code and provides the reason set in the alternative custom code. When the platform denies a control evaluation, the custom code provides the denial code.",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 3,
                        "examples": [
                            "A1B"
                        ]
                    },
                    "name": {
                        "title": "Name",
                        "description": "Flex control name.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "examples": [
                            "balance-limit-10000-rule"
                        ]
                    },
                    "active": {
                        "title": "Active",
                        "description": "Flex control active state.",
                        "type": "boolean",
                        "default": "true",
                        "examples": [
                            true
                        ]
                    },
                    "description": {
                        "title": "Description",
                        "description": "Flex control description.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200,
                        "examples": [
                            "This flex control restricts the transaction when balance account is greather than 10000, this flex control is used to deny the transaction for law reasons."
                        ]
                    },
                    "processing_codes": {
                        "title": "Processing codes",
                        "description": "Processing codes list for evaluating the conditions flex controls.",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 6,
                        "examples": [
                            "07000"
                        ]
                    }
                }
            }
        },
        "description": {
            "title": "Description",
            "description": "Template description.",
            "type": "string",
            "minLength": 1,
            "maxLength": 200,
            "examples": [
                "Template flex control for legal person."
            ]
        },
        "card": {
            "title": "Card",
            "description": "Card level accumulators.",
            "type": "object",
            "required": [
                "accumulator_rules"
            ],
            "accumulator_rules": {
                "title": "Accumulator rules",
                "description": "Card level control accumulator flex control.",
                "type": "array",
                "items": {
                    "type": "object",
                    "required": [
                        "name",
                        "type",
                        "deny_code",
                        "reset_strategy"
                    ],
                    "properties": {
                        "name": {
                            "title": "Name",
                            "description": "Flex control name.",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "examples": [
                                "contactless-13245"
                            ]
                        },
                        "description": {
                            "title": "Description",
                            "description": "Card level flex control description.",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 200,
                            "examples": [
                                "This flex control is the contactless transactions max value."
                            ]
                        },
                        "processing_codes": {
                            "title": "Processing codes",
                            "description": "Processing codes list for evaluating the conditions flex controls.",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 6,
                            "examples": [
                                "07000"
                            ]
                        },
                        "type": {
                            "title": "Type",
                            "description": "Card accumulator flex control type.",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "examples": [
                                "cumulative_limit"
                            ]
                        },
                        "max_amount": {
                            "title": "Max amount",
                            "description": "Max cumulative amount. Either this field or `max_transactions` is required.",
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 18446744073709551617,
                            "examples": [
                                100000
                            ]
                        },
                        "max_transactions": {
                            "title": "Max transactions",
                            "description": "Transactions max number. Either this field or `max_amount` is required.",
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 18446744073709551617,
                            "examples": [
                                10
                            ]
                        },
                        "deny_code": {
                            "title": "Deny code",
                            "description": "Deny code when the flex control validation fails.",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "examples": [
                                "ERR_MAX_CONTACTLESS_TRANSACTIONS"
                            ]
                        },
                        "custom_code": {
                            "title": "Custom code",
                            "description": "Alphanumeric three-character custom code and can be the alternative custom code. Alternative custom code overrides the standard platform custom code and provides the reason set in the alternative custom code. When the platform denies a control evaluation, the custom code provides the denial code.",
                            "type": "string",
                            "minLength": 3,
                            "maxLength": 3,
                            "examples": [
                                "A1B"
                            ]
                        },
                        "response_code": {
                            "title": "Response code",
                            "description": "Alphanumeric two-character response code. Alternative custom response code overrides the standard platform response custom code and provides the reason set in the alternative custom response code. When the platform denies a control evaluation, the custom code provides the denial code.",
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 2,
                            "examples": [
                                "FM",
                                "57",
                                "05"
                            ]
                        },
                        "evaluation_order": {
                            "title": "Evaluation order",
                            "description": "Flex control order evaluation. If this value is not provided, the flex control is evaluated after the flex controls with the configured `evaluation_order` value.",
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 99,
                            "examples": [
                                99
                            ]
                        },
                        "conditions": {
                            "title": "Conditions",
                            "description": "Card level flex control conditions. Validates if the flex control should be applied or not.",
                            "type": "array",
                            "items": {
                                "type": "object",
                                "required": [
                                    "attribute",
                                    "operator",
                                    "value"
                                ],
                                "properties": {
                                    "attribute": {
                                        "title": "Attribute",
                                        "description": "Attribute that identifies the field to the condition.",
                                        "minLength": 1,
                                        "maxLength": 22,
                                        "type": "string",
                                        "examples": [
                                            "is_password_present"
                                        ]
                                    },
                                    "operator": {
                                        "description": "eq - equal to value <br> neq - not equal to value <br>lt - lower than value <br>lte - lower than or equal to value <br>gt - greater than value <br>gte - greater than or equal to value <br>in - includes the value <br>nin - does not include the value <br>bt - between two values",
                                        "type": "string",
                                        "enum": [
                                            "eq",
                                            "neq",
                                            "lt",
                                            "lte",
                                            "gt",
                                            "gte",
                                            "in",
                                            "nin",
                                            "bt"
                                        ]
                                    },
                                    "value": {
                                        "title": "Value",
                                        "description": "The value to compare.",
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 1024,
                                        "examples": [
                                            "true",
                                            "false"
                                        ]
                                    }
                                }
                            }
                        },
                        "reset_strategy": {
                            "title": "Reset strategy",
                            "description": "Defined strategy considered to reset, increase, or decrease the flex control accumulators.",
                            "type": "object",
                            "required": [
                                "reset_trigger"
                            ],
                            "properties": {
                                "reset_trigger": {
                                    "title": "Reset trigger",
                                    "description": "Reset trigger considered for the card flex control accumulators.",
                                    "type": "object",
                                    "required": [
                                        "is_password_present"
                                    ],
                                    "properties": {
                                        "is_password_present": {
                                            "title": "is_password_present",
                                            "description": "Boolean that indicates whether the password is present in the transaction. If the boolean is `true`, the password is present.",
                                            "type": "string",
                                            "examples": [
                                                "false, true"
                                            ]
                                        }
                                    }
                                }
                            }
                        },
                        "active": {
                            "title": "Active",
                            "description": "Current active flex control state.",
                            "type": "boolean",
                            "default": "true",
                            "examples": [
                                true
                            ]
                        }
                    }
                }
            }
        }
    }
}