Skip to content

Initiate an integrated authentication request

Request

Authenticates an integrated 3D Secure transaction request. In integrated mode, PXP processes the transaction in conjunction with the 3D Secure authentication data. This ensures that the transaction is authenticated securely, leveraging the full authentication data collected during the pre-initiation phase. The request payload must include comprehensive details about the transaction, card information, merchant information, and additional contextual data necessary for the 3D Secure authentication flow.

Path
authenticationIdstringrequired

The authentication ID.

Bodyapplication/json
fingerprintNotificationstring or null

The URL for notifying the fingerprinting result. Base64 of {"threeDSMethodNotificationURL":"method url value","threeDSServerTransID":"transaction id value"}.

merchantCountryNumericCodestring, = 3 charactersrequired

The three-digit country code of the merchant, following ISO 3166-1 numeric standard.

Example:"840"
merchantLegalNamestring, [ 0 .. 40 ] charactersrequired

The legal name of the merchant.

Example:"ACME Ltd"
challengeWindowSizeinteger, (int32), [ 1 .. 5 ]required

The desired size of the challenge window displayed to the cardholder during authentication.

Possible values:

  • 1: 250x400
  • 2: 390x400
  • 3: 500x600
  • 4: 600x400
  • 5: FullScreen
requestorChallengeIndicatorstring or null, [ 0 .. 2 ] charactersrequired

Indicator of whether a challenge is requested for this transaction (Integrated authentication).

Possible values:

  • 01: NoPreference
  • 02: NoChallengeRequested
  • 03: ChallengeRequested3dsRequestorPreference
  • 04: ChallengeRequestedMandate
  • 05: NoChallengeRequestedTRAPerformed
  • 10: NoChallengeRequestedLowValueExemption
Enum:"01""02""03""04""05""10"
challengeCallbackUrlstring, (uri), [ 1 .. 256 ] charactersrequired

The fully qualified URL of the system that receives the CRes message or error message. The CRes message is posted by the ACS through the cardholder's browser at the end of the challenge and receipt of the RRes message.

recurringobject

Details related to recurring transactions for 3D Secure authentication.

billingAddressobject

Details of the address used in browser-based authentication.

shippingAddressobject

Details of the address used in browser-based authentication.

browserDataobjectrequired

Information about the browser used in the authentication process.

shopperobjectrequired

Details about the shopper involved in the authentication.

curl -i -X PUT \
  'https://api-services.pxp.io/api/v1/threedsecure/integrated/authentications/{authenticationId}/browser-authentication' \
  -H 'Content-Type: application/json' \
  -d '{
    "fingerprintNotification": "string",
    "merchantCountryNumericCode": "840",
    "merchantLegalName": "ACME Ltd",
    "challengeWindowSize": 1,
    "requestorChallengeIndicator": "01",
    "challengeCallbackUrl": "http://example.com",
    "recurring": {
      "expirationDate": "2024-12-31T23:59:59Z",
      "frequencyInDays": 30
    },
    "billingAddress": {
      "city": "San Francisco",
      "countryNumericCode": "840",
      "line1": "123 Market St",
      "line2": "Apt 456",
      "line3": "Building B",
      "postalCode": "94105",
      "stateCode": "CA"
    },
    "shippingAddress": {
      "city": "San Francisco",
      "countryNumericCode": "840",
      "line1": "123 Market St",
      "line2": "Apt 456",
      "line3": "Building B",
      "postalCode": "94105",
      "stateCode": "CA"
    },
    "browserData": {
      "acceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
      "colorDepth": 24,
      "ipAddress": "192.168.1.1",
      "javaEnabled": true,
      "javaScriptEnabled": true,
      "language": "en-US",
      "screenHeight": 1080,
      "screenWidth": 1920,
      "timeZoneOffsetInMinutes": -420,
      "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
    },
    "shopper": {
      "email": "johndoe@example.com",
      "homePhoneNumber": "+1234567890",
      "mobilePhoneNumber": "+0987654321",
      "workPhoneNumber": "+1123456789"
    }
  }'

Responses

OK

Bodyapplication/json
uniqueIdstring or null
statestring or null

The current state of the authentication request. PendingClientData isn't returned during initiation.

Enum:"AuthenticationSuccessful""AuthenticationFailed""AuthenticationRejected""AuthenticationError""PendingCustomerChallenge"
transactionStatusstring or null

The status of the transaction.

Possible values include:

  • Y: AuthenticationVerificationSuccessful
  • N: NotAuthenticated_NotVerified
  • U: AuthenticationCouldNotBePerformed
  • A: AttemptsProcessingPerformed
  • C: ChallengeRequired
  • R: AuthenticationRejected
  • I: InformationalOnly
Enum:"Y""N""U""A""C""R""I"
electronicCommerceIndicatorstring or null

The indicator used to signify the level of security used in the authentication, often used in electronic commerce transactions.

Example:"05"
exemptionGrantedboolean

Whether an exemption from Strong Customer Authentication (SCA) was granted.

exemptionGrantedByIssuerstring or null

Specifies if the exemption was granted by the issuer.

Possible values:

  • 05: TransactionRiskAnalysisExemption
  • 08: TrustListExemption
  • 10: LowValueExemption
  • 11: SecureCorporatePaymentsExemption
  • 79: NoExemptionApplied
acsUrlstring or null

The URL of the Access Control Server (ACS) where the cardholder is redirected for challenge authentication.

Example:"https://acs.example.com/challenge"
challengeDatastring or null

Data required for the challenge authentication process, typically a base64 encoded string.

Example:"eyJjaGFsbGVuZ2VEYXRhIjoiQUJDIn0="
stateDataobject

Details about the state. This is returned only when the transactionStatus is different from Y or A.

cardholderInfostring or null

The text provided by the ACS/issuer to the cardholder during a transaction.

Response
{ "uniqueId": "550e8400-e29b-41d4-a716-446655440000", "state": "AuthenticationSuccessful", "transactionStatus": "Y", "electronicCommerceIndicator": "05", "exemptionGranted": false, "exemptionGrantedByIssuer": "79", "cardholderInfo": "Additional authentication information" }