3DS SDK Advanced Options

3DS SDK Advanced Options

Here you can find out how to:



Device data collection

Device information is gathered by the 3DS SDK from a shopper device during 3DS Service initialization. By default, SDK collects as many parameters as it can. The full list of device info can be found in the EMVCo Specifications, check the file called "EMV® 3-D Secure SDK—Device Information".

Device data blacklist

You can set a list of parameters which should not be pulled from the device because of some market or regional restrictions. Use identifiers from the "EMV® 3-D Secure SDK—Device Information" file, e.g. , and add this info to the 3DS config.

Security

As soon as 3DS Service is initialized, you may want to verify security warnings and abort the transaction in case of high risk. Here is the list of possible security warnings to be detected:

Security warning IDDescriptionSeverity Level
SW01The device is jailbroken.High
SW02The integrity of the SDK has been tampered.High
SW03An emulator is being used to run the app.High
SW04A debugger is attached to the app.Medium
SW05The OS or the OS version is not supported.High

There are two places where you can check detected warnings:

  • Init callback

    If you initialized 3DS Service yourself, you may check warnings right after the initialization is done. The service provides a callback for this:

  • Before submit callback

    If you use our Ready-to-use UI and let MSDK to do the initialization, the right place to check warnings is a callback which is called before submitting the transaction. For this purpose, you should implement . See details in the MSDK guide.

UI customization

3DS SDK allows to customize challenge screens to match your app's look-and-feel. API provides the following classes to customize specific elements on the screen:

ClassDescription
ToolbarCustomizationBackground color of the toolbar + header label customization
LabelCustomizationHeading text customization
TextCustomizationNon-heading text cusomization
TextBoxCustomizationCorner radius of input fields + label customization
ButtonCustomization Button background color, corner radius and font customization. Make sure you set appropriate style for each type of buttons:
  • CANCEL - Button placed in the right corner of Toolbar
  • SUBMIT - Main action on the screen
  • RESEND - Secondary action
  • CONTINUE - Main action in case of authentication in the external app
  • NEXT - Main action in case of authentication consists of several steps

See the sample code how UI customization can be applied in your app:

Challenge screens customization

Decoupled authentication

Some issuers may want to reach out to authenticate their cardholder outside of the EMV 3DS message flows. If decoupled authentication is supported, it's recommended to add one more check for 3D Secure transaction status. If MSDK returns 'decoupled' status, then make sure that you add appropriate message on your order confirmation screen to let shopper know that external authentication is required. Provide all necessary recognizable data (merchant name, incremental transaction amount, reasons for additional authentication) that will allow shopper to go through authentication process seamlessly.