Card Real-Time Decisioning

3DS OTP generated webhook payload object

The 3DS OTP generated webhook payload is the data of the issuing.3ds.otp_generated webhook. It contains the 3DS attempt fields and the delivery method the cardholder chose. Deliver otp_value to the cardholder using that method. Read more about 3DS events.

Object Parameters

acs_transaction_id

string

The Access Control Server (ACS) transaction identifier

amount

number

The transaction amount in the smallest unit of the currency (e.g., cents for USD)

attempt_count

integer

The number of authentication attempts made

attempt_status

enum

The current status of the 3DS authentication attempt Possible values: rejected, presented, challenged, authenticated, associated

card_account_id

string

The card account associated with this 3DS attempt

card_id

string

The card associated with this 3DS attempt

challenged_at

date-time

Timestamp when the challenge was presented to the cardholder

challenges_presented

array of strings

List of challenge types that were presented to the cardholder

chosen_challenge

enum

The challenge type selected by the cardholder Possible values: frictionless, attempts, otp, biometric, external

completed_at

date-time

Timestamp when the authentication was completed

created_at

date-time

Timestamp when the 3DS attempt was created

currency

string

The ISO 4217 currency code for the transaction

ds_transaction_id

string

The Directory Server (DS) transaction identifier

id

string

Unique identifier for the 3DS attempt

merchant_category_code

string

The Merchant Category Code (MCC)

merchant_country_code

string

The ISO 3166-1 alpha-2 country code of the merchant

merchant_name

string

The name of the merchant

merchant_url

string

The URL of the merchant

otp_email

string

The email address to deliver the passcode to. Present only when otp_method_type is email. Omitted when the cardholder has no email on file or it has changed since the challenge screen was shown.

otp_method_type

string

The delivery method the cardholder chose on the challenge screen (sms or email). Deliver the passcode only through this method. Empty when the chosen method could not be resolved.

otp_phone_number

string

The phone number (E.164) to deliver the passcode to. Present only when otp_method_type is sms. Omitted when the cardholder has no phone number on file or it has changed since the challenge screen was shown.

otp_value

string

The one-time password value used for authentication

outcome_reason

enum

The reason for the authentication outcome Possible values: frictionless, challenged_accepted, attempts, card_account_status, failed_challenge, rule_rejected, error

realtime_decision

enum

The platform's real-time 3DS authentication decision. Only set when the platform uses real-time 3DS decisioning Possible values: frictionless_approve, challenge, decline_authentication

three_ds_message_version

string

The 3D Secure protocol message version

updated_at

date-time

Timestamp when the 3DS attempt was last updated