Search Overlay

Generating the Device Fingerprint

Please Note: As an ISV / Paysafe Partner, you will need to complete all of the below "merchant" steps on behalf of the Parent Merchant Legal Entity (PMLE) that your merchants will be operating under.

The first step of processing a 3DS card payment is generating a device fingerprint.

  • Start by passing the card BIN to the start() method of the ThreeDSecureService.
    The start() method will further call completion when a device fingerprint is generated.


    In the case of a network token transaction, pass the network token BIN for 3DS device fingerprinting.
    Use the same account for single-use token generation as the one used for authorization processing.
    For more information about how to obtain the network token BIN, see Get a Card Single-Use Token in the Customer Vault API Reference.

[self.threeDSecureService startWithCardBin: "411111"
completion: ^(NSString * _Nullable deviceFingerprintId, NSError * _Nullable error) {
if (error) {
// Handle the error
} else if(deviceFingerprintId) {
// Use the generated device fingerprint to create an authentication
}
}];
threeDSecureService.start(cardBin: "411111",
completion: { deviceFingerprintingId, error in
if error {
// Handle the error
} else if deviceFingerprintId {
// Use the generated device fingerprint to create an authentication
}
})
  • Pass your device fingerprint to your server.
    The server must call the /authentications endpoint of the Paysafe REST APIs. The response from the /authentications call contains the 3DS challenge payload, which is handled by your application.

If the SDK fails to generate a device fingerprint, you will receive a ThreeDSecureError that contains useful information about the cause of the failure. When troubleshooting, you can start by checking the error code and detailed message. Below, you can check the currently supported error codes:

Error Information
Error Code Value Explanation
ERROR_CODE_CONNECTION_FAILED 9001 The operation failed due to a timeout or a connectivity issue.
ERROR_CODE_INVALID_RESPONSE 9002 Server returned an invalid data format which could not be handled by the SDK.
ERROR_CODE_INVALID_API_KEY 9013 Invalid API key or API secret provided when creating a Paysafe API Client.
ERROR_CODE_INTERNAL_SDK_ERROR 9014 A general SDK error. The detailed message should provide additional information.
ERROR_CODE_INVALID_OPTIONS 9015 Invalid option fields error. The detailed message should provide additional information.
ERROR_CODE_INVALID_MERCHANT_CONFIGURATION 9501 The configuration of the provided merchant account is invalid. The Paysafe Support team should be notified.
ERROR_CODE_TRANSACTION_FAILED_OR_CANCELED 9601 The operation failed due to a cancellation or a failure.

If you cannot solve the issue on your own, you can get in touch with the Paysafe Support at integrations@paysafe.com and provide them with the error correlation ID.

On this Page