# Create fraud prevention list items

This method allows you to add new items to fraud prevention list linked to the merchant's account.

Endpoint: POST /fraud-prevention-list-items/create
Version: 1.0.0
Security: MerchantID

## Header parameters:

  - `merchant` (string, required)
    Unique public key provided upon registration and must be shared for identification purposes.
    Example: "api_pk_7b197...ba108f842"

  - `signature` (string, required)
    Request signature that allows verification of merchant authenticity on the payment gateway server.
    Example: "M2E3OTkyNzcz...xMmExODI4"

## Request fields (application/json):

  - `items` (array, required) — one of (discriminator: payment_field):
    List of fraud prevention list items to be created.
    - card_id:
      - `list_type` (string, required)
        Type of fraud prevention list, where pass indicates an allowlist and reject indicates a blocklist.
        Enum: "pass", "reject"
      - `field_value` (string, required)
        Value of the payment field to match against the fraud prevention list.
      - `expired_at` (string)
        Expiration date of the list item.


  If not provided, the item never expires.
      - `description` (string)
        Reason for adding this item to the list.
      - `created_by` (string)
        Email address of the user who created the list item.
    - cardholder:
      - `list_type` (string, required)
        Type of fraud prevention list, where pass indicates an allowlist and reject indicates a blocklist.
        Enum: same as `list_type` in "card_id" (2 values)
      - `field_value` (string, required)
        Value of the payment field to match against the fraud prevention list.
      - `expired_at` (string)
        Expiration date of the list item.


  If not provided, the item never expires.
      - `description` (string)
        Reason for adding this item to the list.
      - `created_by` (string)
        Email address of the user who created the list item.
    - customer_id:
      - `list_type` (string, required)
        Type of fraud prevention list, where pass indicates an allowlist and reject indicates a blocklist.
        Enum: same as `list_type` in "card_id" (2 values)
      - `field_value` (string, required)
        Value of the payment field to match against the fraud prevention list.
      - `expired_at` (string)
        Expiration date of the list item.


  If not provided, the item never expires.
      - `description` (string)
        Reason for adding this item to the list.
      - `created_by` (string)
        Email address of the user who created the list item.
    - customer_email:
      - `list_type` (string, required)
        Type of fraud prevention list, where pass indicates an allowlist and reject indicates a blocklist.
        Enum: same as `list_type` in "card_id" (2 values)
      - `field_value` (string, required)
        Value of the payment field to match against the fraud prevention list.
      - `expired_at` (string)
        Expiration date of the list item.


  If not provided, the item never expires.
      - `description` (string)
        Reason for adding this item to the list.
      - `created_by` (string)
        Email address of the user who created the list item.
    - ip_address:
      - `list_type` (string, required)
        Type of fraud prevention list, where pass indicates an allowlist and reject indicates a blocklist.
        Enum: same as `list_type` in "card_id" (2 values)
      - `field_value` (string, required)
        Value of the payment field to match against the fraud prevention list.
      - `expired_at` (string)
        Expiration date of the list item.


  If not provided, the item never expires.
      - `description` (string)
        Reason for adding this item to the list.
      - `created_by` (string)
        Email address of the user who created the list item.

  - `items.payment_field` (any)
    Payment field to match against the fraud prevention list.
    Enum: "card_id", "cardholder", "customer_id", "customer_email", "ip_address"

## Response 200 fields (application/json):

  - `body` (object) — one of:
    - Success:
      - `items` (array, required)
        List of created fraud prevention list items.
      - `items.id` (string, required)
        Unique identifier of the fraud prevention list item.
      - `items.list_type` (string, required)
        Type of fraud prevention list, where pass indicates an allowlist and reject indicates a blocklist.
        Enum: same as `list_type` in "card_id" (2 values)
      - `items.payment_field` (string, required)
        Payment field to match against the fraud prevention list.
        Enum: same as `items.payment_field` (5 values)
      - `items.field_value` (string, required)
        Value of the payment field to match against the fraud prevention list.


  Depending on the value provided in payment_field, the corresponding validation rules are enforced.
      - `items.created_at` (string)
        Creation date of the list item.
      - `items.expired_at` (string)
        Expiration date of the list item.


  If not provided, the item never expires.
      - `items.description` (string)
        Reason for adding this item to the list.
      - `items.created_by` (string)
        Email address of the user who created the list item.
    - Authentication failed:
      - `error` (object, required)
        Error object.
      - `error.code` (string, required)
        Unauthorized access due to invalid credentials.
        Example: "1.01"
      - `error.messages` (array, required)
        Array of error messages applied to the decline payment.
        Example: ["Authentication failed"]
    - Error:
      - `error` (object, required) — one of (discriminator: code):
        Error object.
        - 2.01 Invalid data:
          - `messages` (array, required)
            Array containing messages that specify why the payment was declined due to validation errors.


  These messages can range from an incorrect card number to an invalid security code or billing address.
            Example: ["Invalid data"]
        - 2.01 Order not found:
          - `messages` (object, required)
            Object containing key-value pairs that clarify the reason for the payment decline, particularly in cases where the requested order does not exist.
        - 2.04 Card brand is not supported:
          - `messages` (array, required)
            Array containing messages that specify why the payment was declined due to unsupported card brand for incremental authorization.


  Supported card brands include American Express (Amex), Cartes Bancaires, Diners, Discover, JCB, Mastercard, Mexico Domestic (Network MX) and Visa.
            Example: ["Card brand is not supported"]
        - X.XX:
          - `messages` (array, required)
            Array containing either strings or objects that provide details about the error or status.


  When it is an array of strings, each string describes a separate issue. When it is an object, the object will contain key-value pairs explaining the issue in more detail.
          - `recommended_message_for_user` (string)
            Message with recommended next steps or additional information.
            Example: "The user’s card balance has insufficient funds."
      - `error.code` (string)
        Gateway error code for the declined payment.


