MFA

The MFA module performs asynchronous analysis of the received data for more comprehensive validation.

How the MFA Module Works

The MFA module performs its analysis asynchronously, processing data in the background without impacting the main application flow. During this process, various relevant pieces of information are cross-referenced, including a check with the customer who made the purchase.

The analysis response can be checked later, allowing the system to make decisions based on the results as soon as they are available.


Request Schema

Represents the integration request.

FieldDescriptionTypeRequired
transactionTransaction informationTransactionYes
transactionValueTransaction value informationTransaction ValueYes
deviceDevice informationDeviceNo
billingBilling informationBillingYes
shippingShipping informationShippingNo
itemsList of transaction itemsItem ArrayNo
paymentsList of payment methodsPayment ArrayNo
airTravelAir travel informationAir TravelNo

Transaction

Represents the transaction data.

FieldDescriptionTypeRequired
codeUnique transaction codeStringYes
dateTransaction dateDateTimeYes
emailEmail associated with the transactionStringYes
statusTransaction statusIntegerNo
ipAddressCustomer IP addressStringNo
originTransaction origin: APP, WEBSITE, TELEVENDAS, etcStringNo
observationAdditional observationsStringNo

Transaction Value

Represents the total value of the transaction.

FieldDescriptionTypeRequired
totalValueTotal transaction valueFloatYes

Device

Represents information about the device used in the transaction.

FieldDescriptionTypeRequired
fingerprintUnique device identifierFingerprintYes

Fingerprint

Represents identification information of the device used in the transaction.

FieldDescriptionTypeRequired
sessionIdUnique device session identifierGuidYes

Billing

Represents billing information.

FieldDescriptionTypeRequired
typePerson typeIntegerNo
nameCustomer nameStringYes
emailCustomer emailStringNo
genderCustomer genderStringNo
birthdateDate of birthDateTimeNo
documentsCustomer documentsDocument ArrayYes
addressBilling addressAddressNo
phonesCustomer phonesPhone ArrayYes

Shipping

Represents shipping information.

FieldDescriptionTypeRequired
typePerson typeIntegerNo
priceShipping priceFloatYes
nameRecipient nameStringYes
emailRecipient emailStringNo
genderRecipient genderStringNo
birthdateRecipient birthdateDateTimeNo
clientIdInternal customer ID (who made the transaction)StringNo
deliveryTypeDelivery typeIntegerYes
deliveryTimeEstimated delivery timeStringNo
documentsDocuments associated with the recipientDocument ArrayNo
addressShipping addressAddressNo
phonesAssociated phonesPhone ArrayNo

Item

Represents a transaction item.

FieldDescriptionTypeRequired
codeInternal customer item codeStringNo
nameItem nameStringNo
descriptionItem descriptionStringNo
categoryIdInternal customer item category IDIntegerNo
categoryNameItem category name (example table in Glossary)StringNo
barCodeItem barcodeStringNo
valueItem valueFloatYes
quantityItem quantityIntegerYes
isGiftIndicates if the item is a giftBooleanNo
sellerNameSeller nameStringNo
sellerSegmentSeller segmentStringNo
isMarketPlaceIndicates if it is a marketplaceStringNo
shippingCompanyShipping companyStringNo
sellerDocumentSeller documentDocumentYes

Payment

Represents a payment method.

FieldDescriptionTypeRequired
typePayment typeIntegerYes
valuePayment amountFloatYes
currencyCurrency usedIntegerNo
sequentialSequential payment numberIntegerNo
paymentDatePayment dateDateTimeNo
installmentsNumber of installmentsIntegerNo
payableTypePayment category within the segment: VOUCHER, SUBSCRIPTION, etcStringNo
interestRateInterest rate applied to the paymentFloatNo
interestValueInterest amount appliedFloatNo
visaCheckoutUserIdVisa Checkout user identifierStringNo
digitalWalletCodeDigital wallet code usedStringNo
voucherOrderOriginVoucher order originStringNo
subAcquirerSub-acquirer responsible for the paymentStringNo
bankAuthenticationBank authentication informationStringNo
cardCredit card informationCardYes

Card

Represents credit card information.

FieldDescriptionTypeRequired
ownerNameCardholder nameStringYes
numberCard numberStringNo
hashCard number hashStringNo
binCard BIN (Bank Identification Number)StringYes
endLast digits of the cardStringYes
typeCard typeIntegerNo
expirationDateCard expiration dateStringNo
documentDocument associated with the cardDocumentNo

Document

Represents a document associated with an entity.

FieldDescriptionTypeRequired
typeDocument typeIntegerYes
numberDocument numberStringYes
documentTypeCustomerCustomer type associated with documentStringNo
authorityDocument issuing authorityStringNo
authorityStateIssuing authority stateStringNo
issueDateDocument issue dateStringNo

Address

Represents an address.

FieldDescriptionTypeRequired
typeAddress typeStringYes
addressIdAddress identifierStringNo
streetStreet nameStringYes
numberAddress numberStringYes
districtDistrictStringNo
cityCityStringYes
stateStateStringYes
zipcodePostal code (00000-000)StringYes
countryCountryStringYes
additionalInformationAdditional informationStringNo
referenceAddress referenceStringNo
latitudeAddress latitudeStringNo
longitudeAddress longitudeStringNo

Phone

Represents information about a phone associated with an entity.

FieldDescriptionTypeRequired
typePhone typeIntegerNo
countryCodeCountry codeStringYes
areaCodeArea codeStringYes
numberPhone numberStringYes
extensionPhone extensionStringNo

AirTravel

Represents air travel information.

FieldDescriptionTypeRequired
passengersList of air travel passengersPassenger ArrayYes
connectionsList of itinerary connections/segmentsConnection ArrayYes

Passenger

Represents passenger information.

FieldDescriptionTypeRequired
namePassenger nameStringYes
documentTypeDocument typeIntegerYes
documentNumberDocument numberStringYes
companyMileCardCompany mileage cardStringNo
MileCardPersonal mileage cardStringNo
genderPassenger genderStringNo
birthDateDate of birthDateTimeNo
cpfPassenger CPFStringNo

Connection

Represents connection information.

FieldDescriptionTypeRequired
companyAirline companyStringNo
flightNumberFlight numberIntegerNo
dateFlight dateDateTimeYes
seatClassSeat classStringNo
originOrigin airportStringYes
destinationDestination airportStringYes
boardingBoarding date/timeDateTimeYes
arrivingArrival date/timeDateTimeYes
fareClassFare classStringNo

Request Example

POST https://homologapix.clearsale.com.br/connect/v1/Integration/{{integrationId}}
Accept: application/json
Content-Type: application/json

{
  "transaction": {
    "code": "string",
    "date": "2025-09-25T15:42:34.935Z",
    "email": "string",
    "status": 0,
    "ipAddress": "string",
    "origin": "string",
    "observation": "string"
  },
  "transactionValue": {
    "totalValue": 0
  },
  "device": {
    "fingerprint": {
      "sessionId": "string"
    }
  },
  "billing": {
    "type": 0,
    "name": "string",
    "email": "string",
    "gender": "string",
    "birthdate": "2025-09-25T15:42:34.935Z",
    "documents": [
      {
        "type": 0,
        "number": "string",
        "documentTypeCustomer": "string",
        "authority": "string",
        "authorityState": "string",
        "issueDate": "string"
      }
    ],
    "address": {
      "type": "string",
      "addressId": "string",
      "street": "string",
      "number": "string",
      "district": "string",
      "city": "string",
      "state": "string",
      "zipcode": "string",
      "country": "string",
      "additionalInformation": "string",
      "reference": "string",
      "latitude": "string",
      "longitude": "string"
    },
    "phones": [
      {
        "type": 0,
        "countryCode": "string",
        "areaCode": "string",
        "number": "string",
        "extension": "string"
      }
    ]
  },
  "shipping": {
    "type": 0,
    "price": 0,
    "name": "string",
    "email": "string",
    "gender": "string",
    "birthdate": "2025-09-25T15:42:34.935Z",
    "clientId": "string",
    "deliveryType": 0,
    "deliveryTime": "string",
    "documents": [
      {
        "type": 0,
        "number": "string",
        "documentTypeCustomer": "string",
        "authority": "string",
        "authorityState": "string",
        "issueDate": "string"
      }
    ],
    "address": {
      "type": "string",
      "addressId": "string",
      "street": "string",
      "number": "string",
      "district": "string",
      "city": "string",
      "state": "string",
      "zipcode": "string",
      "country": "string",
      "additionalInformation": "string",
      "reference": "string",
      "latitude": "string",
      "longitude": "string"
    },
    "phones": [
      {
        "type": 0,
        "countryCode": "string",
        "areaCode": "string",
        "number": "string",
        "extension": "string"
      }
    ]
  },
  "items": [
    {
      "code": "string",
      "name": "string",
      "description": "string",
      "categoryId": 0,
      "categoryName": "string",
      "barCode": "string",
      "value": 0,
      "quantity": 0,
      "isGift": true,
      "sellerName": "string",
      "sellerSegment": "string",
      "isMarketPlace": "string",
      "shippingCompany": "string",
      "sellerDocument": {
        "type": 0,
        "number": "string",
        "documentTypeCustomer": "string",
        "authority": "string",
        "authorityState": "string",
        "issueDate": "string"
      }
    }
  ],
  "payments": [
    {
      "type": 0,
      "value": 0,
      "currency": 0,
      "sequential": 0,
      "paymentDate": "2025-09-25T15:42:34.935Z",
      "installments": 0,
      "payableType": "string",
      "interestRate": 0,
      "interestValue": 0,
      "visaCheckoutUserId": "string",
      "digitalWalletCode": "string",
      "voucherOrderOrigin": "string",
      "subAcquirer": "string",
      "bankAuthentication": "string",
      "card": {
        "ownerName": "string",
        "number": "string",
        "hash": "string",
        "bin": "string",
        "end": "string",
        "type": 0,
        "expirationDate": "string",
        "document": {
          "type": 0,
          "number": "string",
          "documentTypeCustomer": "string",
          "authority": "string",
          "authorityState": "string",
          "issueDate": "string"
        }
      }
    }
  ],
  "airTravel": {
    "passengers": [
      {
        "name": "string",
        "documentType": 0,
        "documentNumber": "string",
        "companyMileCard": "string",
        "mileCard": "string",
        "gender": "string",
        "birthDate": "2025-09-25T15:42:34.935Z",
        "cpf": "string"
      }
    ],
    "connections": [
      {
        "company": "string",
        "flightNumber": 0,
        "date": "2025-09-25T15:42:34.935Z",
        "seatClass": "string",
        "origin": "string",
        "destination": "string",
        "boarding": "2025-09-25T15:42:34.935Z",
        "arriving": "2025-09-25T15:42:34.935Z",
        "fareClass": "string"
      }
    ]
  }
}

Response POST

Represents the integration execution response. If you have contracted more than one module, you may receive all at once. Modules not contracted will not be returned.


Result

FieldDescriptionTypeRequired
executionIdExecution IDGuidYes
analysisIdAnalysis IDGuidYes
transactionIdTransaction IDStringYes
mfaMultifactor authentication resultMfa ResultNo

Mfa Result

Represents the result of a multifactor authentication (MFA).

FieldDescriptionTypeRequired
statusAuthentication statusStringYes
optionOption used for authenticationStringNo
messageMessage associated with the resultStringNo
repliedAtDate and time of the responseDateTimeNo

JSON

{
  "executionId": "string",
  "analysisId": "string",
  "transactionId": "string",
  "mfa": {
    "status": "pending",
    "option": null,
    "message": null,
    "repliedAt": null
  }
}

Response GET

Represents the execution response of the analysis query.


Result

FieldDescriptionTypeRequired
analysisIdAnalysis IDGuidYes
transactionIdTransaction IDStringYes
mfaMultifactor authentication resultMfa ResultNo

Mfa Result

Represents the result of a multifactor authentication (MFA).

FieldDescriptionTypeRequired
statusAuthentication statusStringYes
optionOption used for authenticationStringNo
messageMessage associated with the resultStringNo
repliedAtDate and time of the responseDateTimeNo

JSON

{
  "analysisId": "string",
  "transactionId": "string",
  "mfa": {
    "status": "pending",
    "option": null,
    "message": null,
    "repliedAt": null
  }
}

Response Error

Represents the details of a problem returned by the API in case of error.

FieldDescriptionTypeRequired
typeURI identifying the specific problem type. Can be used to categorize the error.StringNo
titleDescriptive title of the problemStringYes
statusHTTP status code associated with the problemIntegerYes
errorsValidation errorsObjectYes
instanceURI identifying the specific instance of the problemStringNo

JSON

{
  "errors": {
    "string": [
      "string"
    ]
  },
  "type": "string",
  "title": "string",
  "status": 0,
  "traceId": "string"
}