LINK4DSECURE 3DS Server AMEX SafeKey Test Lab · staging · v2.3.1 public URL: https://amex3dt.link4.tech

AXP 3DS 2.3.1 APP21 - 3RI03A Decoupled Authentication Supported (part 1)

error Download STL batch file JSON ← tests
threeDSServerTransID
f80bd304-e851-4f66-8c01-1a819b837bb4
channel / category / version
APP / PA / 2.3.1
card
375987000169388 exp 2211 · 3DS 9891 · amount 21200
expected
Frictionless: ARes transStatus=Y, eci present, authenticationValue not present.
2026-09-24T13:21:25.331Z — DS answered Erro: {"dsTransID": "44213cd6-c364-40aa-8ed9-322801bab847", "messageType": "Erro", "messageVersion": "2.3.1", "threeDSServerTransID": "f80bd304-e851-4f66-8c01-1a819b837bb4", "errorCode": "311", "errorComponent": "D", "errorDescription": "The DS detects an error for the key identifier (kid) present in the SDK Encrypted Data", "errorDetail": "The kid is not present or the provided kid is not recognised", "errorMessageType": "AReq", "sdkTransID": "35fe3d76-6987-4528-811f-faecb45d8847"}

Result summary

{
  "ares.acsDecConInd": null,
  "ares.authenticationValue": false,
  "ares.eci": null,
  "ares.transChallengeExemption": null,
  "ares.transStatus": null,
  "ares.transStatusReason": null,
  "cres.transStatus": null,
  "errors": [
    {
      "text": "DS answered Erro: {\"dsTransID\": \"44213cd6-c364-40aa-8ed9-322801bab847\", \"messageType\": \"Erro\", \"messageVersion\": \"2.3.1\", \"threeDSServerTransID\": \"f80bd304-e851-4f66-8c01-1a819b837bb4\", \"errorCode\": \"311\", \"errorComponent\": \"D\", \"errorDescription\": \"The DS detects an error for the key identifier (kid) present in the SDK Encrypted Data\", \"errorDetail\": \"The kid is not present or the provided kid is not recognised\", \"errorMessageType\": \"AReq\", \"sdkTransID\": \"35fe3d76-6987-4528-811f-faecb45d8847\"}",
      "ts": "2026-09-24T13:21:25.331Z"
    }
  ],
  "final.transStatus": null,
  "rreq.authenticationType": null,
  "rreq.authenticationValue": false,
  "rreq.challengeCancel": null,
  "rreq.eci": null,
  "rreq.transStatus": null,
  "rreq.transStatusReason": null,
  "state": "error"
}

Messages (in order exchanged)