---
title: "Order v3"
method: POST
path: "/v3/orders/{id}"
tags: ["Orders"]
---

# Order v3

`POST /v3/orders/{id}`

Send order information at checkout to receive a fraud or abuse decision. The response may also include recommendations based on your payment optimization features or abuse prevention policies, or a managed order token to include when requesting the 3DS result.

## Path parameters

- `id` string, required

## Headers

- `api-version` string, required
- `x-forter-siteid` string, required
- `Authorization` string, required

## Request body

- V3OrderRequest — Send order information at checkout to receive a fraud or abuse decision. The response may also include recommendations based on your payment optimization features or abuse prevention policies, or a managed order token to include when requesting the 3DS result.
  - `accountOwner` object, nullable — Basic account data such as name, account ID, email, and aggregated past purchases
    - `accountId` string, nullable — Customer's account UID in merchant's site (leave empty if guest)
    - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
    - `created` number, nullable — Account creation date in seconds since unix epoch (UTC, Jan 1, 1970)
    - `email` string, required — Account holder's primary Email address
    - `firstName` string, required — Account holder's first name
    - `fullName` string, nullable — Account holder's fullName
    - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
    - `lastName` string, required — Account holder's last name
    - `loyaltyProgramsInAccount` LoyaltyProgram[], nullable — Details of all rewards/loyalty/frequent flyer programs customer saved in the account
      - `accountNumber` string, nullable — Customer's rewards/loyalty/frequent flyer account number
      - `loyaltyPointsValue` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `programName` string, nullable — Name of program
      - `programPoints` number, nullable — Customer's rewards/loyalty/frequent flyer miles/point/stars
      - `tier` string, nullable — Program tier name
    - `socialNetworkData` SocialNetwork[], nullable — Social network data
      - `networkName` 'FACEBOOK' | 'GOOGLE' | 'TWITTER' | 'REDDIT' | 'PINTEREST' | 'WECHAT' | 'QQ' | 'TWITCH' | 'APPLE' | 'DRIBBBLE' | 'GITHUB' | 'LINKEDIN' | 'MAKER_STUDIOS' | 'STACK_EXCHANGE' | 'VIMEO' | 'STEAM' | 'OTHER' | 'KAKAO' | 'NAVER' | 'GRAB' | 'JKOPAY' | 'LINE', nullable — Social network name
      - `profileId` string, nullable — Unique social profile identifier
  - `additionalIdentifiers` object, nullable — Additional identifiers of the order which are used for identifying the order in various systems.
    - `additionalOrderId` string, nullable — Secondary or additional order/transaction identifier. Note that Forter treats this ID as case-insensitive; Order123 and ORDER123 will be identified as the same order.
    - `agenticCommercePlatform` object, nullable — This object contains data related to the AI agent that assisted in placing the order (if placed by an AI agent).
      - `agentApp` string, nullable — Use only if platform is not available in the agentPlatform enum list
      - `agentId` string, nullable — A unique identifier provided by the AI agent itself or the orchestration platform that placed the order
      - `agentPlatform` 'CHATGPT_INSTANT_CHECKOUT' | 'CHATGPT_AGENT' | 'CHATGPT_APPS_SDK' | 'BUY_WITH_PRO' | 'BUY_FOR_ME' | 'GENSMO' | 'ALEXA' | 'GEMINI' | 'AI_MODE' | 'COPILOT' | 'ADS' | 'CLAUDE_DESKTOP' | 'CLAUDE_CODE' | 'CLAUDE_AI' | 'SEARCH' | 'OTHER', required — Defines the specific purpose or flow of the AI agent application
      - `agentSourceType` 'OPENAI' | 'GOOGLE' | 'META' | 'ANTHROPIC' | 'AMAZON' | 'MICROSOFT' | 'PERPLEXITY' | 'IN_HOUSE' | 'THIRD_PARTY' | 'HENRYLABS', required — Specifies the general category or known vendor of the AI agent
    - `bigCommerceAdditionalOrderData` object, nullable — Object for extra order data related to Big Commerce platform
      - `cartId` string, nullable — Big Commerce Cart ID
    - `customerReferralMethod` 'DIRECT' | 'REDIRECT_TO_MERCHANT' | 'WHITELABEL_SERVICE' | 'FACILITATED_BOOKING' | 'PAID_TRAFFIC', nullable — The way a customer was referred to the site, such as an affiliate referral, a whitelabel partnership, Facilitated booking - bookings coming from partners where the FE is not under the merchant control.
    - `customerReferralName` string, nullable — The name of the affiliate having referred a customer to the site.
    - `hybrisAdditionalOrderData` object, nullable — Object for extra order data related to SAP Hybris platform
      - `hybrisOrderStage` 'PRE_AUTH' | 'POST_AUTH_SYNC' | 'POST_AUTH_ASYNC' | 'FAILED_AUTHORIZATION' | 'DATA_EXPORT', nullable — The stage of the order in the moment it is sent to Forter. Specific to the Hybris platform backend.
    - `isSplitOrder` boolean, nullable — True if original order was split into multiple API calls
    - `magentoAdditionalOrderData` object, nullable — Object for extra order data related to Magento extension
      - `magentoOrderStage` 'BEFORE_PAYMENT_ACTION' | 'AFTER_PAYMENT_ACTION' | 'PAYMENT_ACTION_FAILURE', nullable — The stage of the order in the moment it is sent to Forter. Specific to the Magento platform backend.
    - `merchant` object, nullable — If a merchant operates a number of sites, Merchant Identifiers help Forter's system to identify the right transactions with the right sites.
      - `merchantDomain` string, nullable — Use if merchant operates several sites (such as a regular site and a related discount brand)
      - `merchantName` string, nullable — Use if merchant operates several sites (such as a regular site and a related discount brand)
    - `orderSegment` string, nullable — Name of segment/program this order is related to. Relevant when there are different order options, such as Try & Buy, Regular checkout, Gifting, etc.
    - `portalDisplayCustomField1` string, nullable — First custom field available for you to send Forter information about an order that we otherwise do not have a field for in our API. Data sent in this field will not factor into any decisions, but can be made available on the Forter Portal grids and Forter Data Studio
    - `portalDisplayCustomField2` string, nullable — Second custom field available for you to send Forter information about an order that we otherwise do not have a field for in our API. Data sent in this field will not factor into any decisions, but can be made available on the Forter Portal grids and Forter Data Studio
    - `portalDisplayCustomField3` string, nullable — Third custom field available for you to send Forter information about an order that we otherwise do not have a field for in our API. Data sent in this field will not factor into any decisions, but can be made available on the Forter Portal grids and Forter Data Studio
    - `portalDisplayCustomField4` string, nullable — Fourth custom field available for you to send Forter information about an order that we otherwise do not have a field for in our API. Data sent in this field will not factor into any decisions, but can be made available on the Forter Portal grids and Forter Data Studio
    - `shopifyAdditionalOrderData` object, nullable — Object for extra order data related to Shopify platform
      - `cartToken` string, nullable — Shopify Cart Token
      - `checkoutToken` string, nullable — Shopify Checkout Token
      - `customerTags` string[], nullable — Shopify Customer Tags
      - `fullShopifyOrderHeaders` object, nullable — General payload object
      - `fullShopifyOrderPayload` object, nullable — General payload object
      - `landingSite` string, nullable — Shopify Landing Site
      - `locationId` string, nullable — Shopify Location ID
      - `orderTags` string[], nullable — Shopify Order Tags
      - `sourceName` string, nullable — Shopify Source Name
    - `splitOrderIds` string[], nullable — List of order ID which originated from the same split order
    - `splitOrderTotalAmount` object, nullable — A monetary amount in USD or local currenncy.
      - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
      - `amountUSD` string, nullable — Transaction amount in USD
      - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
  - `additionalInformation` object, nullable — General payload object
  - `authorizationStep` 'PRE_AUTHORIZATION' | 'POST_AUTHORIZATION', nullable — Indicates whether the transaction sent pre credit card authorization or post authorization
  - `cartItems` Item[], required — A list of all items purchased and shipping details
    - `basicItemData` BasicItemData, required — This is an item associated with the customer or transaction.
      - `category` string, nullable — Item category
      - `discount` object, nullable — This provides information relating to any kind of offer, coupon or other discount used by the customer.
        - `couponCodeUsed` string, required — Coupon code used
        - `couponDiscountAmount` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `couponDiscountPercent` string, nullable — Coupon discount amount
      - `name` string, required — Item name
      - `price` Amount, required — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `productId` string, nullable — Unique identifier for item that is common to all identical items (such as SKU, ISBN, etc.)
      - `quantity` number, required — Item quantity
      - `type` 'TANGIBLE' | 'NON_TANGIBLE', required — Tangible if physical item, non-tangible if any other product
    - `beneficiaries` Beneficiary[], nullable — List of all entities receiving or using purchased item (Recipients of physical or digital goods, passengers of transport services, guests of accommodation services, etc.)
      - `additionalVerificationDocuments` object, nullable — Additional Verification Documents includes any details gained from identifying documents or materials which the customer has shared.
        - `address` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `documentDateOfBirth` string, date, nullable — Date of birth as appears on the document. Use YYYY-MM-DD format.
        - `documentExpiration` string, date, nullable — Document's exipration date. Use YYYY-MM-DD format.
        - `documentFirstName` string, nullable — First name as appears on the document
        - `documentIssuingState` string, nullable — Document issuing state or region
        - `documentLastName` string, nullable — Last name as appears on the document
        - `documentNumber` string, nullable — Official document's number (e.g. passport number, driving license number, etc.)
        - `documentSource` 'CAMERA_CAPTURED' | 'UPLOADED_FILE' | 'TYPED' | 'OTHER', required — Source of document (e.g. uploaded file, captured by camera, typed in by customer, etc.)
        - `documentStatus` 'SENT_TO_CLIENT' | 'RECEIVED_FROM_CLIENT' | 'ABANDONED_BY_CLIENT' | 'RECEIVED_FROM_CLIENT_FAULTY', nullable — Status of verification document (e.g. sent to customer, received by customer, abandoned by customer ).
        - `documentType` string, required — Type of document (Passport, ID, Driving license)
        - `documentVerificationServiceAnswer` string, nullable — Answer received from 3rd party document verification services
        - `documentVerificationServiceName` string, nullable — Name of 3rd party document verifcation service
        - `documentVerificationServiceResponsePayload` object, nullable — General payload object
        - `documentVerified` boolean, nullable — True if document was verified as authentic by merchant or 3rd party service
        - `eventTime` number, nullable — Time of event in seconds since unix epoch (UTC, Jan 1, 1970). For example, 01/01/2015 00:00 is 1420070400
        - `nationality` string, nullable — Document holder's nationality
      - `address` object, nullable — Address description
        - `address1` string, nullable — Street-level address. Required when full address details are available
        - `address2` string, nullable — Unit-level address
        - `city` string, nullable — City. Required when full address details are available
        - `company` string, nullable — Company
        - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
        - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
        - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
          - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
          - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
        - `zip` string, nullable — Zipcode
      - `bankAccount` object, nullable — This object contains information regarding bank transfer payment methods.
        - `accountHolderFirstName` string, nullable — Bank account holder first name
        - `accountHolderLastName` string, nullable — Bank account holder last name
        - `achProcessingType` string, nullable — Type of ACH processing used in the transaction
        - `bankAccountIdentifier` string, required — Bank account unique identifier (IBAN or equivalent)
        - `bankAccountType` string, nullable — Type of bank account payment is made from (e.g. savings/checking, etc.)
        - `bankName` string, nullable — Name of bank payment is made from
        - `paymentGatewayData` object, nullable — This provides information about the payment gateway
          - `gatewayName` string, nullable — Payment gateway name
          - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
        - `paymentSuccessStatus` string, nullable — Response text as received from the service provider
        - `serviceName` string, nullable — Payment method name
      - `comments` object, nullable — Comments are notes the customer included as part of their transaction, whether directed to the merchant or to the intended recipient.
        - `merchantComments` string, nullable — Comments by the merchant
        - `messageToBeneficiary` string, nullable — Comments the customer left to the beneficiary of the purchase made
        - `userCommentsToMerchant` string, nullable — Comments the customer left to the merchant
      - `cryptoWallet` object, nullable — This provides information about the digital crypto wallet associated with the resipient or transaction.
        - `cryptoWalletName` string, nullable — Crypto wallet name
        - `cryptoWalletPaymentId` string, nullable — Crypto wallet payment ID
        - `cryptoWalletType` 'INTERNAL' | 'EXTERNAL', required — Crypto wallet type (Indicate whether wallet provider is internal to the site ecosystem)
      - `identityCard` string, nullable — Recipient's identity card number
      - `loyaltyProgram` LoyaltyProgram[], nullable — Details regarding loyalty program customer entered to receive points for this order
        - `accountNumber` string, nullable — Customer's rewards/loyalty/frequent flyer account number
        - `loyaltyPointsValue` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `programName` string, nullable — Name of program
        - `programPoints` number, nullable — Customer's rewards/loyalty/frequent flyer miles/point/stars
        - `tier` string, nullable — Program tier name
      - `personalDetails` PersonalDetails, required — Personal details are those which contribute to building up a picture of the person as an individual, such as name, title, etc..
        - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
        - `email` string, nullable — Email address
        - `firstName` string, nullable — First name
        - `fullName` string, nullable — Full name. Not Needed if firstName and LastName are provided independently.
        - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
        - `lastName` string, nullable — Last name
      - `phone` Phone[], nullable — Phone details
        - `phone` string, required — Phone number including all country and local access codes
        - `smsVerified` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
          - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
          - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
          - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)
    - `deliveryDetails` object, nullable — Delivery Details provides further information about the kind of delivery chosen by the customer.
      - `delayedDeliveryDate` string, date, nullable — Use only if customer explicitly selected a delayed delivery date beyond the merchant’s standard options. Use YYYY-MM-DD format.
      - `delayedDeliveryTime` number, nullable — Use only if customer explicitly selected a delayed delivery date, with specific time of day, beyond the merchant’s standard options. Should be sent in seconds since unix epoch (UTC, Jan 1, 1970).
      - `deliveryComments` string, nullable — Any comments or requests customer had for delivery
      - `deliveryMethod` string, required — Delivery method chosen by customer such as postal service, email, in game transfer, etc.
      - `deliveryPrice` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `deliveryType` 'DIGITAL' | 'PHYSICAL' | 'HYBRID', required — Type of delivery: PHYSICAL for any type of shipped goods. DIGITAL for non-shipped goods (services, gift cards etc.)
    - `itemReturnData` object, nullable — Additional data about the return
      - `posDetails` object, nullable — Point of sale information.
        - `address` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `cardEntryMethod` 'SCANNED' | 'HAND_KEYED' | 'CHIP_READ' | 'UNKNOWN' | 'SAVED_IN_ACCOUNT' | 'SWIPED', required — Credit card entry method
        - `cashierId` string, required — Employee identifier
        - `departmentId` string, required — Unique store department identifier
        - `storeBusinessUnit` string, required — Store business unit
        - `storeId` string, required — Unique store identifier
        - `storeName` string, required — Store name
        - `workStationId` string, required — Unique work-station identifier
      - `returnCondition` string, nullable — Condition of the item returned
      - `returnInternalReasonCategory` string, nullable — The reason for the return as defined by the merchant
      - `returnMethod` 'ONLINE' | 'IN-STORE', nullable — Method of return, e.g. online, in-store
      - `returnReasonCategory` 'CHANGED_MY_MIND' | 'DOES_NOT_FIT' | 'NOT_AS_DESCRIBED' | 'WRONG_ITEM' | 'ARRIVED_TOO_LATE' | 'LOW_QUALITY' | 'DAMAGED_GOODS' | 'GIFT_RETURN' | 'RETURN_TO_SENDER' | 'RETURN_POLICY_EXCEPTION' | 'OTHER' | 'UNKNOWN' | 'ENTIRE_ORDER_NOT_RECEIVED' | 'OUTBOUND_ISSUE_CARRIER' | 'OUTBOUND_ISSUE_MERCHANT' | 'FAILED_DELIVERY' | 'INBOUND_LOSS' | 'INBOUND_ISSUE_CARRIER', nullable — Reason for return
      - `returnSegment` string, nullable — Specific return segment as defined by the merchant
      - `returnStatusLog` object, nullable — Status of the return process
        - `arrivedToWarehouse` boolean, nullable — Indicates that the returned items arrived to the merchant's warehouse
        - `arrivedToWarehouseTime` number, nullable — Time returned items arrived to the merchant's warehouse
        - `returnInitiated` boolean, nullable — Indicates that the customer initiated a return process online
        - `returnInitiationTime` number, nullable — Time online return was initiated
        - `shippedByCustomer` boolean, nullable — Indicates that the customer has shipped the returned items back to the merchant
        - `shippedByCustomerTime` number, nullable — Time returned items were shipped by the customer
      - `typeOfCompensationRequested` 'REPLACEMENT' | 'REFUND' | 'REFUND_UPON_RETURN' | 'CREDIT' | 'MIXED' | 'UNKNOWN' | 'NO_COMPENSATION', nullable — Indicates whether the customer requested a refund, store credit, replacement etc.
      - `updatedReturnStatus` 'ACCEPTED_BY_MERCHANT' | 'REJECTED_BY_MERCHANT' | 'PARTIALLY_ACCEPTED_BY_MERCHANT', nullable — The updated status of the return on the merchant's side
    - `itemSpecificData` object, nullable — These are the details relating to the particular item purchased. This object should be used whenever additional industry specific data is available on a cart item
      - `accommodation` object, nullable — In cases where the transaction involves purchasing accommodation, Accommodation Item gives details relating to the type of accommodation purchased.
        - `accommodationAddress` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `accommodationName` string, nullable — Name of the facility
        - `duration` object, nullable — An object that represents a duration in days. Note that the endDate must be greater than or equal to the startDate. The required date format is YYYY-MM-DD.
          - `endDate` string, date, required — Date service/item ends or becomes unavailable. Use YYYY-MM-DD format.
          - `startDate` string, date, required — Date service/item begins or becomes available. Use YYYY-MM-DD format.
        - `housingType` string, nullable — Type of room/housing
        - `isRefundable` boolean, nullable — True if order can be cancelled and refunded
        - `location` object, nullable — General location (city level)
          - `airportCode` string, nullable — Three letter IATA airport code
          - `city` string, nullable — City
          - `country` string, nullable — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc.
          - `seaportCode` string, nullable — Five letter seaport code
        - `numberOfGuests` number, required — Number of guests
        - `rating` Rating[], nullable — All ratings given to item or service. Can include internal peer rating, merchant rating, official professional association ratings, etc.
          - `score` string, nullable — Rating score (numeric - 97 or textual - 'Excellent')
          - `source` string, nullable — Source of rating, for example tripAdvisor, yelp, etc.
          - `type` 'INTERNAL_PEERS' | 'INTERNAL_MERCHANT' | 'EXTERNAL_PEERS' | 'EXTERNAL_INDEPENDENT', nullable — Rating type. Internal if rating was generated within the merchant's site or community, otherwise external.
        - `type` 'HOTEL' | 'APARTMENT' | 'CRUISE' | 'STUDIO' | 'EVENT_VENUE', nullable — Type of accommodation service
      - `cryptocurrency` object, nullable — Details relating to cryptocurrency purchases
        - `destinationWallet` string, nullable — Destination wallet address
      - `digitalGoodsAndServices` object, nullable — Service Item is used for services sold such as subscriptions, outsourcing projects, etc.
        - `automaticRenewal` boolean, nullable — True if customer chose to have service automatically renewed once current service ends
        - `billingFrequency` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'QUARTERLY' | 'SEMI_ANNUAL' | 'ANNUAL' | 'MULTI_ANNUAL' | 'OTHER', nullable — The frequency customer has chosen for billing
        - `duration` object, nullable — An object that represents a duration in days. Note that the endDate must be greater than or equal to the startDate. The required date format is YYYY-MM-DD.
          - `endDate` string, date, required — Date service/item ends or becomes unavailable. Use YYYY-MM-DD format.
          - `startDate` string, date, required — Date service/item begins or becomes available. Use YYYY-MM-DD format.
        - `isTrial` boolean, nullable — True if the product\service begins with a free trial
        - `webHosting` object, nullable — Details relating to web hosting related items or products
          - `SSLcertificates` boolean, nullable — True if customer asked or paid extra for SSL certificates to be included
          - `domains` string[], nullable — List of domains purchased
          - `emailService` boolean, nullable — True if customer asked or paid extra for Email functionality
          - `privateRegistration` boolean, nullable — True if customer asked or paid extra to hide registrant details from whois services
          - `sercurityUpgrades` boolean, nullable — True if customer asked or paid extra for security upgrades (antivirus, firewall, etc.)
          - `webPromotion` boolean, nullable — True if customer asked or paid extra for promotion services such as SEO
          - `websiteBuilder` boolean, nullable — True if customer asked or paid extra for website builder wizard services
      - `food` object, nullable — If the item purchased is somekind of food, this gives further details describing the item more precisely.
        - `restaurantAddress` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `restaurantId` string, nullable — Restaurant unique identifier
        - `restaurantName` string, nullable — The name of the restaurant
        - `tipAmount` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `gaming` object, nullable — This includes details relevant to computer gaming related items, the player involved and how it is being played by the customer.
        - `characterName` string, nullable — In-game character name
        - `characterRole` string, nullable — Character's role in the game
        - `gameGenre` string, nullable — Game type/genre
        - `gameItemAmount` number, nullable — Number of game items or commodities bought (100 coins, 2000 gold, 10 experience points, etc.)
        - `gameName` string, required — Game name
        - `gamePlatform` string, nullable — Game platform
        - `gameServerCountry` string, nullable — Country, two-letter ISO 3166-1 alpha-2 country code
        - `gameServerName` string, nullable — Game server name
        - `inGameTradeLocation` string, nullable — In-Game trade location
        - `playerFaction` string, nullable — Player's in-game faction/clan/group
        - `playerLeague` string, nullable — Player's in-game league
        - `playerLevel` string, nullable — Player's in-game level
        - `playerPosition` string, nullable — Player's in-game position
      - `personNameRecord` string, nullable — Person Name Record (PNR). Combined with a passenger name, it serves as an identifier for a flight reservation (also for multiple passengers)
      - `physicalGoods` object, nullable — If the item purchased is a physical item, this gives further details describing the item more precisely.
        - `wrapAsGift` boolean, nullable — True if customer chose to have item wrapped as a gift
      - `professionalServices` object, nullable — Additional information regarding professional services, such as event planning, web design, etc.
        - `numberOfParticipatingClients` number, nullable — Number of clients associated with this service. Would be greater than 1 in cases where the service is given to multiple clients, for example, a bride and a groom at a wedding.
        - `numberOfParticipatingVendors` number, nullable — Number of vendors associated with this service. Would be greater than 1 in cases where several vendors collaborate to offer the service.
        - `tipAmount` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `ticketsAndEvents` object, nullable — Ticket Item is used for tickets and events.
        - `eventLocation` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `eventName` string, required — Name of the event
        - `eventTime` number, nullable — Time of event in seconds since unix epoch (UTC, Jan 1, 1970). For example, 01/01/2015 00:00 is 1420070400
        - `eventType` string, nullable — Type of event (movie, concert, sports, etc.)
        - `eventVenueName` string, nullable — Name of venue where event takes place
        - `ticketCategory` 'ADULT' | 'CHILD' | 'ENFANT' | 'SENIOR' | 'STUDENT' | 'VETERAN' | 'OTHER', nullable — Ticket category (adult, student, senior, child, etc.)
        - `ticketClass` string, nullable — Class of tickets purchased (Standing, VIP, Platinum, etc.)
      - `transport` TransportItem[], nullable — Additional information regarding transportation services or products
        - `bookingSource` string, nullable — Use to indicate the affiliate, origin, internal source or flow that this part of the booking is associated with
        - `carrier` string, nullable — Company operating transportation service purchased (airline, car rental company, etc.)
        - `class` string, nullable — Seating class (Tourist, business, first, etc.)
        - `driverDetails` object, nullable — This provides a more detailed picture of the seller - their details, actions etc..
          - `availableFundsForWithdrawal` object, nullable — A monetary amount in USD or local currenncy.
            - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
            - `amountUSD` string, nullable — Transaction amount in USD
            - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
          - `dateOfFirstSale` number, nullable — Date of first sale by seller, in seconds since unix epoch (UTC, Jan 1, 1970)
          - `ratingAsBuyer` object, nullable — With the increasingly peer-led, peer-reviewed, highly social nature of online commerce, ratings are often available connected to the customer or the purchase.
            - `score` string, nullable — Rating score (numeric - 97 or textual - 'Excellent')
            - `source` string, nullable — Source of rating, for example tripAdvisor, yelp, etc.
            - `type` 'INTERNAL_PEERS' | 'INTERNAL_MERCHANT' | 'EXTERNAL_PEERS' | 'EXTERNAL_INDEPENDENT', nullable — Rating type. Internal if rating was generated within the merchant's site or community, otherwise external.
          - `ratingAsSeller` object, nullable — With the increasingly peer-led, peer-reviewed, highly social nature of online commerce, ratings are often available connected to the customer or the purchase.
            - `score` string, nullable — Rating score (numeric - 97 or textual - 'Excellent')
            - `source` string, nullable — Source of rating, for example tripAdvisor, yelp, etc.
            - `type` 'INTERNAL_PEERS' | 'INTERNAL_MERCHANT' | 'EXTERNAL_PEERS' | 'EXTERNAL_INDEPENDENT', nullable — Rating type. Internal if rating was generated within the merchant's site or community, otherwise external.
          - `sellerAccountCreationDate` number, required — Date seller account was created in seconds since unix epoch (UTC, Jan 1, 1970)
          - `sellerLastLoginIP` object, nullable — This provides information about the IP address associated with the customer or transaction.
            - `ip` string, required — Customer IP address in v4 format
            - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
              - …
          - `sellerPastSalesCount` integer, nullable — Count of all successfully fulfilled sales made
          - `sellerPersonalDetails` object, nullable — Personal details are those which contribute to building up a picture of the person as an individual, such as name, title, etc..
            - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
            - `email` string, nullable — Email address
            - `firstName` string, nullable — First name
            - `fullName` string, nullable — Full name. Not Needed if firstName and LastName are provided independently.
            - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
            - `lastName` string, nullable — Last name
          - `sellerRegistrationIP` object, nullable — This provides information about the IP address associated with the customer or transaction.
            - `ip` string, required — Customer IP address in v4 format
            - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
              - …
        - `duration` object, nullable — An object that represents exact duration in seconds. Note that the endTime must be greater than or equal to the startTime. The required timestamp format is seconds since unix epoch (UTC, Jan 1, 1970)
          - `endTime` integer, required — Unix timestamp in seconds of when service/item ends or becomes unavailable in seconds since unix epoch (UTC, Jan 1, 1970)
          - `startTime` number, required — Unix timestamp in seconds of when service/item begins or becomes available in seconds since unix epoch (UTC, Jan 1, 1970)
        - `endPoint` object, nullable — An object that contains either exact or broad information about a physical location associated with the transaction or customer.
          - `address` object, nullable — Address description
            - `address1` string, nullable — Street-level address. Required when full address details are available
            - `address2` string, nullable — Unit-level address
            - `city` string, nullable — City. Required when full address details are available
            - `company` string, nullable — Company
            - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
            - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
              - …
            - `zip` string, nullable — Zipcode
          - `exactLocation` object, nullable — Details of a location in lat/long coordinates
            - `latitude` number, nullable — Latitude in Decimal Degrees (WGS84)
            - `longitude` number, nullable — Longitude in Decimal Degrees (WGS84)
            - `source` string, nullable — Source of location data
          - `locationName` object, nullable — An object that contains the name of a physical location, either as submitted by the end-user, or as assigned by the merchant.
            - `isTextSearchResult` boolean, nullable — Set to true if the user searched for the location name to find the exact location (as opposed to location being generated by the app based on device location)
            - `specificLocationName` string, nullable — Specific location name. Can be used for locations named by the end-user (e.g. "Beth's office") or for merchant assigned names (based on 3rd party tools or other sources)
            - `specificLocationType` string, nullable — Specific location type.
          - `roughLocation` object, nullable — General location (city level)
            - `airportCode` string, nullable — Three letter IATA airport code
            - `city` string, nullable — City
            - `country` string, nullable — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc.
            - `seaportCode` string, nullable — Five letter seaport code
          - `savedLocation` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
        - `expeditedBoarding` boolean, nullable — True if customer paid extra for expedited boarding
        - `extraBaggage` boolean, nullable — True if customer paid extra to bring extra baggage
        - `leg` integer, nullable — Use to indicate the order of arrival to each point on the route. Original departure point should get leg=0, first connection should get leg=1, etc. final destination should get leg=(number of stops-1)
        - `locationAtTimeOfReservation` object, nullable — An object that contains either exact or broad information about a physical location associated with the transaction or customer.
          - `address` object, nullable — Address description
            - `address1` string, nullable — Street-level address. Required when full address details are available
            - `address2` string, nullable — Unit-level address
            - `city` string, nullable — City. Required when full address details are available
            - `company` string, nullable — Company
            - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
            - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
              - …
            - `zip` string, nullable — Zipcode
          - `exactLocation` object, nullable — Details of a location in lat/long coordinates
            - `latitude` number, nullable — Latitude in Decimal Degrees (WGS84)
            - `longitude` number, nullable — Longitude in Decimal Degrees (WGS84)
            - `source` string, nullable — Source of location data
          - `locationName` object, nullable — An object that contains the name of a physical location, either as submitted by the end-user, or as assigned by the merchant.
            - `isTextSearchResult` boolean, nullable — Set to true if the user searched for the location name to find the exact location (as opposed to location being generated by the app based on device location)
            - `specificLocationName` string, nullable — Specific location name. Can be used for locations named by the end-user (e.g. "Beth's office") or for merchant assigned names (based on 3rd party tools or other sources)
            - `specificLocationType` string, nullable — Specific location type.
          - `roughLocation` object, nullable — General location (city level)
            - `airportCode` string, nullable — Three letter IATA airport code
            - `city` string, nullable — City
            - `country` string, nullable — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc.
            - `seaportCode` string, nullable — Five letter seaport code
          - `savedLocation` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
        - `passengers` number, nullable — Number of passengers
        - `purchasedMeals` boolean, nullable — True if customer paid extra to receive meals on board
        - `selectSeat` boolean, nullable — True if customer paid extra to select a seat
        - `startPoint` Location, required — An object that contains either exact or broad information about a physical location associated with the transaction or customer.
          - `address` object, nullable — Address description
            - `address1` string, nullable — Street-level address. Required when full address details are available
            - `address2` string, nullable — Unit-level address
            - `city` string, nullable — City. Required when full address details are available
            - `company` string, nullable — Company
            - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
            - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
              - …
            - `zip` string, nullable — Zipcode
          - `exactLocation` object, nullable — Details of a location in lat/long coordinates
            - `latitude` number, nullable — Latitude in Decimal Degrees (WGS84)
            - `longitude` number, nullable — Longitude in Decimal Degrees (WGS84)
            - `source` string, nullable — Source of location data
          - `locationName` object, nullable — An object that contains the name of a physical location, either as submitted by the end-user, or as assigned by the merchant.
            - `isTextSearchResult` boolean, nullable — Set to true if the user searched for the location name to find the exact location (as opposed to location being generated by the app based on device location)
            - `specificLocationName` string, nullable — Specific location name. Can be used for locations named by the end-user (e.g. "Beth's office") or for merchant assigned names (based on 3rd party tools or other sources)
            - `specificLocationType` string, nullable — Specific location type.
          - `roughLocation` object, nullable — General location (city level)
            - `airportCode` string, nullable — Three letter IATA airport code
            - `city` string, nullable — City
            - `country` string, nullable — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc.
            - `seaportCode` string, nullable — Five letter seaport code
          - `savedLocation` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
        - `type` 'PRIVATE_TAXI' | 'PRIVATE_VIP_TAXI' | 'PRIVATE_LARGE_TAXI' | 'SHARED_RIDE' | 'SHARED_RIDE_DISCOUNT' | 'AIR_TRAVEL' | 'RAIL' | 'FERRY' | 'BUS' | 'CAR_RENTAL' | 'PARKING' | 'CRUISE_LINE', required — Type of transportation service
    - `pendingAddition` boolean, nullable — Indicates whether the item is pending decision to be added to cart
    - `seller` object, nullable — This reflects the information known about the seller.
      - `sellerBusinessWebsite` string, nullable — Seller's business website URL
      - `sellerCategory` string, nullable — Type of service offered by the seller
      - `sellerDetails` BasicSellerData, required — This provides a more detailed picture of the seller - their details, actions etc..
        - `availableFundsForWithdrawal` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `dateOfFirstSale` number, nullable — Date of first sale by seller, in seconds since unix epoch (UTC, Jan 1, 1970)
        - `ratingAsBuyer` object, nullable — With the increasingly peer-led, peer-reviewed, highly social nature of online commerce, ratings are often available connected to the customer or the purchase.
          - `score` string, nullable — Rating score (numeric - 97 or textual - 'Excellent')
          - `source` string, nullable — Source of rating, for example tripAdvisor, yelp, etc.
          - `type` 'INTERNAL_PEERS' | 'INTERNAL_MERCHANT' | 'EXTERNAL_PEERS' | 'EXTERNAL_INDEPENDENT', nullable — Rating type. Internal if rating was generated within the merchant's site or community, otherwise external.
        - `ratingAsSeller` object, nullable — With the increasingly peer-led, peer-reviewed, highly social nature of online commerce, ratings are often available connected to the customer or the purchase.
          - `score` string, nullable — Rating score (numeric - 97 or textual - 'Excellent')
          - `source` string, nullable — Source of rating, for example tripAdvisor, yelp, etc.
          - `type` 'INTERNAL_PEERS' | 'INTERNAL_MERCHANT' | 'EXTERNAL_PEERS' | 'EXTERNAL_INDEPENDENT', nullable — Rating type. Internal if rating was generated within the merchant's site or community, otherwise external.
        - `sellerAccountCreationDate` number, required — Date seller account was created in seconds since unix epoch (UTC, Jan 1, 1970)
        - `sellerLastLoginIP` object, nullable — This provides information about the IP address associated with the customer or transaction.
          - `ip` string, required — Customer IP address in v4 format
          - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
            - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
            - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
            - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
            - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
        - `sellerPastSalesCount` integer, nullable — Count of all successfully fulfilled sales made
        - `sellerPersonalDetails` object, nullable — Personal details are those which contribute to building up a picture of the person as an individual, such as name, title, etc..
          - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
          - `email` string, nullable — Email address
          - `firstName` string, nullable — First name
          - `fullName` string, nullable — Full name. Not Needed if firstName and LastName are provided independently.
          - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
          - `lastName` string, nullable — Last name
        - `sellerRegistrationIP` object, nullable — This provides information about the IP address associated with the customer or transaction.
          - `ip` string, required — Customer IP address in v4 format
          - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
            - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
            - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
            - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
            - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `sellerVendorName` string, nullable — Name of the vendor
    - `shopifyAdditionalItemData` object, nullable — Object for additional Shopify cart item data
      - `properties` object, nullable — General payload object
  - `checkoutTime` number, required — The time when the buyer completed the checkout process in the merchant website in SECONDS since unix epoch (Jan 1, 1970).
  - `connectionInformation` ConnectionInformation, required — This object contains connection info which is usually found in the HTTP request header.
    - `checkoutToolsSessionId` string, nullable — CheckoutToolsSessionId received from the SDK
    - `customerIP` string, required — Customer IP address in IPv4 or IPv6 format. If missing should be populated with 127.0.0.1
    - `forterMobileUID` string, nullable — mobile UID. The device identifier such as IMEI in android or identifier for vendor in iOS. This should match the deviceId sent via the mobile events API (for mobile transactions only)
    - `forterTokenCookie` string, nullable — Forter token cookie from request headers
    - `merchantDeviceIdentifier` string, nullable — A unique device identifier generated by merchant
    - `merchantProvidedSessionId` string, nullable — An identifier of the merchant session
    - `userAgent` string, required — Customer's User agent
  - `customerAccountData` object, nullable — This provides information associated with the buyer/seller account.
    - `additionalVerificationDocuments` object, nullable — Additional Verification Documents includes any details gained from identifying documents or materials which the customer has shared.
      - `address` object, nullable — Address description
        - `address1` string, nullable — Street-level address. Required when full address details are available
        - `address2` string, nullable — Unit-level address
        - `city` string, nullable — City. Required when full address details are available
        - `company` string, nullable — Company
        - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
        - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
        - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
          - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
          - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
        - `zip` string, nullable — Zipcode
      - `documentDateOfBirth` string, date, nullable — Date of birth as appears on the document. Use YYYY-MM-DD format.
      - `documentExpiration` string, date, nullable — Document's exipration date. Use YYYY-MM-DD format.
      - `documentFirstName` string, nullable — First name as appears on the document
      - `documentIssuingState` string, nullable — Document issuing state or region
      - `documentLastName` string, nullable — Last name as appears on the document
      - `documentNumber` string, nullable — Official document's number (e.g. passport number, driving license number, etc.)
      - `documentSource` 'CAMERA_CAPTURED' | 'UPLOADED_FILE' | 'TYPED' | 'OTHER', required — Source of document (e.g. uploaded file, captured by camera, typed in by customer, etc.)
      - `documentStatus` 'SENT_TO_CLIENT' | 'RECEIVED_FROM_CLIENT' | 'ABANDONED_BY_CLIENT' | 'RECEIVED_FROM_CLIENT_FAULTY', nullable — Status of verification document (e.g. sent to customer, received by customer, abandoned by customer ).
      - `documentType` string, required — Type of document (Passport, ID, Driving license)
      - `documentVerificationServiceAnswer` string, nullable — Answer received from 3rd party document verification services
      - `documentVerificationServiceName` string, nullable — Name of 3rd party document verifcation service
      - `documentVerificationServiceResponsePayload` object, nullable — General payload object
      - `documentVerified` boolean, nullable — True if document was verified as authentic by merchant or 3rd party service
      - `eventTime` number, nullable — Time of event in seconds since unix epoch (UTC, Jan 1, 1970). For example, 01/01/2015 00:00 is 1420070400
      - `nationality` string, nullable — Document holder's nationality
    - `addressesInAccount` Address[], nullable — All non-billing addresses saved in account. Billing information is included in paymentMethodsInAccount
      - `address1` string, nullable — Street-level address. Required when full address details are available
      - `address2` string, nullable — Unit-level address
      - `city` string, nullable — City. Required when full address details are available
      - `company` string, nullable — Company
      - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
      - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
      - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
        - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
        - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
      - `zip` string, nullable — Zipcode
    - `customerEngagement` object, nullable — This reflects the level of customer engagement with the store and its items.
      - `aboutMe` boolean, nullable — True if customer added a short bio or about me to the profile
      - `communityPostsWritten` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `enableDeviceLocation` boolean, nullable — Set to True if the user has allowed the app to track their location.
      - `extendedBioOrDescription` boolean, nullable — True if account owner added an extended info/bio/description paragraph to their profile
      - `followersCount` integer, nullable — Number of followers of customer's account, or number of likes to user's profile
      - `followingCount` integer, nullable — Number of other users the customer is following, or number of likes customer gave to other users' profiles
      - `invites` Invite[], nullable — Invites to merchant's site customer sent and received
        - `invitationCounterpartyPhone` string, nullable — Invitation sender/recipient phone number
        - `sent` number, nullable — Time invite was sent in seconds since unix epoch (UTC, Jan 1, 1970)
        - `type` 'SENT' | 'RECEIVED', nullable — Type of invite
      - `likedItems` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `messagesReceived` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `messagesSent` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `newsletters` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `profileLogo` boolean, nullable — True if account owner added a non-default logo to their account
      - `profilePicture` boolean, nullable — True if customer added a profile picture
      - `requestedDemo` boolean, nullable — True if account owner requested to schedule a walthrough or demo of the site
      - `reviewsWritten` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `savedLocations` ExactLocation[], nullable — Saved locations in account.
        - `latitude` number, nullable — Latitude in Decimal Degrees (WGS84)
        - `longitude` number, nullable — Longitude in Decimal Degrees (WGS84)
        - `source` string, nullable — Source of location data
      - `sharedItems` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
      - `signedUpForPushNotifications` boolean, nullable — True if customer asked to receive push notifications from the merchant.
      - `signedUpForSMSUpdates` boolean, nullable — True if customer asked to receive SMS updates from the merchant regarding discounts, promotions, etc.
      - `wishlist` object, nullable — An abstract representation of a list of items such as a wishlist.
        - `inUse` boolean, nullable — Indicates whether the feature is in use, for example if a customer is subscribed to a newsletter, has items in his wishlist etc.
        - `itemInListCount` integer, nullable — Number of items in the list
        - `updateTimes` object, nullable — This provides information regarding the times associated with any updates made to the account or transaction.
          - `creationTime` number, nullable — Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastModifiedTime` number, nullable — Time item was last modified by the customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `lastUsed` number, nullable — Time item was last used by customer in seconds since unix epoch (UTC, Jan 1, 1970)
          - `removalTime` number, nullable — Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
    - `emailsInAccount` Email[], nullable — All email addresses saved in account
      - `email` string, required — Email address
      - `emailVerification` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
        - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
        - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
        - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)
    - `paymentMethodsInAccount` Payment[], nullable — All payment methods saved in account
      - `allowedMerchantInitiatedTransactions` boolean, nullable — True if customer chose to allow future transactions to initiate without taking further action (payment that's initiated on behalf of a customer)
      - `amount` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `androidPay` object, nullable — This provides details relating to a tokenized card.
        - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
        - `cardBank` string, nullable — Credit card's issuing bank
        - `cardBrand` string, nullable — Credit card's issuer brand
        - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
        - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
        - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
        - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
        - `expirationMonth` string, required — Credit card's expiration month, in MM format
        - `expirationYear` string, required — Credit card's expiration year, in YYYY format
        - `fullResponsePayload` object, nullable — General payload object
        - `lastFourDigits` string, nullable — Credit card's last 4 digits
        - `nameOnCard` string, nullable — Cardholder's full name
        - `paymentProcessorData` object, nullable — This provides information about the payment processor
          - `processorName` string, nullable — Payment processor name
          - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
        - `threeDSecure` object, nullable
          - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
            - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
            - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
            - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
            - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
            - `acquirerName` string, nullable — Bank acquirer Name
            - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
            - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
          - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
          - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
          - `forcePsd2Exemption` object, nullable
            - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
            - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
          - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
          - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
          - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
        - `token` string, required — Credit card token used by the merchant
        - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
        - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
          - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
          - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
          - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
          - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
          - `avsStreetResult` string, nullable — Street address portion of card's AVS result
          - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
          - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
          - `cvvResult` string, nullable — CVV result (if no data please send the value U)
          - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
          - `exemptionStatus` string, nullable — Exemption status as received from the processor
          - `external3dsVendorPayload` object, nullable — General payload object
          - `issuerResponseCode` string, nullable — Response code received from issuer
          - `issuerResponseText` string, nullable — Response text received from issuer
          - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
          - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
          - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
          - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
          - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
          - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
          - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
      - `applePay` object, nullable — This provides details relating to a tokenized card.
        - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
        - `cardBank` string, nullable — Credit card's issuing bank
        - `cardBrand` string, nullable — Credit card's issuer brand
        - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
        - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
        - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
        - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
        - `expirationMonth` string, required — Credit card's expiration month, in MM format
        - `expirationYear` string, required — Credit card's expiration year, in YYYY format
        - `fullResponsePayload` object, nullable — General payload object
        - `lastFourDigits` string, nullable — Credit card's last 4 digits
        - `nameOnCard` string, nullable — Cardholder's full name
        - `paymentProcessorData` object, nullable — This provides information about the payment processor
          - `processorName` string, nullable — Payment processor name
          - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
        - `threeDSecure` object, nullable
          - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
            - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
            - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
            - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
            - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
            - `acquirerName` string, nullable — Bank acquirer Name
            - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
            - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
          - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
          - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
          - `forcePsd2Exemption` object, nullable
            - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
            - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
          - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
          - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
          - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
        - `token` string, required — Credit card token used by the merchant
        - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
        - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
          - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
          - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
          - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
          - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
          - `avsStreetResult` string, nullable — Street address portion of card's AVS result
          - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
          - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
          - `cvvResult` string, nullable — CVV result (if no data please send the value U)
          - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
          - `exemptionStatus` string, nullable — Exemption status as received from the processor
          - `external3dsVendorPayload` object, nullable — General payload object
          - `issuerResponseCode` string, nullable — Response code received from issuer
          - `issuerResponseText` string, nullable — Response text received from issuer
          - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
          - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
          - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
          - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
          - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
          - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
          - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
      - `bankTransfer` object, nullable — This object contains information regarding bank transfer payment methods.
        - `accountHolderFirstName` string, nullable — Bank account holder first name
        - `accountHolderLastName` string, nullable — Bank account holder last name
        - `achProcessingType` string, nullable — Type of ACH processing used in the transaction
        - `bankAccountIdentifier` string, required — Bank account unique identifier (IBAN or equivalent)
        - `bankAccountType` string, nullable — Type of bank account payment is made from (e.g. savings/checking, etc.)
        - `bankName` string, nullable — Name of bank payment is made from
        - `paymentGatewayData` object, nullable — This provides information about the payment gateway
          - `gatewayName` string, nullable — Payment gateway name
          - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
        - `paymentSuccessStatus` string, nullable — Response text as received from the service provider
        - `serviceName` string, nullable — Payment method name
      - `billingDetails` Person, required — This object combines a number of pieces of data which contribute to building up an understanding of the person as an individual, both online and offline.
        - `address` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `allAdditionalVerificationDocuments` AdditionalVerificationDocuments[], nullable — Additional identification documents details and verification
          - `address` object, nullable — Address description
            - `address1` string, nullable — Street-level address. Required when full address details are available
            - `address2` string, nullable — Unit-level address
            - `city` string, nullable — City. Required when full address details are available
            - `company` string, nullable — Company
            - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
            - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
              - …
            - `zip` string, nullable — Zipcode
          - `documentDateOfBirth` string, date, nullable — Date of birth as appears on the document. Use YYYY-MM-DD format.
          - `documentExpiration` string, date, nullable — Document's exipration date. Use YYYY-MM-DD format.
          - `documentFirstName` string, nullable — First name as appears on the document
          - `documentIssuingState` string, nullable — Document issuing state or region
          - `documentLastName` string, nullable — Last name as appears on the document
          - `documentNumber` string, nullable — Official document's number (e.g. passport number, driving license number, etc.)
          - `documentSource` 'CAMERA_CAPTURED' | 'UPLOADED_FILE' | 'TYPED' | 'OTHER', required — Source of document (e.g. uploaded file, captured by camera, typed in by customer, etc.)
          - `documentStatus` 'SENT_TO_CLIENT' | 'RECEIVED_FROM_CLIENT' | 'ABANDONED_BY_CLIENT' | 'RECEIVED_FROM_CLIENT_FAULTY', nullable — Status of verification document (e.g. sent to customer, received by customer, abandoned by customer ).
          - `documentType` string, required — Type of document (Passport, ID, Driving license)
          - `documentVerificationServiceAnswer` string, nullable — Answer received from 3rd party document verification services
          - `documentVerificationServiceName` string, nullable — Name of 3rd party document verifcation service
          - `documentVerificationServiceResponsePayload` object, nullable — General payload object
          - `documentVerified` boolean, nullable — True if document was verified as authentic by merchant or 3rd party service
          - `eventTime` number, nullable — Time of event in seconds since unix epoch (UTC, Jan 1, 1970). For example, 01/01/2015 00:00 is 1420070400
          - `nationality` string, nullable — Document holder's nationality
        - `employmentInformation` EmploymentInformation[], nullable — Credit applicant's employment information
          - `employerAddress` object, nullable — Address description
            - `address1` string, nullable — Street-level address. Required when full address details are available
            - `address2` string, nullable — Unit-level address
            - `city` string, nullable — City. Required when full address details are available
            - `company` string, nullable — Company
            - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
            - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
            - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
              - …
            - `zip` string, nullable — Zipcode
          - `employerCompanySizeRange` string, nullable — Employing company's number of employees
          - `employerIndustry` string, nullable — Employing company's industry
          - `employerName` string, nullable — Employing company's name
          - `employerPhone` string, nullable — Employing company's phone
          - `income` object, nullable — A monetary amount in USD or local currenncy.
            - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
            - `amountUSD` string, nullable — Transaction amount in USD
            - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
          - `jobTitle` string, nullable — Job title
        - `personalDetails` PersonalDetails, required — Personal details are those which contribute to building up a picture of the person as an individual, such as name, title, etc..
          - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
          - `email` string, nullable — Email address
          - `firstName` string, nullable — First name
          - `fullName` string, nullable — Full name. Not Needed if firstName and LastName are provided independently.
          - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
          - `lastName` string, nullable — Last name
        - `phone` Phone[], nullable — Phone details
          - `phone` string, required — Phone number including all country and local access codes
          - `smsVerified` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
            - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
            - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
            - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)
      - `cameraCaptured` boolean, nullable — True if payment instrument details were captured by OCR from a picture. False if payment instrument details were manually typed in
      - `cash` boolean, nullable — Payed with cash
      - `creditCard` object, nullable — This provides details relating to the credit card used.
        - `bin` string, required — Credit card's BIN (Bank Identification Number)
        - `cardBank` string, nullable — Credit card's issuing bank
        - `cardBrand` string, nullable — Credit Card's issuer brand
        - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
        - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
        - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
        - `expirationMonth` string, required — Credit card's expiration month, in MM format
        - `expirationYear` string, required — Credit card's expiration year, in YYYY format
        - `fingerprint` string, nullable — Unique identifier for card (sent by gateway or processor)
        - `fullCreditCard` string, nullable — Credit Card's full PAN - needed for the 3DS secure implementation
        - `fullResponsePayload` object, nullable — General payload object
        - `lastFourDigits` string, required — Credit card's last 4 digits (For Amex, take 4 digits from last digit)
        - `nameOnCard` string, required — Cardholder's full name
        - `paymentGatewayData` object, nullable — This provides information about the payment gateway
          - `gatewayName` string, nullable — Payment gateway name
          - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
        - `paymentProcessorData` object, nullable — This provides information about the payment processor
          - `processorName` string, nullable — Payment processor name
          - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
        - `threeDSecure` object, nullable
          - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
            - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
            - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
            - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
            - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
            - `acquirerName` string, nullable — Bank acquirer Name
            - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
            - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
          - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
          - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
          - `forcePsd2Exemption` object, nullable
            - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
            - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
          - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
          - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
          - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
        - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
          - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
          - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
          - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
          - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
          - `avsStreetResult` string, nullable — Street address portion of card's AVS result
          - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
          - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
          - `cvvResult` string, nullable — CVV result (if no data please send the value U)
          - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
          - `exemptionStatus` string, nullable — Exemption status as received from the processor
          - `external3dsVendorPayload` object, nullable — General payload object
          - `issuerResponseCode` string, nullable — Response code received from issuer
          - `issuerResponseText` string, nullable — Response text received from issuer
          - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
          - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
          - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
          - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
          - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
          - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
          - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
      - `creditLineDetails` object, nullable — Details of credit line.
        - `askedToIncreaseCreditLineLimit` boolean, nullable — True if customer asked to increase credit line limit
        - `creditLineLimitIncreaseMethod` 'PRE_APPROVAL' | 'AT_PURCHASE', nullable — Method customer chose to ask to increase credit line limit - PRE_APPROVAL, AT_PURCHASE
        - `currentCreditLineLimit` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `originalCreditLineLimit` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `cryptoWallet` object, nullable — This provides information about the digital crypto wallet associated with the resipient or transaction.
        - `cryptoWalletName` string, nullable — Crypto wallet name
        - `cryptoWalletPaymentId` string, nullable — Crypto wallet payment ID
        - `cryptoWalletType` 'INTERNAL' | 'EXTERNAL', required — Crypto wallet type (Indicate whether wallet provider is internal to the site ecosystem)
      - `digitalWallet` object, nullable — This provides information about the digital wallet account associated with the customer or transaction.
        - `digitalWalletName` 'AMAZONPAY' | 'FACEBOOKPAY' | 'ALIPAY' | 'WECHAT' | 'AMEDIGITAL' | 'MERCADOPAGO' | 'DUE' | 'ZELLE' | 'PAYONEER' | 'ALLIEDWALLET' | 'KONBINI' | 'UNIONPAY' | 'IYZICO' | 'VENMO' | 'BARTER' | 'PAYNOW' | 'PAYCO' | 'KAKAOPAY' | 'NAVERPAY' | 'LINEPAY' | 'BANCONTACT' | 'MBWAY' | 'AIIA' | 'BLIK' | 'EPS' | 'OVO' | 'DANA' | 'GCASH' | 'GOPAY' | 'RAKUTENPAY' | 'APLAZO' | 'GRABPAY' | 'TWINT' | 'TRUEMONEY' | 'SWISH' | 'KLARNA' | 'SHOPBACK' | 'OTHER' | 'PAYPAY' | 'TRUSTLY' | 'PIX' | 'PAYCONIQ' | 'QRIS', required — Digital wallet name
        - `digitalWalletPayerEmail` string, nullable — Email address associated with the digital wallet account
        - `digitalWalletPayerId` string, nullable — Unique identifier for each digital wallet account. This ID should persist across all orders made by the same user, regardless of underlying payment methods.
        - `digitalWalletpaymentId` string, nullable — Digital wallet payment ID
        - `freeTextDigitalWalletName` string, nullable — Specifics about the source of the wallet such as the name / 3rd party name, etc. (required for OTHER digitalWalletName)
        - `fullDigitalWalletResponsePayload` object, nullable — General payload object
        - `payerAccountCountry` string, nullable — Digital wallet account country, two-letter ISO 3166-1 alpha-2 country code
        - `paymentSuccessStatus` string, nullable — Digital wallet payment status
        - `underlyingPaymentMethod` UnderlyingPaymentMethod, required — This provides details relating to an underlying payment method belongs to a digital wallet.
          - `bankTransfer` object, nullable — This object contains information regarding bank transfer payment methods.
            - `accountHolderFirstName` string, nullable — Bank account holder first name
            - `accountHolderLastName` string, nullable — Bank account holder last name
            - `achProcessingType` string, nullable — Type of ACH processing used in the transaction
            - `bankAccountIdentifier` string, required — Bank account unique identifier (IBAN or equivalent)
            - `bankAccountType` string, nullable — Type of bank account payment is made from (e.g. savings/checking, etc.)
            - `bankName` string, nullable — Name of bank payment is made from
            - `paymentGatewayData` object, nullable — This provides information about the payment gateway
              - …
            - `paymentSuccessStatus` string, nullable — Response text as received from the service provider
            - `serviceName` string, nullable — Payment method name
          - `bitcoin` boolean, nullable — Bitcoin payment details
          - `cash` boolean, nullable — Payed with cash
          - `creditCard` object, nullable — This provides details relating to a tokenized card.
            - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
            - `cardBank` string, nullable — Credit card's issuing bank
            - `cardBrand` string, nullable — Credit card's issuer brand
            - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
            - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
            - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
            - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
            - `expirationMonth` string, required — Credit card's expiration month, in MM format
            - `expirationYear` string, required — Credit card's expiration year, in YYYY format
            - `fullResponsePayload` object, nullable — General payload object
            - `lastFourDigits` string, nullable — Credit card's last 4 digits
            - `nameOnCard` string, nullable — Cardholder's full name
            - `paymentProcessorData` object, nullable — This provides information about the payment processor
              - …
            - `threeDSecure` object, nullable
              - …
            - `token` string, required — Credit card token used by the merchant
            - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
            - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
              - …
          - `underlyingPaymentMethodType` 'UNKNOWN' | 'CREDITCARD' | 'BANKTRANSFER' | 'CASH' | 'BITCOIN', required — Underlying payment method type used in current transaction
      - `giftCard` object, nullable — Information about various types of credits used to finance a transaction
        - `activationTime` number, nullable — Time credit/gift card was activated in the account, in seconds since unix epoch (UTC, Jan 1, 1970)
        - `creditCurrency` string, nullable — Original transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `creditOrigin` string, nullable — Source which created gift card for customer.
        - `merchantPaymentId` string, nullable — unique payment identifier for the merchant reference.
        - `value` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `installmentService` object, nullable — This provides details relating to the credit card used.
        - `firstName` string, nullable — Account holder's first name
        - `fullResponsePayload` object, nullable — General payload object
        - `lastName` string, nullable — Account holder's last name
        - `paymentId` string, nullable — Installment payment ID
        - `serviceName` string, nullable — Installment service's name
        - `serviceResponseCode` string, nullable — Response code received from installment service
      - `loyaltyPoints` object, nullable — Loyalty Points information is relevant when customers have entered some kind of loyalty program and are receiving points or other related value as a result
        - `loyaltyPointsCount` number, nullable — Number of points (miles, stars, etc.)
        - `loyaltyPointsSource` 'REFERRAL' | 'IN_ACCOUNT_PURCHASES' | 'PROMOTION' | 'COMPENSATION' | 'CARD_SCHEME_POINTS', nullable — Source of points (promo, referral, etc.)
        - `loyaltyPointsValue` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `merchantPaymentId` string, nullable — unique payment identifier for the merchant reference.
      - `merchantInitiated` object, nullable — Details about merchant initiated payment
        - `initialOrderId` string, nullable — Unique order/transaction identifier of the initial order (CIT).
        - `type` 'RECURRING_TRANSACTION' | 'INSTALMENT_TRANSACTION' | 'ADD_CARD' | 'MAINTAIN_CARD_INFORMATION' | 'ACCOUNT_VERIFICATION' | 'SPLIT_OR_DELAYED_SHIPMENT' | 'TOP_UP' | 'MAIL_ORDER' | 'TELEPHONE_ORDER' | 'WHITELIST_STATUS_CHECK' | 'OTHER_PAYMENT', nullable — Specifies the type of merchant-initiated payment
      - `mobileMoney` object, nullable — This provides information about the mobile money account associated with the customer or transaction.
        - `fullResponsePayload` object, nullable — General payload object
        - `mobileMoneyNetwork` 'MPESA' | 'MTN' | 'MPAWA' | 'MSHWAEI' | 'SAFARICOM' | 'DASH', required — Mobile money provider name
        - `paymentAcquirerData` object, nullable — This provides information about the Acquirer of the transaction
          - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
          - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
          - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
          - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
          - `acquirerName` string, nullable — Bank acquirer Name
          - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
          - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
        - `paymentGatewayData` object, nullable — This provides information about the payment gateway
          - `gatewayName` string, nullable — Payment gateway name
          - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
        - `paymentSuccessStatus` string, required — Mobile money payment status
        - `phoneNumber` string, required — Account phone number
      - `numberOfInstallments` integer, nullable — Number of payments if customer chose to pay in several installments
      - `paymentMethodNickname` string, nullable — Nickname assigned to this payment method by the user
      - `paypal` object, nullable
        - `authorizationId` string, nullable — PayPal authorization ID
        - `fullPaypalResponsePayload` object, nullable — General payload object
        - `payerAccountCountry` string, nullable — PayPal account country, two-letter ISO 3166-1 alpha-2 country code
        - `payerAddressStatus` string, nullable — PayPal payer address status
        - `payerEmail` string, required — PayPal payer Email address
        - `payerId` string, required — PayPal payer ID
        - `payerStatus` string, nullable — PayPal payer status
        - `paymentGatewayData` object, nullable — This provides information about the payment gateway
          - `gatewayName` string, nullable — Payment gateway name
          - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
        - `paymentId` string, nullable — PayPal payment ID
        - `paymentStatus` string, required — PayPal payment status
        - `protectionEligibility` string, nullable — PayPal protection eligibility
      - `recurringPayment` object, nullable
        - `currentPaymentNumber` integer, nullable — The number of payments processed in this recurring event including current transaction (1 for the original transaction)
        - `initialPaymentOrderId` string, required — Original order/transaction identifier that started the recurring event (payment number 1)
        - `isPaymentAmountIdenticalForAllPayments` boolean, nullable — True if the amount is constant between payments
        - `recurringPaymentExpirationDate` string, date, nullable — Date of last expected payment event. Use YYYY-MM-DD format.
        - `recurringPaymentFrequency` string, required — The number of days between transactions.
        - `totalNumberOfPayments` integer, nullable — Expected number of payments processed in this recurring event
      - `samsungPay` object, nullable — This provides details relating to a tokenized card.
        - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
        - `cardBank` string, nullable — Credit card's issuing bank
        - `cardBrand` string, nullable — Credit card's issuer brand
        - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
        - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
        - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
        - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
        - `expirationMonth` string, required — Credit card's expiration month, in MM format
        - `expirationYear` string, required — Credit card's expiration year, in YYYY format
        - `fullResponsePayload` object, nullable — General payload object
        - `lastFourDigits` string, nullable — Credit card's last 4 digits
        - `nameOnCard` string, nullable — Cardholder's full name
        - `paymentProcessorData` object, nullable — This provides information about the payment processor
          - `processorName` string, nullable — Payment processor name
          - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
        - `threeDSecure` object, nullable
          - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
            - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
            - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
            - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
            - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
            - `acquirerName` string, nullable — Bank acquirer Name
            - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
            - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
          - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
          - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
          - `forcePsd2Exemption` object, nullable
            - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
            - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
          - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
          - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
          - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
        - `token` string, required — Credit card token used by the merchant
        - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
        - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
          - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
          - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
          - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
          - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
          - `avsStreetResult` string, nullable — Street address portion of card's AVS result
          - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
          - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
          - `cvvResult` string, nullable — CVV result (if no data please send the value U)
          - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
          - `exemptionStatus` string, nullable — Exemption status as received from the processor
          - `external3dsVendorPayload` object, nullable — General payload object
          - `issuerResponseCode` string, nullable — Response code received from issuer
          - `issuerResponseText` string, nullable — Response text received from issuer
          - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
          - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
          - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
          - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
          - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
          - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
          - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
      - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
        - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
        - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
      - `storeCreditUsed` object, nullable — Information about various types of credits used to finance a transaction
        - `activationTime` number, nullable — Time credit/gift card was activated in the account, in seconds since unix epoch (UTC, Jan 1, 1970)
        - `creditCurrency` string, nullable — Original transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `creditOrigin` string, nullable — Source which created gift card for customer.
        - `merchantPaymentId` string, nullable — unique payment identifier for the merchant reference.
        - `value` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `tokenizedCard` object, nullable — This provides details relating to a tokenized card.
        - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
        - `cardBank` string, nullable — Credit card's issuing bank
        - `cardBrand` string, nullable — Credit card's issuer brand
        - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
        - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
        - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
        - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
        - `expirationMonth` string, required — Credit card's expiration month, in MM format
        - `expirationYear` string, required — Credit card's expiration year, in YYYY format
        - `fullResponsePayload` object, nullable — General payload object
        - `lastFourDigits` string, nullable — Credit card's last 4 digits
        - `nameOnCard` string, nullable — Cardholder's full name
        - `paymentProcessorData` object, nullable — This provides information about the payment processor
          - `processorName` string, nullable — Payment processor name
          - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
        - `threeDSecure` object, nullable
          - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
            - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
            - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
            - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
            - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
            - `acquirerName` string, nullable — Bank acquirer Name
            - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
            - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
          - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
          - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
          - `forcePsd2Exemption` object, nullable
            - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
            - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
          - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
          - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
          - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
        - `token` string, required — Credit card token used by the merchant
        - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
        - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
          - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
          - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
          - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
          - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
          - `avsStreetResult` string, nullable — Street address portion of card's AVS result
          - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
          - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
          - `cvvResult` string, nullable — CVV result (if no data please send the value U)
          - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
          - `exemptionStatus` string, nullable — Exemption status as received from the processor
          - `external3dsVendorPayload` object, nullable — General payload object
          - `issuerResponseCode` string, nullable — Response code received from issuer
          - `issuerResponseText` string, nullable — Response text received from issuer
          - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
          - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
          - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
          - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
          - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
          - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
          - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
      - `venmo` object, nullable — This provides information about the Venmo account associated with the customer or transaction.
        - `fullVenmoResponsePayload` object, nullable — General payload object
        - `paymentId` string, nullable — Venmo payment ID
        - `token` string, required — Token representing the specific payment method used within the Venmo vault
        - `userId` string, required — Venmo userID
        - `userName` string, required — Venmo user name
    - `personalDetails` object, nullable — Personal details are those which contribute to building up a picture of the person as an individual, such as name, title, etc..
      - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
      - `email` string, nullable — Email address
      - `firstName` string, nullable — First name
      - `fullName` string, nullable — Full name. Not Needed if firstName and LastName are provided independently.
      - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
      - `lastName` string, nullable — Last name
    - `phonesInAccount` Phone[], nullable — All phone numbers saved in account
      - `phone` string, required — Phone number including all country and local access codes
      - `smsVerified` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
        - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
        - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
        - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)
    - `ratingAsBuyer` object, nullable — With the increasingly peer-led, peer-reviewed, highly social nature of online commerce, ratings are often available connected to the customer or the purchase.
      - `score` string, nullable — Rating score (numeric - 97 or textual - 'Excellent')
      - `source` string, nullable — Source of rating, for example tripAdvisor, yelp, etc.
      - `type` 'INTERNAL_PEERS' | 'INTERNAL_MERCHANT' | 'EXTERNAL_PEERS' | 'EXTERNAL_INDEPENDENT', nullable — Rating type. Internal if rating was generated within the merchant's site or community, otherwise external.
    - `registrationIP` string, nullable — IP address used by the account owner at the time of registration.
    - `type` 'GUEST' | 'PRIVATE' | 'BUSINESS' | 'VIP' | 'MERCHANT_OPERATED' | 'TRIAL' | 'MERCHANT_EMPLOYEE' | 'PREMIUM_PAID' | 'SMALL_BUSINESS' | 'AGENT' | 'BUSINESS_PRIVATE' | 'BUSINESS_PREMIUM_PAID', nullable — Account type (a business account, a private account, a merchant-operated account)
  - `discounts` Discount[], nullable — A list of all discounts that were given to the customer (Up to ten discounts per transaction)
    - `couponCodeUsed` string, required — Coupon code used
    - `couponDiscountAmount` object, nullable — A monetary amount in USD or local currenncy.
      - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
      - `amountUSD` string, nullable — Transaction amount in USD
      - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
    - `couponDiscountPercent` string, nullable — Coupon discount amount
  - `orderId` string, required — Unique order/transaction identifier. Note that Forter treats this ID as case-insensitive; Order123 and ORDER123 will be identified as the same order.
  - `orderType` 'WEB' | 'PHONE' | 'DYNAMIC_PHONE' | 'MOBILE' | 'MOBILE_IN_STORE' | 'IOS' | 'ANDROID' | 'WAP' | 'STORE' | 'MERCHANT_EMPLOYEE' | 'MAIL_ORDER' | 'AUTOMATIC_RENEWAL_OR_INSTALLMENT_PAYMENT' | 'MERCHANT_INITIATED' | 'UNKNOWN' | 'POS' | 'API_ONLY' | 'PERSONAL_POS' | 'PHONE_LINK' | 'AI_AGENT', required — Platform order was made through
  - `payment` Payment[], required — A list of all payment methods and billing details used in the transaction
    - `allowedMerchantInitiatedTransactions` boolean, nullable — True if customer chose to allow future transactions to initiate without taking further action (payment that's initiated on behalf of a customer)
    - `amount` object, nullable — A monetary amount in USD or local currenncy.
      - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
      - `amountUSD` string, nullable — Transaction amount in USD
      - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
    - `androidPay` object, nullable — This provides details relating to a tokenized card.
      - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
      - `cardBank` string, nullable — Credit card's issuing bank
      - `cardBrand` string, nullable — Credit card's issuer brand
      - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
      - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
      - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
      - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
      - `expirationMonth` string, required — Credit card's expiration month, in MM format
      - `expirationYear` string, required — Credit card's expiration year, in YYYY format
      - `fullResponsePayload` object, nullable — General payload object
      - `lastFourDigits` string, nullable — Credit card's last 4 digits
      - `nameOnCard` string, nullable — Cardholder's full name
      - `paymentProcessorData` object, nullable — This provides information about the payment processor
        - `processorName` string, nullable — Payment processor name
        - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
      - `threeDSecure` object, nullable
        - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
          - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
          - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
          - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
          - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
          - `acquirerName` string, nullable — Bank acquirer Name
          - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
          - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
        - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
        - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
        - `forcePsd2Exemption` object, nullable
          - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
          - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
        - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
        - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
        - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
      - `token` string, required — Credit card token used by the merchant
      - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
      - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
        - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
        - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
        - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
        - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
        - `avsStreetResult` string, nullable — Street address portion of card's AVS result
        - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
        - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
        - `cvvResult` string, nullable — CVV result (if no data please send the value U)
        - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
        - `exemptionStatus` string, nullable — Exemption status as received from the processor
        - `external3dsVendorPayload` object, nullable — General payload object
        - `issuerResponseCode` string, nullable — Response code received from issuer
        - `issuerResponseText` string, nullable — Response text received from issuer
        - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
        - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
        - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
        - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
        - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
        - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
        - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
    - `applePay` object, nullable — This provides details relating to a tokenized card.
      - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
      - `cardBank` string, nullable — Credit card's issuing bank
      - `cardBrand` string, nullable — Credit card's issuer brand
      - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
      - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
      - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
      - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
      - `expirationMonth` string, required — Credit card's expiration month, in MM format
      - `expirationYear` string, required — Credit card's expiration year, in YYYY format
      - `fullResponsePayload` object, nullable — General payload object
      - `lastFourDigits` string, nullable — Credit card's last 4 digits
      - `nameOnCard` string, nullable — Cardholder's full name
      - `paymentProcessorData` object, nullable — This provides information about the payment processor
        - `processorName` string, nullable — Payment processor name
        - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
      - `threeDSecure` object, nullable
        - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
          - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
          - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
          - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
          - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
          - `acquirerName` string, nullable — Bank acquirer Name
          - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
          - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
        - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
        - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
        - `forcePsd2Exemption` object, nullable
          - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
          - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
        - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
        - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
        - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
      - `token` string, required — Credit card token used by the merchant
      - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
      - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
        - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
        - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
        - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
        - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
        - `avsStreetResult` string, nullable — Street address portion of card's AVS result
        - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
        - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
        - `cvvResult` string, nullable — CVV result (if no data please send the value U)
        - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
        - `exemptionStatus` string, nullable — Exemption status as received from the processor
        - `external3dsVendorPayload` object, nullable — General payload object
        - `issuerResponseCode` string, nullable — Response code received from issuer
        - `issuerResponseText` string, nullable — Response text received from issuer
        - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
        - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
        - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
        - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
        - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
        - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
        - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
    - `bankTransfer` object, nullable — This object contains information regarding bank transfer payment methods.
      - `accountHolderFirstName` string, nullable — Bank account holder first name
      - `accountHolderLastName` string, nullable — Bank account holder last name
      - `achProcessingType` string, nullable — Type of ACH processing used in the transaction
      - `bankAccountIdentifier` string, required — Bank account unique identifier (IBAN or equivalent)
      - `bankAccountType` string, nullable — Type of bank account payment is made from (e.g. savings/checking, etc.)
      - `bankName` string, nullable — Name of bank payment is made from
      - `paymentGatewayData` object, nullable — This provides information about the payment gateway
        - `gatewayName` string, nullable — Payment gateway name
        - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
      - `paymentSuccessStatus` string, nullable — Response text as received from the service provider
      - `serviceName` string, nullable — Payment method name
    - `billingDetails` Person, required — This object combines a number of pieces of data which contribute to building up an understanding of the person as an individual, both online and offline.
      - `address` object, nullable — Address description
        - `address1` string, nullable — Street-level address. Required when full address details are available
        - `address2` string, nullable — Unit-level address
        - `city` string, nullable — City. Required when full address details are available
        - `company` string, nullable — Company
        - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
        - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
        - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
          - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
          - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
        - `zip` string, nullable — Zipcode
      - `allAdditionalVerificationDocuments` AdditionalVerificationDocuments[], nullable — Additional identification documents details and verification
        - `address` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `documentDateOfBirth` string, date, nullable — Date of birth as appears on the document. Use YYYY-MM-DD format.
        - `documentExpiration` string, date, nullable — Document's exipration date. Use YYYY-MM-DD format.
        - `documentFirstName` string, nullable — First name as appears on the document
        - `documentIssuingState` string, nullable — Document issuing state or region
        - `documentLastName` string, nullable — Last name as appears on the document
        - `documentNumber` string, nullable — Official document's number (e.g. passport number, driving license number, etc.)
        - `documentSource` 'CAMERA_CAPTURED' | 'UPLOADED_FILE' | 'TYPED' | 'OTHER', required — Source of document (e.g. uploaded file, captured by camera, typed in by customer, etc.)
        - `documentStatus` 'SENT_TO_CLIENT' | 'RECEIVED_FROM_CLIENT' | 'ABANDONED_BY_CLIENT' | 'RECEIVED_FROM_CLIENT_FAULTY', nullable — Status of verification document (e.g. sent to customer, received by customer, abandoned by customer ).
        - `documentType` string, required — Type of document (Passport, ID, Driving license)
        - `documentVerificationServiceAnswer` string, nullable — Answer received from 3rd party document verification services
        - `documentVerificationServiceName` string, nullable — Name of 3rd party document verifcation service
        - `documentVerificationServiceResponsePayload` object, nullable — General payload object
        - `documentVerified` boolean, nullable — True if document was verified as authentic by merchant or 3rd party service
        - `eventTime` number, nullable — Time of event in seconds since unix epoch (UTC, Jan 1, 1970). For example, 01/01/2015 00:00 is 1420070400
        - `nationality` string, nullable — Document holder's nationality
      - `employmentInformation` EmploymentInformation[], nullable — Credit applicant's employment information
        - `employerAddress` object, nullable — Address description
          - `address1` string, nullable — Street-level address. Required when full address details are available
          - `address2` string, nullable — Unit-level address
          - `city` string, nullable — City. Required when full address details are available
          - `company` string, nullable — Company
          - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
          - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
          - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
            - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
            - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
          - `zip` string, nullable — Zipcode
        - `employerCompanySizeRange` string, nullable — Employing company's number of employees
        - `employerIndustry` string, nullable — Employing company's industry
        - `employerName` string, nullable — Employing company's name
        - `employerPhone` string, nullable — Employing company's phone
        - `income` object, nullable — A monetary amount in USD or local currenncy.
          - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
          - `amountUSD` string, nullable — Transaction amount in USD
          - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
        - `jobTitle` string, nullable — Job title
      - `personalDetails` PersonalDetails, required — Personal details are those which contribute to building up a picture of the person as an individual, such as name, title, etc..
        - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
        - `email` string, nullable — Email address
        - `firstName` string, nullable — First name
        - `fullName` string, nullable — Full name. Not Needed if firstName and LastName are provided independently.
        - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
        - `lastName` string, nullable — Last name
      - `phone` Phone[], nullable — Phone details
        - `phone` string, required — Phone number including all country and local access codes
        - `smsVerified` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
          - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
          - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
          - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)
    - `cameraCaptured` boolean, nullable — True if payment instrument details were captured by OCR from a picture. False if payment instrument details were manually typed in
    - `cash` boolean, nullable — Payed with cash
    - `creditCard` object, nullable — This provides details relating to the credit card used.
      - `bin` string, required — Credit card's BIN (Bank Identification Number)
      - `cardBank` string, nullable — Credit card's issuing bank
      - `cardBrand` string, nullable — Credit Card's issuer brand
      - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
      - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
      - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
      - `expirationMonth` string, required — Credit card's expiration month, in MM format
      - `expirationYear` string, required — Credit card's expiration year, in YYYY format
      - `fingerprint` string, nullable — Unique identifier for card (sent by gateway or processor)
      - `fullCreditCard` string, nullable — Credit Card's full PAN - needed for the 3DS secure implementation
      - `fullResponsePayload` object, nullable — General payload object
      - `lastFourDigits` string, required — Credit card's last 4 digits (For Amex, take 4 digits from last digit)
      - `nameOnCard` string, required — Cardholder's full name
      - `paymentGatewayData` object, nullable — This provides information about the payment gateway
        - `gatewayName` string, nullable — Payment gateway name
        - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
      - `paymentProcessorData` object, nullable — This provides information about the payment processor
        - `processorName` string, nullable — Payment processor name
        - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
      - `threeDSecure` object, nullable
        - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
          - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
          - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
          - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
          - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
          - `acquirerName` string, nullable — Bank acquirer Name
          - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
          - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
        - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
        - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
        - `forcePsd2Exemption` object, nullable
          - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
          - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
        - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
        - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
        - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
      - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
        - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
        - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
        - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
        - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
        - `avsStreetResult` string, nullable — Street address portion of card's AVS result
        - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
        - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
        - `cvvResult` string, nullable — CVV result (if no data please send the value U)
        - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
        - `exemptionStatus` string, nullable — Exemption status as received from the processor
        - `external3dsVendorPayload` object, nullable — General payload object
        - `issuerResponseCode` string, nullable — Response code received from issuer
        - `issuerResponseText` string, nullable — Response text received from issuer
        - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
        - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
        - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
        - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
        - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
        - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
        - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
    - `creditLineDetails` object, nullable — Details of credit line.
      - `askedToIncreaseCreditLineLimit` boolean, nullable — True if customer asked to increase credit line limit
      - `creditLineLimitIncreaseMethod` 'PRE_APPROVAL' | 'AT_PURCHASE', nullable — Method customer chose to ask to increase credit line limit - PRE_APPROVAL, AT_PURCHASE
      - `currentCreditLineLimit` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `originalCreditLineLimit` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
    - `cryptoWallet` object, nullable — This provides information about the digital crypto wallet associated with the resipient or transaction.
      - `cryptoWalletName` string, nullable — Crypto wallet name
      - `cryptoWalletPaymentId` string, nullable — Crypto wallet payment ID
      - `cryptoWalletType` 'INTERNAL' | 'EXTERNAL', required — Crypto wallet type (Indicate whether wallet provider is internal to the site ecosystem)
    - `digitalWallet` object, nullable — This provides information about the digital wallet account associated with the customer or transaction.
      - `digitalWalletName` 'AMAZONPAY' | 'FACEBOOKPAY' | 'ALIPAY' | 'WECHAT' | 'AMEDIGITAL' | 'MERCADOPAGO' | 'DUE' | 'ZELLE' | 'PAYONEER' | 'ALLIEDWALLET' | 'KONBINI' | 'UNIONPAY' | 'IYZICO' | 'VENMO' | 'BARTER' | 'PAYNOW' | 'PAYCO' | 'KAKAOPAY' | 'NAVERPAY' | 'LINEPAY' | 'BANCONTACT' | 'MBWAY' | 'AIIA' | 'BLIK' | 'EPS' | 'OVO' | 'DANA' | 'GCASH' | 'GOPAY' | 'RAKUTENPAY' | 'APLAZO' | 'GRABPAY' | 'TWINT' | 'TRUEMONEY' | 'SWISH' | 'KLARNA' | 'SHOPBACK' | 'OTHER' | 'PAYPAY' | 'TRUSTLY' | 'PIX' | 'PAYCONIQ' | 'QRIS', required — Digital wallet name
      - `digitalWalletPayerEmail` string, nullable — Email address associated with the digital wallet account
      - `digitalWalletPayerId` string, nullable — Unique identifier for each digital wallet account. This ID should persist across all orders made by the same user, regardless of underlying payment methods.
      - `digitalWalletpaymentId` string, nullable — Digital wallet payment ID
      - `freeTextDigitalWalletName` string, nullable — Specifics about the source of the wallet such as the name / 3rd party name, etc. (required for OTHER digitalWalletName)
      - `fullDigitalWalletResponsePayload` object, nullable — General payload object
      - `payerAccountCountry` string, nullable — Digital wallet account country, two-letter ISO 3166-1 alpha-2 country code
      - `paymentSuccessStatus` string, nullable — Digital wallet payment status
      - `underlyingPaymentMethod` UnderlyingPaymentMethod, required — This provides details relating to an underlying payment method belongs to a digital wallet.
        - `bankTransfer` object, nullable — This object contains information regarding bank transfer payment methods.
          - `accountHolderFirstName` string, nullable — Bank account holder first name
          - `accountHolderLastName` string, nullable — Bank account holder last name
          - `achProcessingType` string, nullable — Type of ACH processing used in the transaction
          - `bankAccountIdentifier` string, required — Bank account unique identifier (IBAN or equivalent)
          - `bankAccountType` string, nullable — Type of bank account payment is made from (e.g. savings/checking, etc.)
          - `bankName` string, nullable — Name of bank payment is made from
          - `paymentGatewayData` object, nullable — This provides information about the payment gateway
            - `gatewayName` string, nullable — Payment gateway name
            - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
          - `paymentSuccessStatus` string, nullable — Response text as received from the service provider
          - `serviceName` string, nullable — Payment method name
        - `bitcoin` boolean, nullable — Bitcoin payment details
        - `cash` boolean, nullable — Payed with cash
        - `creditCard` object, nullable — This provides details relating to a tokenized card.
          - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
          - `cardBank` string, nullable — Credit card's issuing bank
          - `cardBrand` string, nullable — Credit card's issuer brand
          - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
          - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
          - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
          - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
          - `expirationMonth` string, required — Credit card's expiration month, in MM format
          - `expirationYear` string, required — Credit card's expiration year, in YYYY format
          - `fullResponsePayload` object, nullable — General payload object
          - `lastFourDigits` string, nullable — Credit card's last 4 digits
          - `nameOnCard` string, nullable — Cardholder's full name
          - `paymentProcessorData` object, nullable — This provides information about the payment processor
            - `processorName` string, nullable — Payment processor name
            - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
          - `threeDSecure` object, nullable
            - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
              - …
            - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
            - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
            - `forcePsd2Exemption` object, nullable
              - …
            - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
            - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
            - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
          - `token` string, required — Credit card token used by the merchant
          - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
          - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
            - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
            - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
            - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
            - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
            - `avsStreetResult` string, nullable — Street address portion of card's AVS result
            - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
            - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
            - `cvvResult` string, nullable — CVV result (if no data please send the value U)
            - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
            - `exemptionStatus` string, nullable — Exemption status as received from the processor
            - `external3dsVendorPayload` object, nullable — General payload object
            - `issuerResponseCode` string, nullable — Response code received from issuer
            - `issuerResponseText` string, nullable — Response text received from issuer
            - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
            - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
            - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
            - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
            - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
            - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
            - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
        - `underlyingPaymentMethodType` 'UNKNOWN' | 'CREDITCARD' | 'BANKTRANSFER' | 'CASH' | 'BITCOIN', required — Underlying payment method type used in current transaction
    - `giftCard` object, nullable — Information about various types of credits used to finance a transaction
      - `activationTime` number, nullable — Time credit/gift card was activated in the account, in seconds since unix epoch (UTC, Jan 1, 1970)
      - `creditCurrency` string, nullable — Original transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `creditOrigin` string, nullable — Source which created gift card for customer.
      - `merchantPaymentId` string, nullable — unique payment identifier for the merchant reference.
      - `value` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
    - `installmentService` object, nullable — This provides details relating to the credit card used.
      - `firstName` string, nullable — Account holder's first name
      - `fullResponsePayload` object, nullable — General payload object
      - `lastName` string, nullable — Account holder's last name
      - `paymentId` string, nullable — Installment payment ID
      - `serviceName` string, nullable — Installment service's name
      - `serviceResponseCode` string, nullable — Response code received from installment service
    - `loyaltyPoints` object, nullable — Loyalty Points information is relevant when customers have entered some kind of loyalty program and are receiving points or other related value as a result
      - `loyaltyPointsCount` number, nullable — Number of points (miles, stars, etc.)
      - `loyaltyPointsSource` 'REFERRAL' | 'IN_ACCOUNT_PURCHASES' | 'PROMOTION' | 'COMPENSATION' | 'CARD_SCHEME_POINTS', nullable — Source of points (promo, referral, etc.)
      - `loyaltyPointsValue` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `merchantPaymentId` string, nullable — unique payment identifier for the merchant reference.
    - `merchantInitiated` object, nullable — Details about merchant initiated payment
      - `initialOrderId` string, nullable — Unique order/transaction identifier of the initial order (CIT).
      - `type` 'RECURRING_TRANSACTION' | 'INSTALMENT_TRANSACTION' | 'ADD_CARD' | 'MAINTAIN_CARD_INFORMATION' | 'ACCOUNT_VERIFICATION' | 'SPLIT_OR_DELAYED_SHIPMENT' | 'TOP_UP' | 'MAIL_ORDER' | 'TELEPHONE_ORDER' | 'WHITELIST_STATUS_CHECK' | 'OTHER_PAYMENT', nullable — Specifies the type of merchant-initiated payment
    - `mobileMoney` object, nullable — This provides information about the mobile money account associated with the customer or transaction.
      - `fullResponsePayload` object, nullable — General payload object
      - `mobileMoneyNetwork` 'MPESA' | 'MTN' | 'MPAWA' | 'MSHWAEI' | 'SAFARICOM' | 'DASH', required — Mobile money provider name
      - `paymentAcquirerData` object, nullable — This provides information about the Acquirer of the transaction
        - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
        - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
        - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
        - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
        - `acquirerName` string, nullable — Bank acquirer Name
        - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
        - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
      - `paymentGatewayData` object, nullable — This provides information about the payment gateway
        - `gatewayName` string, nullable — Payment gateway name
        - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
      - `paymentSuccessStatus` string, required — Mobile money payment status
      - `phoneNumber` string, required — Account phone number
    - `numberOfInstallments` integer, nullable — Number of payments if customer chose to pay in several installments
    - `paymentMethodNickname` string, nullable — Nickname assigned to this payment method by the user
    - `paypal` object, nullable
      - `authorizationId` string, nullable — PayPal authorization ID
      - `fullPaypalResponsePayload` object, nullable — General payload object
      - `payerAccountCountry` string, nullable — PayPal account country, two-letter ISO 3166-1 alpha-2 country code
      - `payerAddressStatus` string, nullable — PayPal payer address status
      - `payerEmail` string, required — PayPal payer Email address
      - `payerId` string, required — PayPal payer ID
      - `payerStatus` string, nullable — PayPal payer status
      - `paymentGatewayData` object, nullable — This provides information about the payment gateway
        - `gatewayName` string, nullable — Payment gateway name
        - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
      - `paymentId` string, nullable — PayPal payment ID
      - `paymentStatus` string, required — PayPal payment status
      - `protectionEligibility` string, nullable — PayPal protection eligibility
    - `recurringPayment` object, nullable
      - `currentPaymentNumber` integer, nullable — The number of payments processed in this recurring event including current transaction (1 for the original transaction)
      - `initialPaymentOrderId` string, required — Original order/transaction identifier that started the recurring event (payment number 1)
      - `isPaymentAmountIdenticalForAllPayments` boolean, nullable — True if the amount is constant between payments
      - `recurringPaymentExpirationDate` string, date, nullable — Date of last expected payment event. Use YYYY-MM-DD format.
      - `recurringPaymentFrequency` string, required — The number of days between transactions.
      - `totalNumberOfPayments` integer, nullable — Expected number of payments processed in this recurring event
    - `samsungPay` object, nullable — This provides details relating to a tokenized card.
      - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
      - `cardBank` string, nullable — Credit card's issuing bank
      - `cardBrand` string, nullable — Credit card's issuer brand
      - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
      - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
      - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
      - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
      - `expirationMonth` string, required — Credit card's expiration month, in MM format
      - `expirationYear` string, required — Credit card's expiration year, in YYYY format
      - `fullResponsePayload` object, nullable — General payload object
      - `lastFourDigits` string, nullable — Credit card's last 4 digits
      - `nameOnCard` string, nullable — Cardholder's full name
      - `paymentProcessorData` object, nullable — This provides information about the payment processor
        - `processorName` string, nullable — Payment processor name
        - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
      - `threeDSecure` object, nullable
        - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
          - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
          - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
          - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
          - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
          - `acquirerName` string, nullable — Bank acquirer Name
          - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
          - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
        - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
        - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
        - `forcePsd2Exemption` object, nullable
          - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
          - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
        - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
        - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
        - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
      - `token` string, required — Credit card token used by the merchant
      - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
      - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
        - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
        - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
        - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
        - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
        - `avsStreetResult` string, nullable — Street address portion of card's AVS result
        - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
        - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
        - `cvvResult` string, nullable — CVV result (if no data please send the value U)
        - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
        - `exemptionStatus` string, nullable — Exemption status as received from the processor
        - `external3dsVendorPayload` object, nullable — General payload object
        - `issuerResponseCode` string, nullable — Response code received from issuer
        - `issuerResponseText` string, nullable — Response text received from issuer
        - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
        - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
        - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
        - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
        - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
        - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
        - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
    - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
      - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
      - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
    - `storeCreditUsed` object, nullable — Information about various types of credits used to finance a transaction
      - `activationTime` number, nullable — Time credit/gift card was activated in the account, in seconds since unix epoch (UTC, Jan 1, 1970)
      - `creditCurrency` string, nullable — Original transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `creditOrigin` string, nullable — Source which created gift card for customer.
      - `merchantPaymentId` string, nullable — unique payment identifier for the merchant reference.
      - `value` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
    - `tokenizedCard` object, nullable — This provides details relating to a tokenized card.
      - `bin` string, nullable — Credit card's BIN (Bank Identification Number)
      - `cardBank` string, nullable — Credit card's issuing bank
      - `cardBrand` string, nullable — Credit card's issuer brand
      - `cardType` 'CREDIT' | 'DEBIT' | 'PREPAID' | 'UNKNOWN', nullable — Payment card type
      - `countryOfIssuance` string, nullable — Credit card's issuing country, two-letter ISO 3166-1 alpha-2 country code
      - `creationTime` number, nullable — Time the card was tokenized by the merchant in seconds since unix epoch (UTC, Jan 1, 1970)
      - `creditCardCorrelationId` string, nullable — Credit card - CorrelationId that was recieved by the init 3DS API
      - `expirationMonth` string, required — Credit card's expiration month, in MM format
      - `expirationYear` string, required — Credit card's expiration year, in YYYY format
      - `fullResponsePayload` object, nullable — General payload object
      - `lastFourDigits` string, nullable — Credit card's last 4 digits
      - `nameOnCard` string, nullable — Cardholder's full name
      - `paymentProcessorData` object, nullable — This provides information about the payment processor
        - `processorName` string, nullable — Payment processor name
        - `processorTransactionId` string, nullable — Unique transaction identifier (sent by processor)
      - `threeDSecure` object, nullable
        - `acquirerData` object, nullable — This provides information about the Acquirer of the transaction
          - `acquirerBIN` string, nullable — Bank acquirer BIN (Bank Identification Number)
          - `acquirerCountry` 'AF' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CK' | 'CR' | 'HR' | 'CU' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'TP' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'CI' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'GB' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'SH' | 'KN' | 'LC' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TJ' | 'TZ' | 'TH' | 'CD' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'YU' | 'ZM' | 'ZW', nullable — Acquirer country
          - `acquirerMerchantId` string, nullable — Merchant ID (MID) - merchant ID is a unique code provided to merchants by their payment processor
          - `acquirerMerchantName` string, nullable — Merchant Name as appearing in processor records
          - `acquirerName` string, nullable — Bank acquirer Name
          - `merchantCategoryCode` number, nullable — A Merchant Category Code (MCC) is a four-digit number listed in ISO 18245 for retail financial services. MCC is used to classify the business by the type of goods or services it provides.
          - `merchantCountryCode` number, nullable — Merchant country code is a three-digit number listed in ISO 3166‑1 (zero‑padded)
        - `challengeIndicator` 'NO_PREFERENCE' | 'NO_CHALLENGE' | 'CHALLENGE' | 'CHALLENGE_AS_MANDATE', nullable — Request your preference regarding the executing of 3DS challange regardless of Forter's decision and recommendation
        - `execute3ds` 'FORCE_3DS' | 'FORCE_DATA_ONLY' | 'NOT_SUPPORTED_BY_MERCHANT' | 'DYNAMIC_FORTER_DECISION', nullable — Request your preference regarding the execution of 3DS
        - `forcePsd2Exemption` object, nullable
          - `channel` 'THREEDS_RAILS' | 'AUTHORIZATION', required — The channel through which the exemption is requested
          - `type` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', required — The type of exemption requested
        - `requestChallenge` boolean, nullable — Indicates if a 3DS challenge should be requested from the Issuer ACS.
        - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction generated by the Init 3DS API and used to link the init call to the order call
        - `threeDsExecutor` 'FORTER' | 'MERCHANT', nullable — Request your preference regarding the 3DS executor. To be used only for an edge case, where a merchant with 3DS execution demands Forter to not execute 3DS on a limited subset of TXs
      - `token` string, required — Credit card token used by the merchant
      - `tokenType` 'PSP' | 'EMV_PAYMENT_TOKEN' | 'MERCHANT_GENERATED' | 'FORTER_TOKEN' | 'OTHER', nullable — Token type, determined by the party/protocol the token created by
      - `verificationResults` CreditCardVerification, required — Credit card CVV and AVS results
        - `authorizationCode` string, nullable — Card authorization code from payment gateway. Required if both processorResponseText and processorResponseCode are not provided.
        - `authorizationProcessedWith3DS` boolean, nullable — 3DSecure - indicating that the 3DS results were sent to processor and have been used during the authorization
        - `avsFullResult` string, nullable — Procesor response code for AVS. Only required in cases where all AVS results (zipcode, street address, and name when available) arrive as one string
        - `avsNameResult` string, nullable — Name portion of card's AVS result (when available)
        - `avsStreetResult` string, nullable — Street address portion of card's AVS result
        - `avsZipResult` string, nullable — Zipcode portion of card's AVS result
        - `cavvResult` string, nullable — 3DSecure - Authentication Value (CAVV / AAV for 3DS1) recieved from authorization/Authentication response
        - `cvvResult` string, nullable — CVV result (if no data please send the value U)
        - `eciValue` string, nullable — 3DSecure - ECI value recieved from authorization/authentication response
        - `exemptionStatus` string, nullable — Exemption status as received from the processor
        - `external3dsVendorPayload` object, nullable — General payload object
        - `issuerResponseCode` string, nullable — Response code received from issuer
        - `issuerResponseText` string, nullable — Response text received from issuer
        - `liabilityShift` boolean, nullable — 3DSecure - liability shift - indicate whether the chargeback liability shifted to the card issuer
        - `partyExecuted3DS` 'PSP' | 'FORTER' | 'BOTH', nullable — 3DSecure - Party executed the 3DS authentication
        - `processorResponseCode` string, nullable — Response code received from processor. Required if both processorResponseText and authorizationCode are not provided.
        - `processorResponseText` string, nullable — Response text received from processor. Required if both processorResponseCode and authorizationCode are not provided.
        - `threeDsInteractionMode` 'FRICTIONLESS' | 'CHALLENGED', nullable — 3DSecure - Indication of the friction that the user experienced
        - `threeDsStatus` string, nullable — 3DSecure - Status text received from 3D secure vendor
        - `threeDsVersion` string, nullable — 3DSecure - Version used in the transaction
    - `venmo` object, nullable — This provides information about the Venmo account associated with the customer or transaction.
      - `fullVenmoResponsePayload` object, nullable — General payload object
      - `paymentId` string, nullable — Venmo payment ID
      - `token` string, required — Token representing the specific payment method used within the Venmo vault
      - `userId` string, required — Venmo userID
      - `userName` string, required — Venmo user name
  - `phoneOrderInformation` object, nullable — Information to be retrieved from the caller or the call center system about the order if placed over the phone.
    - `callerFirstName` string, nullable — The caller's first name
    - `callerId` string, nullable — The caller's phone number as identified by the customer support system.
    - `callerLastName` string, nullable — The caller's last name
    - `customerWebId` string, required — The webId value as injected by Forter's script
  - `primaryDeliveryDetails` DeliveryDetails, required — Delivery Details provides further information about the kind of delivery chosen by the customer.
    - `delayedDeliveryDate` string, date, nullable — Use only if customer explicitly selected a delayed delivery date beyond the merchant’s standard options. Use YYYY-MM-DD format.
    - `delayedDeliveryTime` number, nullable — Use only if customer explicitly selected a delayed delivery date, with specific time of day, beyond the merchant’s standard options. Should be sent in seconds since unix epoch (UTC, Jan 1, 1970).
    - `deliveryComments` string, nullable — Any comments or requests customer had for delivery
    - `deliveryMethod` string, required — Delivery method chosen by customer such as postal service, email, in game transfer, etc.
    - `deliveryPrice` object, nullable — A monetary amount in USD or local currenncy.
      - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
      - `amountUSD` string, nullable — Transaction amount in USD
      - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
    - `deliveryType` 'DIGITAL' | 'PHYSICAL' | 'HYBRID', required — Type of delivery: PHYSICAL for any type of shipped goods. DIGITAL for non-shipped goods (services, gift cards etc.)
  - `primaryRecipient` Beneficiary, required — Beneficiaries are people who have received goods sent to them by customers through your website - as when a parent sends an item to a child at university, or when a gift is purchased and sent straight to the recipient.
    - `additionalVerificationDocuments` object, nullable — Additional Verification Documents includes any details gained from identifying documents or materials which the customer has shared.
      - `address` object, nullable — Address description
        - `address1` string, nullable — Street-level address. Required when full address details are available
        - `address2` string, nullable — Unit-level address
        - `city` string, nullable — City. Required when full address details are available
        - `company` string, nullable — Company
        - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
        - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
        - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
          - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
          - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
        - `zip` string, nullable — Zipcode
      - `documentDateOfBirth` string, date, nullable — Date of birth as appears on the document. Use YYYY-MM-DD format.
      - `documentExpiration` string, date, nullable — Document's exipration date. Use YYYY-MM-DD format.
      - `documentFirstName` string, nullable — First name as appears on the document
      - `documentIssuingState` string, nullable — Document issuing state or region
      - `documentLastName` string, nullable — Last name as appears on the document
      - `documentNumber` string, nullable — Official document's number (e.g. passport number, driving license number, etc.)
      - `documentSource` 'CAMERA_CAPTURED' | 'UPLOADED_FILE' | 'TYPED' | 'OTHER', required — Source of document (e.g. uploaded file, captured by camera, typed in by customer, etc.)
      - `documentStatus` 'SENT_TO_CLIENT' | 'RECEIVED_FROM_CLIENT' | 'ABANDONED_BY_CLIENT' | 'RECEIVED_FROM_CLIENT_FAULTY', nullable — Status of verification document (e.g. sent to customer, received by customer, abandoned by customer ).
      - `documentType` string, required — Type of document (Passport, ID, Driving license)
      - `documentVerificationServiceAnswer` string, nullable — Answer received from 3rd party document verification services
      - `documentVerificationServiceName` string, nullable — Name of 3rd party document verifcation service
      - `documentVerificationServiceResponsePayload` object, nullable — General payload object
      - `documentVerified` boolean, nullable — True if document was verified as authentic by merchant or 3rd party service
      - `eventTime` number, nullable — Time of event in seconds since unix epoch (UTC, Jan 1, 1970). For example, 01/01/2015 00:00 is 1420070400
      - `nationality` string, nullable — Document holder's nationality
    - `address` object, nullable — Address description
      - `address1` string, nullable — Street-level address. Required when full address details are available
      - `address2` string, nullable — Unit-level address
      - `city` string, nullable — City. Required when full address details are available
      - `company` string, nullable — Company
      - `country` string, required — Country, two-letter ISO 3166-1 alpha-2 country code
      - `region` string, nullable — Top-level administrative subdivision - state/province/department/etc. Can be either abbreviated format or full name (NY/New York)
      - `savedData` object, nullable — Saved Data refers to information which persists in the account settings, such as address or payment information.
        - `choseToSaveData` boolean, nullable — True if customer chose to save data in the account for future use
        - `usedSavedData` boolean, nullable — True if customer chose to use data saved in the account
      - `zip` string, nullable — Zipcode
    - `bankAccount` object, nullable — This object contains information regarding bank transfer payment methods.
      - `accountHolderFirstName` string, nullable — Bank account holder first name
      - `accountHolderLastName` string, nullable — Bank account holder last name
      - `achProcessingType` string, nullable — Type of ACH processing used in the transaction
      - `bankAccountIdentifier` string, required — Bank account unique identifier (IBAN or equivalent)
      - `bankAccountType` string, nullable — Type of bank account payment is made from (e.g. savings/checking, etc.)
      - `bankName` string, nullable — Name of bank payment is made from
      - `paymentGatewayData` object, nullable — This provides information about the payment gateway
        - `gatewayName` string, nullable — Payment gateway name
        - `gatewayTransactionId` string, nullable — Unique transaction identifier (sent by gateway)
      - `paymentSuccessStatus` string, nullable — Response text as received from the service provider
      - `serviceName` string, nullable — Payment method name
    - `comments` object, nullable — Comments are notes the customer included as part of their transaction, whether directed to the merchant or to the intended recipient.
      - `merchantComments` string, nullable — Comments by the merchant
      - `messageToBeneficiary` string, nullable — Comments the customer left to the beneficiary of the purchase made
      - `userCommentsToMerchant` string, nullable — Comments the customer left to the merchant
    - `cryptoWallet` object, nullable — This provides information about the digital crypto wallet associated with the resipient or transaction.
      - `cryptoWalletName` string, nullable — Crypto wallet name
      - `cryptoWalletPaymentId` string, nullable — Crypto wallet payment ID
      - `cryptoWalletType` 'INTERNAL' | 'EXTERNAL', required — Crypto wallet type (Indicate whether wallet provider is internal to the site ecosystem)
    - `identityCard` string, nullable — Recipient's identity card number
    - `loyaltyProgram` LoyaltyProgram[], nullable — Details regarding loyalty program customer entered to receive points for this order
      - `accountNumber` string, nullable — Customer's rewards/loyalty/frequent flyer account number
      - `loyaltyPointsValue` object, nullable — A monetary amount in USD or local currenncy.
        - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
        - `amountUSD` string, nullable — Transaction amount in USD
        - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
      - `programName` string, nullable — Name of program
      - `programPoints` number, nullable — Customer's rewards/loyalty/frequent flyer miles/point/stars
      - `tier` string, nullable — Program tier name
    - `personalDetails` PersonalDetails, required — Personal details are those which contribute to building up a picture of the person as an individual, such as name, title, etc..
      - `birthdate` string, date, nullable — Date of birth. Use YYYY-MM-DD format.
      - `email` string, nullable — Email address
      - `firstName` string, nullable — First name
      - `fullName` string, nullable — Full name. Not Needed if firstName and LastName are provided independently.
      - `gender` 'MALE' | 'FEMALE' | 'CHOSE_NOT_TO_SPECIFY' | 'NONE', nullable — Gender
      - `lastName` string, nullable — Last name
    - `phone` Phone[], nullable — Phone details
      - `phone` string, required — Phone number including all country and local access codes
      - `smsVerified` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
        - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
        - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
        - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)
  - `timeSentToForter` number, nullable — The time the request was sent to Forter in MILLISECONDS since unix epoch (Jan 1, 1970)
  - `totalAmount` Amount, required — A monetary amount in USD or local currenncy.
    - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
    - `amountUSD` string, nullable — Transaction amount in USD
    - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
  - `totalDiscount` object, nullable — This provides information relating to any kind of offer, coupon or other discount used by the customer.
    - `couponCodeUsed` string, required — Coupon code used
    - `couponDiscountAmount` object, nullable — A monetary amount in USD or local currenncy.
      - `amountLocalCurrency` string, nullable — Transaction amount in currency chosen by the buyer
      - `amountUSD` string, nullable — Transaction amount in USD
      - `currency` string, nullable — Transaction currency chosen by the buyer, 3-letter ISO-4217 format currency code
    - `couponDiscountPercent` string, nullable — Coupon discount amount

## Response `200`

Example v3OrderResponse

- V3OrderResponse — Response for managed order request can be either of shapes: 1. {"managedOrderToken": "..."} - only `managedOrderToken` field and nothing else 2. {"forterDecision": "...", ...} - all fields *but* `managedOrderToken`
  - `decisionReason` string, required — The main reason behind the Forter decision
  - `forterDecision` 'APPROVE' | 'DECLINE' | 'NOT REVIEWED', required — The latest Forter decision regarding the attempted action
  - `linkToEventInDashboard` string, required — Link to the event in the decision dashboard
  - `managedOrderToken` string, nullable
  - `merchantPolicyId` string, required — UID of the custom policy created in Forter's Policies tool that resulted in this decision
  - `orderId` string, required — Transaction/order ID. Note that Forter treats this ID as case-insensitive; Order123 and ORDER123 will be identified as the same order.
  - `paymentRecommendations` object, nullable — PaymentRecommendations contains all types of payment recommendations Forter sends as part of the Payment Routing Optimization solution
    - `action` 'no_processor_preference' | 'do_not_process' | 'process_payment', nullable — Action to take based on the recommendations
    - `processor_routing_reason` 'out_of_scope' | 'hard_fraud_decline' | 'model_recommendation' | 'exceeded_processing_attempts' | 'authorized_payment' | 'no_optional_processor', nullable — The reason for the processor routing decision
    - `processors` ProcessorRecommendation[], nullable — Processor routing recommendations
      - `priority` number, required — Recommendation with priority 1 should be tried first. Priority 2 should be tried if 1 fails.
      - `processorMid` string, required — Processor MID
      - `processorName` string, required — Processor Name
      - `recommend3DS` boolean, required — In case 3DS should be tried, this will be true
      - `recommendationId` string, required — Id of the recommendation - when merchants use our recommendation we expect them to report that by supplying this in the following request
  - `recommendation` string, required — A specific recommendation for an action that might help the customer to complete their transaction/action (e.g. verify phone via SMS, verify via push notification, verify email, perform a 3DS check, etc.)
  - `verificationMethod` VerificationMethod, required — A specific element that requires verification in order to approve a transaction, and its current status in the verification process
    - `correlationId` string, required — A forter unique identifier that was provided as part of a Forter API response recommending additional authentication measures. Used to correlate between the user action which triggered the recommendation and the authentication attempt result. Required when the additional authentication was triggered by Forter's recommendation.
    - `status` string, required — Verification status
    - `statusCode` string, required — Verification status code
    - `statusMessage` string, required — Text describes the verification status
    - `type` 'OTP_SMS' | 'OTP_EMAIL' | 'THREE_DS', required — Verification method type
    - `verificationId` string, required — A unique identifier assigned to that specific verification
    - `verificationSpecificData` VerificationData, required — Details of the specific element that requires verification
      - `ThreeDS` object, nullable — Complete 3DSecure payload
        - `ACSUrl` string, required — In case of challange, this url is needed to be passed to client side and trigger ftr__.init3DS function
        - `ECIValue` string, required — Electronic Commerce Indicator (ECI) is a value that is returned from the Directory Server (Visa, MasterCard, etc) to indicate the authentication results of your customer's credit card payment on 3D Secure. ECI only available when the challenge is not needed or after challenge had been completed. Possible values: 00, 01, 02, 04, 05, 06, 07
        - `acsChallengeMandated` string, required — Indication of whether a challenge is required for the transaction to be authorised due to local/regional mandates or other variable (Y - Challenge is mandated, N - Challenge is not mandated)
        - `acsReferenceNumber` string, required — Unique identifier assigned by the EMVCo Secretariat = required for mobile app implementation
        - `acsSignedContent` string, required — ACS Signed Content required for mobile app implementation
        - `acsTransID` string, required — Universally Unique transaction identifier assigned by the ACS to identify a single transaction - required for mobile app implementation
        - `authenticationType` string, required — Optional authentication type (01 - Static, 02 - Dynamic, 03 - OOB, 04 - Decoupled)
        - `authenticationValue` string, required — 3DS Authentication value (AV) should be sent to the payment gateway in the authorization call
        - `bankLiabilityShift` boolean, required — Indicates whether transaction is supposed to get liability shift from issuer
        - `cardEnrolled` string, required — 3DS transaction card Enrolled status - should be sent to the payment gateway in the authorization call in some payment gateways
        - `cavvAlgorithm` string, required — 3DS Authentication value algorithm - should be sent to the payment gateway in the authorization call in some payment gateways. Possible values (3DS1 only): 0, 1, 2, 3, 4, 7
        - `challengeCancel` string, required — Indicator informing the ACS and the DS that the authentication has been canceled. Possible values: 01-99
        - `challengeStatus` string, required — Ares transStatus value (Possible values: U, N, Y, A, C, D, R, I)
        - `dsTransID` string, required — Universally unique transaction identifier assigned by the DS to identify a single transaction
        - `encodedChallengeRequest` string, required — This value will only be available when challenge is needed, in the challenge flow - this must be passed to browser in order to trigger the challenge
        - `exemption` 'LOW_VALUE' | 'TRANSACTION_RISK_ANALYSIS' | 'SECURE_CORPORATE' | 'TRUSTED_BENEFICIARY', nullable — Exemption that should be used during the authorization process
        - `interactionCounter` string, required — Indicates the number of authentication cycles attempted by the Cardholder
        - `isFallback` boolean, required — Indication of whether a 3DS1 challenge was performed as a fallback to 3DS2 error
        - `messageCategory` string, required — Identifies the category of the message for a specific use case (01 - PA, 02 - NPA)
        - `outOfScopeForPSD2` 'ANONYMOUS_PREPAID_CARD' | 'MERCHANT_INITIATED_TRANSACTIONS' | 'ONE_LEG_OUT_EEA' | 'MAIL_ORDER_TELEPHONE_ORDER', nullable — This field indicate if transaction is out of scope for PSD2 and exclusion should be requested
        - `threeDSServerTransID` string, required — Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction (in 3DS1 equal to XID)
        - `threeDSecureMode` string, required — Indicate if the transaction is Frictionless or SCA. Being used by some payment gateways. Possible values: sca, frictionless
        - `threeDSecurePreference` string, required — The challenge indicator used. Being used by some payment gateways. Possible values: nopref, frictionless, sca, scamandate
        - `threeDSecureResult` string, required — This field is relevant for 3DS1 and being used by some payment gateways
        - `transStatus` string, required — 3DS transStatus value - Indicates whether a transaction qualifies as an authenticated transaction or account verification. should be sent to the payment gateway in the authorization call (Possible values: U, N, Y, A, C, D, R, I)
        - `transStatusReason` string, required — Provides information on why the Transaction Status field has the specified value. Possible values: 01-99
        - `verifyStatus` string, required — Cres transStatus value (Possible values: U, N, Y, A, C, D, R, I, null)
        - `version` string, required — Version. Possible values: 1.0.2, 2.1.0, 2.2.0
      - `email` object, nullable — This refers to the email address associated with the customer or transaction, giving details about the address and any role it has played in the customer's being on or interacting with the site.
        - `email` string, required — Email address
        - `emailVerification` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
          - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
          - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
          - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)
      - `phone` object, nullable — This provides information about the telephone number associated with the customer or transaction.
        - `phone` string, required — Phone number including all country and local access codes
        - `smsVerified` object, nullable — This object contains information about steps taken to verify the customer's identity such as email or phone verifcations.
          - `sent` boolean, nullable — True if verification email was sent to email address or verification SMS was sent to phone number
          - `timeSent` number, nullable — Date verification email or SMS was sent in seconds since unix epoch (UTC, Jan 1, 1970)
          - `verified` boolean, required — True if customer received email verification message to this address and clicked-through back to merchant's site, or received SMS message and enterd code in merchant's site (two-factor authentication)

## Other responses

- `400` — Bad Request (Often missing a required parameter)
- `401` — Unauthorized (No valid API key provided)
- `404` — Not Found (The requested item doesn't exist)
- `429` — Too Many Requests (The client exceeded a rate limit). Honor Retry-After before retrying.
- `500` — Server Error (Something went wrong on Forter's end)
- `default` — Typed error envelope for any undeclared 4xx / 5xx status.

---

[API](https://skmtc.net/forter/apis/forter-api.md) · [All operations](https://skmtc.net/forter/apis/forter-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/forter/forter-api/revisions/d7b02e919b34/schema)
