Skip to main content

AuthenticationRequest

Struct AuthenticationRequest 

Source
pub struct AuthenticationRequest {
Show 55 fields pub message_type: MessageType, pub message_version: MessageVersion, pub three_ds_server_trans_id: String, pub device_channel: DeviceChannel, pub message_category: MessageCategory, pub three_ds_requestor_id: String, pub three_ds_requestor_name: String, pub three_ds_requestor_url: String, pub three_ds_requestor_authentication_ind: Option<String>, pub three_ds_requestor_authentication_info: Option<AuthenticationInfo>, pub three_ds_requestor_challenge_ind: Option<ChallengeIndicator>, pub three_ds_requestor_prior_authentication_info: Option<PriorAuthenticationInfo>, pub acct_number: String, pub card_expiry_date: String, pub acct_type: Option<AccountType>, pub acct_info: Option<AccountInfo>, pub acct_id: Option<String>, pub purchase_amount: Option<String>, pub purchase_currency: Option<String>, pub purchase_exponent: Option<String>, pub purchase_date: Option<String>, pub trans_type: Option<String>, pub recurring_expiry: Option<String>, pub recurring_frequency: Option<String>, pub purchase_instal_data: Option<String>, pub merchant_id: Option<String>, pub mcc: Option<String>, pub merchant_name: Option<String>, pub merchant_country_code: Option<String>, pub merchant_risk_indicator: Option<MerchantRiskIndicator>, pub cardholder_name: Option<String>, pub email: Option<String>, pub home_phone: Option<PhoneNumber>, pub mobile_phone: Option<PhoneNumber>, pub work_phone: Option<PhoneNumber>, pub bill_addr_city: Option<String>, pub bill_addr_country: Option<String>, pub bill_addr_line1: Option<String>, pub bill_addr_line2: Option<String>, pub bill_addr_line3: Option<String>, pub bill_addr_post_code: Option<String>, pub bill_addr_state: Option<String>, pub ship_addr_city: Option<String>, pub ship_addr_country: Option<String>, pub ship_addr_line1: Option<String>, pub ship_addr_line2: Option<String>, pub ship_addr_line3: Option<String>, pub ship_addr_post_code: Option<String>, pub ship_addr_state: Option<String>, pub addr_match: Option<AddrMatch>, pub three_ds_comp_ind: Option<ThreeDsMethod>, pub notification_url: Option<String>, pub browser_info: Option<BrowserInfo>, pub sdk_info: Option<SdkInfo>, pub device_render_options: Option<DeviceRenderOptions>,
}
Expand description

EMV 3DS Authentication Request (AReq).

Sent by the 3DS Server to the Directory Server to initiate authentication. Fields marked Option are conditional or optional per the EMVCo spec.

Fields§

§message_type: MessageType§message_version: MessageVersion§three_ds_server_trans_id: String

UUIDv4 assigned by the 3DS Server for this transaction.

§device_channel: DeviceChannel§message_category: MessageCategory§three_ds_requestor_id: String§three_ds_requestor_name: String§three_ds_requestor_url: String§three_ds_requestor_authentication_ind: Option<String>§three_ds_requestor_authentication_info: Option<AuthenticationInfo>§three_ds_requestor_challenge_ind: Option<ChallengeIndicator>§three_ds_requestor_prior_authentication_info: Option<PriorAuthenticationInfo>§acct_number: String

PAN — must be encrypted when transmitted outside the 3DS Server.

§card_expiry_date: String

YYMM

§acct_type: Option<AccountType>§acct_info: Option<AccountInfo>§acct_id: Option<String>§purchase_amount: Option<String>

Minor-unit purchase amount as a numeric string.

§purchase_currency: Option<String>

ISO 4217 numeric currency code, zero-padded to 3 digits.

§purchase_exponent: Option<String>

Decimal exponent (e.g. “2” for cents).

§purchase_date: Option<String>

UTC datetime, format: YYYYMMDDHHMMSS.

§trans_type: Option<String>

Type of transaction: “01” goods/service, “03” cash-advance, etc.

§recurring_expiry: Option<String>

Recurring/instalment expiry date (YYYYMMDD).

§recurring_frequency: Option<String>

Days between recurring charges.

§purchase_instal_data: Option<String>

Instalments count.

§merchant_id: Option<String>§mcc: Option<String>§merchant_name: Option<String>§merchant_country_code: Option<String>§merchant_risk_indicator: Option<MerchantRiskIndicator>§cardholder_name: Option<String>§email: Option<String>§home_phone: Option<PhoneNumber>§mobile_phone: Option<PhoneNumber>§work_phone: Option<PhoneNumber>§bill_addr_city: Option<String>§bill_addr_country: Option<String>§bill_addr_line1: Option<String>§bill_addr_line2: Option<String>§bill_addr_line3: Option<String>§bill_addr_post_code: Option<String>§bill_addr_state: Option<String>§ship_addr_city: Option<String>§ship_addr_country: Option<String>§ship_addr_line1: Option<String>§ship_addr_line2: Option<String>§ship_addr_line3: Option<String>§ship_addr_post_code: Option<String>§ship_addr_state: Option<String>§addr_match: Option<AddrMatch>§three_ds_comp_ind: Option<ThreeDsMethod>§notification_url: Option<String>

Notification URL where the ACS posts the CRes (browser channel).

§browser_info: Option<BrowserInfo>§sdk_info: Option<SdkInfo>§device_render_options: Option<DeviceRenderOptions>

Implementations§

Trait Implementations§

Source§

impl Clone for AuthenticationRequest

Source§

fn clone(&self) -> AuthenticationRequest

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AuthenticationRequest

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for AuthenticationRequest

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for AuthenticationRequest

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,