Step 1: Device Data Collection & Encryption

Development Notice

The Cardinal Virtual SDK is currently in Beta and is subject to changes within the codebase and documentation. Please reach out to your AE if there are any questions.

Overview

To get started with the Cardinal Virtual SDK we will need device data from the SDK. This data allows the issuer to build and enhance their risk models based on the consumers device information.  


The Device Data will use the EMV 3DS requirements and specification for collecting and encrypting the device data on the user's device.  Below you'll find the SDK - Device Information which represents the types of data and field names, where the Protocol and Core Functions Specification (Chapter 6.2 - Security Functions) will be used to the collection and encryption of the Device Data. 

Device Data URLs

Please reach out to our Cardinal Account Executive for a list of URLs to use while testing and deploying Device Data Collection



Device Parameters JSON Structure

JSON KeysDescription
DV

Data Version

DD

Device Data

DPNA

Device Parameter Not Available

SW

Security Warning

Device Parameter Unavailability Reasons

Reason Code

Description

RE01

Market or regional restriction on the parameter.

RE02

The platform version does not support the parameter or the parameter has been deprecated.

RE03

Parameter collection not possible without prompting the user for permission.

RE04

The parameter value returned is null or blank.

Android Sample

{
    "DV": "1.0",
    "DD": {
        //Common Data Fields 
        "C001": "Android",
        "C002": "HTC One_M8",
        "C004": "5.0.1",
        "C005": "en-US",
        "C006": "Eastern Standard Time",
        "C007": "06797903-fb61-41ed-94c2-4d2b74e27d18",
        "C009": "John's Android Device"
        ...
        //Android-specific Device Parameters
        "A060": "REL",
        "A119": "1",
        "A117": -1,
        "A118": 0,
        "A115": "1",
        "A116": 0,
        "A113": "0",
        "A114": "30000",
		...
    },
    "DPNA": {
        "C010": "RE01",
        "C011": "RE03"
    },
    "SW": [
        "SW01",
        "SW04"
    ]
}

iOS Sample 

{
    "DV": "1.0",
    "DD": {
        //Common Data Feilds 
        "C001": "Android",
        "C002": "HTC One_M8",
        "C004": "5.0.1",
        "C005": "en-US",
        "C006": "Eastern Standard Time",
        "C007": "06797903-fb61-41ed-94c2-4d2b74e27d18",
        "C009": "John's Android Device"
        ...
        //iOS-specific Device Parameters
        "I008": "12.0",
        "I012": [
            "en"
        ],
        "I001": "2A9678FB-15D2-4554-8F70-F438AB62A146",
    },
    "DPNA": {
        "C010": "RE01",
        "C011": "RE03"
    },
    "SW": [
        "SW01",
        "SW04"
    ]
}

EMVCo Documents 


SDK—Device Information V 1.5


Protocol and Core Functions Specification V 2.2.0