---
title: "Order update"
method: POST
path: "/v2/order-update/{id}"
tags: ["Orders"]
---

# Order update

`POST /v2/order-update/{id}`

For orders placed over the phone, add the customer's connection information to receive a fraud or abuse decision.

## Path parameters

- `id` string, required

## Headers

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

## Request body

- ValidationUpdateRequest — For orders placed over the phone, add the customer's connection information to receive a fraud or abuse decision.
  - `connectionInformation` object, nullable — 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
  - `merchantFeedback` object, nullable — A Forter internal property to allow the Forter dashboard to receive merchant feedback and relay it back to the system in a structured way
    - `agentGeneralImpression` 'CUSTOMER_IS_LEGIT' | 'I_DONT_KNOW' | 'CUSTOMER_IS_SUSPICIOUS', nullable — What is your general impression of the customer following your interaction/analysis (do you believe he is suspicious? do you believe he is legitimate?)
    - `doesNotAffectFutureDecisions` boolean, nullable — A property to allow the Forter dashboard to receive information from the risk agent in case the agent adds information for training the model with more data, without triggering a decision change
    - `feedbackAppliesToAllFutureDecisionsUntil` number, nullable — Until this timestamp (epoch seconds), the feedback will apply to all future transactions of this type
    - `isFutureDecision` boolean, nullable — Use the new decision only for next order sent by the user. The current order fulfillment status will not change due to the new decision provided.
    - `isPolicyApprove` boolean, nullable — Set to true if the customer has been previously declined, but should be approved as a matter of policy in their next transaction.
    - `merchantCustomerSupport` object, nullable — This object contains information relating to any customer service or customer support assistance or communication relating to the transaction.
      - `contactCustomerIP` string, nullable — Customer IP address used to contact the merchant in IPv4 or IPv6 format. Typically available when customer contact is via chat
      - `contactEmailUsed` object, nullable — I was able to confirm the order with the customer over email
        - `merchantContactedEmail` string, nullable — email used to contact the customer (if not one of the emails used in the order)
        - `merchantContactedEmailRole` 'BILLING_EMAIL' | 'SHIPPING_EMAIL' | 'ACCOUNT_EMAIL' | 'OTHER_EMAIL' | 'NA', nullable — I used the following phone to contact the customer
      - `contactMethodType` 'PHONE' | 'EMAIL' | 'CHAT' | 'SUPPORT_FORM', required — Method used by customer to contact support
      - `contactNameUsed` object, nullable — Details about the contact (name) used by customer to contact customer support.
        - `customerContactNameType` 'CARDHOLDER' | 'BILLING_NAME' | 'SHIPPING_NAME' | 'ACCOUNT_HOLDER' | 'OTHER' | 'NA', required — The role of the contact (name) that interacted with customer support.
        - `customerFirstName` string, nullable — First name of the person who contacted the merchant's customer support
        - `customerLastName` string, nullable — Last name of the person who contacted the merchant's customer support
      - `contactPhoneUsed` object, nullable — I was able to confirm the order with the customer over the phone
        - `merchantContactedPhoneNumber` string, nullable — Phone number used (if not one of the phones used in the order)
        - `merchantContactedPhoneRole` 'BILLING_PHONE' | 'SHIPPING_PHONE' | 'ACCOUNT_PHONE' | 'OTHER_PHONE' | 'NA', nullable — I used the following phone to contact the customer
      - `contactTime` number, required — Time of the latest consumer communication with customer support (e.g. a support ticket was submitted or a merchant agent reached out to the consumer) in seconds since unix epoch (UTC, Jan 1, 1970)
      - `customerSupportChangeOrderDetails` object, nullable — Did the customer undergo any further verification?
        - `customerSupportRequestPickupFromShippingCarrier` boolean, nullable — The customer would like to pick up his order from the shipping carrier
        - `customerSupportRequestPickupStoreZip` string, nullable — The customer would like to pick up his order from the store located at this zipcode
        - `customerSupportRequestSwitchBillingAndShipping` boolean, nullable — The customer accidentally typed the shipping address as the billing address. Would like to switch them.
      - `customerSupportFurtherVerification` object, nullable — Did the customer undergo any further verification?
        - `customerAnsweredSecurityQuestions` boolean, required — The customer successfully answered security questions that only the cardholder should be able to answer
        - `customerSupportAdditionalVerificationDocuments` object, nullable — Additional Verification Documents includes any details gained from identifying documents or materials which the customer has shared.
          - `documentFirstName` string, nullable — First name as appears on the document
          - `documentLastName` string, nullable — Last name as appears on the document
          - `documentType` string, required — Type of document (Passport, ID, Driving license)
          - `documentVerified` boolean, nullable — True if document was verified as authentic by merchant or 3rd party service
          - `nationality` string, nullable — Document holder's nationality
        - `customerSupportSMSverification` string, nullable — The customer successfully SMS-verified this phone number
      - `initiatedBy` 'MERCHANT' | 'CUSTOMER', required — The initiator of the interaction
      - `orderId` string, nullable — Unique order id that the service ticket refers to. Should match the order id sent to Forter at checkout. Note that Forter treats this ID as case-insensitive; Order123 and ORDER123 will be identified as the same order.
      - `ticketId` string, nullable — Customer service ticket identifier
    - `merchantWouldLikeApproved` object, nullable — Indicators found by the merchant risk team which leads the agent to believe the order is not fraudulent and should be approved
      - `merchantContactedIssuer` object, nullable — I was able to verify the cardholder's details with the issuing bank
        - `accessToBankAccountVerifiedByCustomer` boolean, nullable — Using a strong verification method, the customer has verified access to the bank account
        - `issuerNameOnCardMatch` 'MATCH' | 'MISMATCH' | 'DID_NOT_CHECK' | 'UNKNOWN' | 'NA', nullable — According to the issuing bank, the cardholder's name matches their records
        - `issuerPhoneMatch` 'MATCH' | 'MISMATCH' | 'DID_NOT_CHECK' | 'UNKNOWN' | 'NA', nullable — According to the issuing bank, the billing phone matches their records
        - `issuerStreetAddressMatch` 'MATCH' | 'MISMATCH' | 'DID_NOT_CHECK' | 'UNKNOWN' | 'NA', nullable — According to the issuing bank, the billing street address matches their records
        - `issuerZipMatch` 'MATCH' | 'MISMATCH' | 'DID_NOT_CHECK' | 'UNKNOWN' | 'NA', nullable — According to the issuing bank, the billing zip code matches their records
      - `merchantDisagreesWithSpecificDeclineReason` object, nullable — I understand the specific decline reason, but I disagree (e.g. I don't think this is an ATO)
        - `atoIsIrrelevant` object, nullable — This was declined because suspected Account Take Over, but I don't think this is the case
          - `confirmedValidAccountOwnerUsingOldEmail` boolean, nullable — I was able to confirm this order with the original account holder (or they contacted me) using the original EMAIL ADDRESS connected to the account
          - `confirmedValidAccountOwnerUsingOldPhone` boolean, nullable — I was able to confirm this order with the original account holder (or they contacted me) using the original PHONE connected to the account
          - `notATOBecauseOfOtherReason` string, nullable — I don't think this is an Account Take Over because of a different reason
          - `notATOBecauseOldDeviceUsed` boolean, nullable — I don't think this is an Account Take Over since the same or similar device is used as has been in previous orders by the original account holder
          - `notATOBecauseOldIPUsed` boolean, nullable — I don't think this is an Account Take Over since the same or similar IP is used as has been in previous orders by the original account holder
          - `notATOBecauseSimilarItemPurchased` boolean, nullable — I don't think this is an Account Take Over since the purchasing patterns are similar to those of the original account holder (same item, similar amounts and frequency, etc.)
        - `chbkIsIrrelevant` object, nullable — This was declined because of connection to previous chargebacks, but I don't think it should be declined
          - `cannotFindRelatedChargebacks` boolean, nullable — I can't find any chargeback related to this order or account
          - `chbksResolved` boolean, nullable — The chargebacks connected to this account were not truly fraud-related, and were already resolved with the customer
          - `chbksResolvedOrderIds` string[], nullable — These are the IDs of the resolved chargebacks. After removing these chargebacks, they will no longer be covered by Forter, since they will be considered service-related
        - `couponAbuseIsIrrelevant` boolean, nullable — This was declined because of suspected coupon abuse, but I think this is a legitimate use of coupons and would like to approve
        - `multipleLinksAreIrrelevant` boolean, nullable — Could not find multiple accounts related to this account holder (available only for account feedback)
        - `policyNotApplicable` boolean, nullable — This is marked as a merchant policy decline, but I don't think the policy is applicable here (e.g. a US order being declined under a international order blocking policy)
      - `merchantFoundBuyerExposure` object, nullable — I was able to validate some of the order's details online
        - `customerSignedInUsingLegitSocialNetworkAccount` object, nullable — Customer Signed-In Using -
          - `facebook` boolean, nullable — Facebook
          - `google` boolean, nullable — Google
          - `linkedin` boolean, nullable — LinkedIn
          - `otherSocialNetwork` string, nullable — Other Social Network
          - `paypal` boolean, nullable — PayPal
          - `twitter` boolean, nullable — Twitter
        - `merchantFoundBuyerEmailOnline` object, nullable — Found datapoint on -
          - `facebook` boolean, nullable — Facebook
          - `googlePlus` boolean, nullable — Google+
          - `googleSearch` boolean, nullable — Online search (Google, Bing, etc.)
          - `linkedin` boolean, nullable — LinkedIn
          - `otherSocialNetwork` boolean, nullable — Other Social Network
          - `otherSource` string, nullable — Other
          - `whitePages` boolean, nullable — White Pages
        - `merchantFoundBuyerPhoneNumberOnline` object, nullable — Found datapoint on -
          - `facebook` boolean, nullable — Facebook
          - `googlePlus` boolean, nullable — Google+
          - `googleSearch` boolean, nullable — Online search (Google, Bing, etc.)
          - `linkedin` boolean, nullable — LinkedIn
          - `otherSocialNetwork` boolean, nullable — Other Social Network
          - `otherSource` string, nullable — Other
          - `whitePages` boolean, nullable — White Pages
        - `merchantFoundConnectionBetweenIndividualsInTheOrder` NameAndNameConnection, required — I was able to connect the two people involved in the order using the following data sources -
          - `connectionType` 'FAMILY' | 'FRIENDS' | 'HAVE_A_PERSONAL_RELATIONSHIP' | 'WORK_TOGETHER' | 'HAVE_A_BUSINESS_RELATIONSHIP' | 'NA', nullable — These people are connected because they are -
          - `dataSource` object, nullable — Found datapoint on -
            - `googleSearch` boolean, nullable — Online search (Google, Bing, etc.)
            - `otherSource` string, nullable — Other
            - `socialNetwork` boolean, nullable — Social Network
            - `whitePages` boolean, nullable — White Pages
          - `nameRole1` 'CARDHOLDER' | 'BILLING_NAME' | 'SHIPPING_NAME' | 'ACCOUNT_HOLDER' | 'OTHER' | 'NA', nullable — I was able to connect this person -
          - `nameRole2` 'CARDHOLDER' | 'BILLING_NAME' | 'SHIPPING_NAME' | 'ACCOUNT_HOLDER' | 'OTHER' | 'NA', nullable — To this person -
        - `merchantFoundConnectionBetweenNameAndAddress` AddressAndNameConnection, required — I was able to connect the following address to the following name using information I found online -
          - `addressRole` 'SHIPPING_ADDRESS' | 'BILLING_ADDRESS' | 'NA', nullable — I was able to connect this address -
          - `dataSource` object, nullable — Found datapoint on -
            - `googleSearch` boolean, nullable — Online search (Google, Bing, etc.)
            - `otherSource` string, nullable — Other
            - `whitePages` boolean, nullable — White Pages
          - `nameRole` 'CARDHOLDER' | 'BILLING_NAME' | 'SHIPPING_NAME' | 'ACCOUNT_HOLDER' | 'OTHER' | 'NA', nullable — To this name -
        - `merchantFoundLegitShippingAddress` 'AN_OFFICE_OR_OTHER_WORKPLACE_RELATED_TO_THE_CUSTOMER' | 'A_MILITARY_OR_OTHER_GOVERNMENT_FACILITY_OR_INSTITUTION' | 'SHIPPING_ADDRESS_IS_SAME_AS_BILLING_ADDRESS_AND_AVS_CHECK_MATCHES' | 'NA', nullable — I was able to identify the order's shipping address as a non-fraud indication
        - `merchantFoundRecipientEmailOnline` object, nullable — Found datapoint on -
          - `facebook` boolean, nullable — Facebook
          - `googlePlus` boolean, nullable — Google+
          - `googleSearch` boolean, nullable — Online search (Google, Bing, etc.)
          - `linkedin` boolean, nullable — LinkedIn
          - `otherSocialNetwork` boolean, nullable — Other Social Network
          - `otherSource` string, nullable — Other
          - `whitePages` boolean, nullable — White Pages
        - `merchantFoundRecipientPhoneNumberOnline` object, nullable — Found datapoint on -
          - `facebook` boolean, nullable — Facebook
          - `googlePlus` boolean, nullable — Google+
          - `googleSearch` boolean, nullable — Online search (Google, Bing, etc.)
          - `linkedin` boolean, nullable — LinkedIn
          - `otherSocialNetwork` boolean, nullable — Other Social Network
          - `otherSource` string, nullable — Other
          - `whitePages` boolean, nullable — White Pages
      - `merchantPolicyDecisionNotApplicable` object, nullable — Merchant does not think the following policies apply to the user
        - `inrAbuseNotApplicable` boolean, nullable — INR Abuse - INR/Refund abuse policy is not applicable
        - `multipleLinksPolicyNotApplicable` boolean, nullable — Multiple Account Abuse - Merchant unique account policy is not applicable
        - `promotionAbuseNotApplicable` boolean, nullable — Promotion Abuse - Promotion abuse policy is not applicable
        - `resellerAbuseNotApplicable` boolean, nullable — Reseller Abuse - Reseller abuse policy is not applicable
        - `returnsAbuseNotApplicable` boolean, nullable — Returns Abuse - Returns abuse policy is not applicable
      - `merchantThinksOrderCharacteristicsAreLegit` object, nullable — I believe the customer and/or the order characteristics indicate this is likely a good order
        - `goodCustomer` object, nullable — I believe the customer's characteristics and history indicate this is likely a good order
          - `establishedAccount` object, nullable — This is an established account or it is related to another established account
            - `establishedAccountDetails` object, nullable — We believe the account is established because it has the following history with us -
              - …
            - `relatedAccountDetails` object, nullable — Account identifiers
              - …
            - `relatedToAnEstablishedAccount` boolean, nullable — The account that created this order is related to a well established account
            - `thisIsAnEstablishedAccount` boolean, nullable — The account that created this order is a well established account
          - `forterPreviouslyApproved` boolean, nullable — Forter previously approved this customer
          - `knowCustomerPersonally` 'COMPANY_EMPLOYEE_OR_RELATED_TO_ONE' | 'COMPANY_BUSINESS_ASSOCIATE_OR_SERVICE_PROVIDER' | 'TESTING_ACCOUNT' | 'OTHER' | 'NA', nullable — I know this customer personally (company employee, family member, etc.)
          - `merchantHasGoodScoreElsewhere` 'INTERNAL_SCORE' | 'THIRD_PARTY_TOOL' | 'NA', nullable — This order has a good score on another fraud tool (internal or 3rd party) and I think it is probably a good order
          - `previousPointOfSalePurchase` object, nullable — Customer previously made purchases in a physical store -
            - `madePointOfSalePurchase` boolean, nullable — Customer made purchases in a physical store in the past
            - `pointOfSalePurchaseState` string, nullable — Purchase was made in a store located in the following state / region
            - `pointOfSalePurchaseZip` string, nullable — Purchase was made in a store located in the following zipcode
        - `lowRiskItem` boolean, nullable — In our experience, the item purchased is a low-risk item
        - `lowRiskPaymentMethod` object, nullable — Payment method -
          - `giftCard` boolean, nullable — Gift Card
          - `other` string, nullable — Other payment method
          - `storeCredit` boolean, nullable — Store Credit
          - `wireTransfer` boolean, nullable — Wire transfer or other direct forms of payment
    - `merchantWouldLikeDeclined` object, nullable — I believe the order is fraudulent and should be not be approved
      - `fraudTypeSuspectedByMerchant` object, nullable — I believe this order is likely fraud of this type
        - `merchantInrAbuseType` 'HIGHLIGHTED' | 'PREVENTED', nullable — INR Abuse type as labeled by the merchant
        - `merchantReceivedFraudAlert` boolean, nullable — Fraud Alert - Merchant was notified by a 3rd party tool or other source that the order is fraudulent
        - `merchantSuspectsAccountTakeOver` object, nullable — I believe the order is fraudulent and this is why
          - `merchantSuspectsAccountDetails` object, nullable — These are the fraud indicators I identify in this account
            - `accountDetailsWereChanged` boolean, nullable — Account details were recently changed in a way that is suspicious
            - `highVelocity` boolean, nullable — Purchase frequency and amount is too high, and is likely fraudulent
            - `inactiveAccount` boolean, nullable — Account was inactive for a very long time and is now displaying suspicious behaviour
            - `linkedToMultipleAccounts` boolean, nullable — Identified multiple accounts linked to this account holder (available only for account feedback)
            - `other` boolean, nullable — Other (available only for account feedback)
          - `merchantSuspectsOrderDetails` object, nullable — These are the fraud indicators I identify in this order
            - `badItem` boolean, nullable — Item purchased is a strong fraud indicator
            - `badShippingAddress` boolean, nullable — Shipping address seems suspicious
            - `fakeEmail` boolean, nullable — The email seems fake, or related to a suspicious persona, or to a person completely unrelated to the order
            - `other` boolean, nullable — Other (this option will only be open for account feedback)
          - `merchantWasContactedByVictim` boolean, nullable — The victim of this fraud attempt contacted us to complain (cardholder, or account owner in case of account takeover)
        - `merchantSuspectsBuyerSellerCollusion` object, nullable — I believe the order is fraudulent and this is why
          - `merchantSuspectsAccountDetails` object, nullable — These are the fraud indicators I identify in this account
            - `accountDetailsWereChanged` boolean, nullable — Account details were recently changed in a way that is suspicious
            - `highVelocity` boolean, nullable — Purchase frequency and amount is too high, and is likely fraudulent
            - `inactiveAccount` boolean, nullable — Account was inactive for a very long time and is now displaying suspicious behaviour
            - `linkedToMultipleAccounts` boolean, nullable — Identified multiple accounts linked to this account holder (available only for account feedback)
            - `other` boolean, nullable — Other (available only for account feedback)
          - `merchantSuspectsOrderDetails` object, nullable — These are the fraud indicators I identify in this order
            - `badItem` boolean, nullable — Item purchased is a strong fraud indicator
            - `badShippingAddress` boolean, nullable — Shipping address seems suspicious
            - `fakeEmail` boolean, nullable — The email seems fake, or related to a suspicious persona, or to a person completely unrelated to the order
            - `other` boolean, nullable — Other (this option will only be open for account feedback)
          - `merchantWasContactedByVictim` boolean, nullable — The victim of this fraud attempt contacted us to complain (cardholder, or account owner in case of account takeover)
        - `merchantSuspectsCouponAbuse` boolean, nullable — Promotion Abuse - I believe this order was made by an individual trying to abuse our coupon policy (e.g. signing up with new accounts to get more coupons)
        - `merchantSuspectsFraudOther` object, nullable — I believe the order is fraudulent and this is why
          - `merchantSuspectsAccountDetails` object, nullable — These are the fraud indicators I identify in this account
            - `accountDetailsWereChanged` boolean, nullable — Account details were recently changed in a way that is suspicious
            - `highVelocity` boolean, nullable — Purchase frequency and amount is too high, and is likely fraudulent
            - `inactiveAccount` boolean, nullable — Account was inactive for a very long time and is now displaying suspicious behaviour
            - `linkedToMultipleAccounts` boolean, nullable — Identified multiple accounts linked to this account holder (available only for account feedback)
            - `other` boolean, nullable — Other (available only for account feedback)
          - `merchantSuspectsOrderDetails` object, nullable — These are the fraud indicators I identify in this order
            - `badItem` boolean, nullable — Item purchased is a strong fraud indicator
            - `badShippingAddress` boolean, nullable — Shipping address seems suspicious
            - `fakeEmail` boolean, nullable — The email seems fake, or related to a suspicious persona, or to a person completely unrelated to the order
            - `other` boolean, nullable — Other (this option will only be open for account feedback)
          - `merchantWasContactedByVictim` boolean, nullable — The victim of this fraud attempt contacted us to complain (cardholder, or account owner in case of account takeover)
        - `merchantSuspectsFriendlyFraud` object, nullable — I believe the order is fraudulent and this is why
          - `merchantSuspectsAccountDetails` object, nullable — These are the fraud indicators I identify in this account
            - `accountDetailsWereChanged` boolean, nullable — Account details were recently changed in a way that is suspicious
            - `highVelocity` boolean, nullable — Purchase frequency and amount is too high, and is likely fraudulent
            - `inactiveAccount` boolean, nullable — Account was inactive for a very long time and is now displaying suspicious behaviour
            - `linkedToMultipleAccounts` boolean, nullable — Identified multiple accounts linked to this account holder (available only for account feedback)
            - `other` boolean, nullable — Other (available only for account feedback)
          - `merchantSuspectsOrderDetails` object, nullable — These are the fraud indicators I identify in this order
            - `badItem` boolean, nullable — Item purchased is a strong fraud indicator
            - `badShippingAddress` boolean, nullable — Shipping address seems suspicious
            - `fakeEmail` boolean, nullable — The email seems fake, or related to a suspicious persona, or to a person completely unrelated to the order
            - `other` boolean, nullable — Other (this option will only be open for account feedback)
          - `merchantWasContactedByVictim` boolean, nullable — The victim of this fraud attempt contacted us to complain (cardholder, or account owner in case of account takeover)
        - `merchantSuspectsInrAbuse` boolean, nullable — INR/Refund Abuse - Customer is suspected of INR/refund abuse
        - `merchantSuspectsOtherPolicyBreach` boolean, nullable — Breach Of Policy - This order was made by an individual who is in breach of store policy. We do not wish to transact with this customer in the future.
        - `merchantSuspectsPromotionAbuse` boolean, nullable — Promotion Abuse - Customer is suspected of promotion abuse
        - `merchantSuspectsResellerAbuse` boolean, nullable — Reseller Abuse - Customer is suspected of reseller abuse
        - `merchantSuspectsReturnAbuse` boolean, nullable — Returns Abuse - Customer is suspected of returns abuse
        - `merchantSuspectsStolenPaymentMethod` object, nullable — I believe the order is fraudulent and this is why
          - `merchantSuspectsAccountDetails` object, nullable — These are the fraud indicators I identify in this account
            - `accountDetailsWereChanged` boolean, nullable — Account details were recently changed in a way that is suspicious
            - `highVelocity` boolean, nullable — Purchase frequency and amount is too high, and is likely fraudulent
            - `inactiveAccount` boolean, nullable — Account was inactive for a very long time and is now displaying suspicious behaviour
            - `linkedToMultipleAccounts` boolean, nullable — Identified multiple accounts linked to this account holder (available only for account feedback)
            - `other` boolean, nullable — Other (available only for account feedback)
          - `merchantSuspectsOrderDetails` object, nullable — These are the fraud indicators I identify in this order
            - `badItem` boolean, nullable — Item purchased is a strong fraud indicator
            - `badShippingAddress` boolean, nullable — Shipping address seems suspicious
            - `fakeEmail` boolean, nullable — The email seems fake, or related to a suspicious persona, or to a person completely unrelated to the order
            - `other` boolean, nullable — Other (this option will only be open for account feedback)
          - `merchantWasContactedByVictim` boolean, nullable — The victim of this fraud attempt contacted us to complain (cardholder, or account owner in case of account takeover)
      - `merchantConfidenceLevelThisIsFraud` 'NOT_SURE_COMMA_LOOKS_SUSPICIOUS' | 'HIGH_CONFIDENCE_THIS_IS_FRAUD' | 'VICTIM_CONFIRMED_THIS_IS_FRAUD', nullable — My level of confidence that this order is fraudulent
      - `merchantThinksPolicyShouldApply` string, nullable — I believe the order should not be approved since it is in breach of this business policy that we would like Forter to enforce
    - `undoPreviousFeedback` boolean, nullable — A property to allow the customer to reset all previous feedbacks given on the session, previous feedbacks will not affect the model anymore
  - `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', nullable — Platform order was made through
  - `payment` Payment[], nullable — 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
  - `primaryRecipient` object, nullable — 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)
  - `totalAmount` 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

## Response `200`

Example validationResponse

- ValidationResponse — The response object of a forter validations call
  - `action` string, required — The message containing the decision
  - `message` string, required — The message containing status response text
  - `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
  - `reasonCode` string, required
  - `recommendations` string[], required — Forter's recommendations for the optimal way of proceeding with the order
  - `status` string, required — Status of the request processing
  - `transaction` string, required — Transaction id. Note that Forter treats this ID as case-insensitive; Order123 and ORDER123 will be identified as the same order.

## 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)
