Skip to main content

Risk Signals

Risk Signals provide contextual and behavioral data to the Relying Party (i.e. the customer's bank), allowing it to ensure the authentication is happening under expected and secure conditions.

A Relying Party may decide upon its own risk controls, meaning this data is technically optional, but may be required at the sole discretion of the Relying Party, making them recommended.

Risk Signals are used both in Device Linking and Payment processing, and the available parameters are the following:

ParameterRequirementDescription
device_idOptionalstring Unique and persistent device ID.
isRootedDeviceOptionalboolean Indicates whether the device has root (Android) or jailbreak (iOS).
screenBrightnessOptionalinteger Screen brightness (typically 0 to 255).
elapsedTimeSinceBootOptionalinteger Elapsed time (in milliseconds) since device boot.
osVersionOptionalstring Operating system version (e.g., '14' for iOS 14).
userTimeZoneOffsetOptionalstring User's time zone offset relative to UTC (i.e.: "-03").
languageOptionalstring Device language (ISO 639-1 code).
screenDimensions.heightOptionalinteger Screen height in pixels.
screenDimensions.widthOptionalinteger Screen width in pixels.
accountTenureOptionalstring Customer account creation date in the merchant's system (yyyy-mm-dd).
geolocation.latitudeOptionalnumber Geolocation information.
geolocation.longitudeOptionalnumber Geolocation information.
geolocation.typeOptionalstring Location precision (FINE or COARSE).
isCallInProgressOptionalboolean Indicates whether there is a phone call in progress.
isDevModeEnabledOptionalboolean Indicates whether developer mode is enabled.
isMockGPSOptionalboolean Indicates whether mock location (mock GPS) is enabled.
isEmulatedOptionalboolean Indicates whether the application is running on an emulator.
isMonkeyRunnerOptionalboolean Indicates whether an automated testing tool (MonkeyRunner) is in use.
isChargingOptionalboolean Indicates whether the device is charging the battery.
antennaInformationOptionalstring Information about the mobile network connection type (e.g., 3G, 4G, 5G).
isUsbConnectedOptionalboolean Indicates whether a USB cable is connected.
integrity.appRecognitionVerdictOptionalstring Verdict on app recognition (e.g., via Google Play Protect).
integrity.deviceRecognitionVerdictOptionalstring Verdict on the device's basic integrity.

Node Example

"risk_signals": {
"device_id": "{string}",
"isRootedDevice": false,
"screenBrightness": 255,
"elapsedTimeSinceBoot": 6356027,
"osVersion": "14",
"userTimeZoneOffset": "-03",
"language": "pt",
"screenDimensions": {
"height": 720,
"width": 1280
},
"accountTenure": "yyyy-mm-dd",
"geolocation": {
"latitude": -15.738602,
"longitude": -47.926498,
"type": "{FINE/COARSE}"
},
"isCallInProgress": false,
"isDevModeEnabled": false,
"isMockGPS": false,
"isEmulated": false,
"isMonkeyRunner": false,
"isCharging": false,
"antennaInformation": "4G",
"isUsbConnected": false,
"integrity": {
"appRecognitionVerdict": "PLAY_RECOGNIZED",
"deviceRecognitionVerdict": "BASIC_INTEGRITY_SUCCESS"
}
}