View as Markdown

llms.txt

The API reference isn't available right now

This instance couldn't load its API specification. The reference returns as soon as the specification is readable again.

Back to the API reference

No such model

This instance publishes no model under that name. It may have been renamed, or no operation this installation serves uses it.

Back to the API reference

This reference may be out of date

This instance couldn't reach its API specification on the last attempt, so this page shows the copy fetched before that. Anything added or changed since then is missing here, and the reference updates itself as soon as the specification is readable again. Last fetched 2026-10-22 22:52 UTC.

API reference Models

ThreeDSAuthenticationData

A model the API reference uses in a request or a response. The operation pages link every field typed as this model here.

The 3-D Secure authentication record persisted on a transaction: the merchant-safe outcome the directory server and issuer reported, plus the issuer credential the authorization forwards to claim the liability shift.

Values

Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.

Fields

Field Type Description
providerType required ThreeDSProviderType ThreeDSProviderType Which 3-D Secure provider produced this authentication. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
Fake Deterministic in-memory provider that performs no network calls. The local-dev, CI, and default-selection provider, and the safe landing spot for an absent configuration value.
Paay Paay (API brand "3DS Integrator"), reached over its Direct API. Supports authentication, the 3DS Method step, the cardholder challenge, and 3RI; it documents no decoupled or Secure Payment Confirmation capability, so the registry refuses those.
messageCategory required ThreeDSMessageCategory ThreeDSMessageCategory The EMVCo message category the authentication ran under: a payment authentication or a non-payment one (adding a card on file, verifying an account). nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
Payment Wire value 01: a payment authentication.
NonPayment Wire value 02: a non-payment authentication, such as adding a card on file or verifying an account without an amount.
threeDSVersion required string The 3DS message version the flow negotiated, in EMVCo dotted form (for example `2.2.0`). A string because the wire field is a string and a new version must not need a code change here. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
threeDSServerTransactionId required string The 3DS server transaction identifier that correlates every message in this authentication. The one identifier a support agent needs to trace a 3DS flow end to end with the provider. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
dsTransactionId required string The directory server transaction identifier, which most schemes require on the authorization and which a later merchant-initiated (3RI) authentication quotes as its prior reference. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
acsTransactionId required string The access control server (issuer) transaction identifier, used to correlate a challenge with its authentication. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
transactionStatus required ThreeDSTransactionStatus ThreeDSTransactionStatus The normalized EMVCo `transStatus` (wire values `Y`, `N`, `U`, `A`, `C`, `D`, `R`, `I`). This, not `liabilityShifted`, is the protocol answer; the liability flag is the interpretation. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
Unknown No status was reported, or the value could not be mapped. Treated as "no authentication happened": never liability-shifting.
Authenticated Wire value Y: authentication or account verification succeeded.
NotAuthenticated Wire value N: not authenticated, or the transaction was denied.
Unavailable Wire value U: authentication could not be performed (technical or other problem).
AttemptsProcessed Wire value A: an authentication attempt was performed and proof is supplied, but the cardholder was not actually authenticated (the "attempts" / stand-in path).
ChallengeRequired Wire value C: a cardholder challenge is required to complete authentication.
DecoupledChallengeRequired Wire value D: a decoupled cardholder challenge is required (3DS 2.2 and later).
Rejected Wire value R: authentication was rejected by the issuer.
InformationalOnly Wire value I: informational only. The 3DS requestor asked for information and no authentication was performed.
transactionStatusReason required string The EMVCo `transStatusReason`, present when the issuer explains a non-authenticated status. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
eci required string The electronic commerce indicator to forward on the authorization. Scheme-specific: Visa and Amex use `05` / `06` / `07`, Mastercard uses `02` / `01` / `00`. Distinct from the wallet `CardData.EciIndicator`, which a wallet decryption writes. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
cavvResultCode required string The scheme's CAVV result code, describing how the issuer validated the credential. Metadata about the credential, not the credential, so it is merchant-safe. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
cavvAlgorithm required string The algorithm the issuer used to generate the credential, where the scheme reports one. Metadata about the credential, not the credential, so it is merchant-safe. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
liabilityShifted required boolean `true` when this outcome shifts chargeback liability to the issuer under the scheme's rules for the reported status and ECI. Set by the provider so the rule lives in one place per vendor; readers must not re-derive it. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
challengeRequired required boolean `true` when the issuer required a cardholder challenge to complete the authentication. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
challengeCompleted required boolean `true` when a required challenge ran to completion and the issuer reported its result; `false` when the cardholder abandoned it or it timed out; `null` when no challenge was required. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
authenticationType required ThreeDSAuthenticationType ThreeDSAuthenticationType How the authentication reached its outcome: frictionless, challenged, an attempts stand-in, or merchant-initiated. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
Frictionless The issuer authenticated the cardholder from the risk data alone; no challenge was presented.
Challenge The issuer required a cardholder challenge and the flow completed it (or the challenge was attempted and the issuer reported its result).
Attempt The directory server or the scheme stood in for an issuer that could not authenticate and produced attempts proof (wire status A). Liability may still shift under scheme rules.
RequestorInitiated A merchant-initiated (3RI) authentication with no cardholder present, run against a prior authentication.
authenticatedAtUtc required string (date-time) UTC instant the authentication outcome was recorded on the transaction. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
cavv required string The base64-encoded cardholder authentication verification value the issuer returned (Visa, Discover, Amex). Always sensitive: never logged, never delivered on a webhook, never written into transaction history, and masked on every read surface. `null` on a Mastercard authentication, which carries `aav` instead. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
aav required string The base64-encoded accountholder authentication value (Mastercard's spelling of the same credential as `cavv`). Handled identically: always sensitive. nullable
Values: Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.

This model has no documented fields.

Reconnecting to the server

Could not reconnect

This session has ended

Attempt 1

Your work on this page is still here. Retrying keeps it; reloading starts the page again.

The server no longer holds this page's state, so it has to be loaded again.