Skip to main content
Fraud fingerprinting identifies the customer’s device when a conversation escalates to an agent. The SDK runs a Fingerprint identification on the device and sends the encrypted result to ASAPP, which uses it to assess fraud risk before routing the conversation. Fingerprinting is opt-in:
  • The core ASAPPSDK framework doesn’t depend on the Fingerprint SDK. Fingerprinting lives in the separate ASAPPFingerprint framework, so apps that don’t enable it need no new dependency.
  • A scan runs only when your app enables it and ASAPP has enabled fraud detection for your company.
  • The SDK scans only when a conversation escalates to an agent, not when chat opens.
  • The SDK reuses a successful result for up to one hour. If a result from an earlier escalation is still valid when chat opens, the SDK also sends it to ASAPP at chat start. It doesn’t run a new scan then.

Before you begin

Fraud fingerprinting requires ASAPP iOS SDK 15.0.9 or later. The ASAPP/Fingerprint subspec and ASAPPFingerprint.xcframework don’t exist in earlier versions. Contact your Implementation Manager at ASAPP to:
  • Enable fraud detection and fingerprinting for your company.
  • Allow your app’s bundle ID, such as com.example.app. Identification requests from bundle IDs that aren’t allowed fail.

Enable fingerprinting

1

Add the ASAPPFingerprint framework

ASAPPFingerprint links the Fingerprint iOS SDK, so add both to your app.
Add the ASAPP/Fingerprint subspec to your Podfile. CocoaPods installs the Fingerprint SDK (Fingerprint-iOS 4.x) with it.
Podfile
If you already use the ASAPP pod, run pod update ASAPP to get version 15.0.9 or later. Otherwise run pod install.
Fingerprint stops publishing new versions to CocoaPods in December 2026. Versions already published keep installing, but later Fingerprint releases may only be available through Swift Package Manager.
Use Fingerprint iOS SDK 4.x. ASAPP can’t read results from other major versions.
2

Enable the scanner at launch

Call ASAPP.enableFingerprintScanner() once at launch, after you initialize the SDK and before you open chat:
Set ASAPP.debugLogLevel = .warning in a debug build and escalate a conversation to an agent. If the log shows “Fingerprinting is enabled in settings but no scanner is registered”, the app didn’t call ASAPP.enableFingerprintScanner().

Declare data collection in App Store Connect

ASAPPFingerprint includes a privacy manifest that declares: The Fingerprint SDK includes its own privacy manifest. Account for both when you complete your app’s App Privacy details in App Store Connect. If your app enables fingerprinting, also update your app’s privacy policy to cover device identification for fraud prevention. Apps that don’t add ASAPPFingerprint don’t need these disclosures.

Network access

By default, the SDK sends identification requests to https://metrics.asapp.com and falls back to https://api.fpjs.io. If your app restricts network traffic, allow both hosts. ASAPP can change these endpoints for your company without an SDK update.

Troubleshooting

  • Confirm that your app calls ASAPP.enableFingerprintScanner() at launch.
  • Ask your Implementation Manager to confirm that fraud detection and fingerprinting are enabled for your company.
Fingerprint.xcframework isn’t embedded. Set it to “Embed & Sign” in your target’s “Frameworks, Libraries, and Embedded Content”.
  • Ask your Implementation Manager to confirm that your app’s bundle ID is allowed.
  • Confirm that the app can reach the identification endpoints listed in Network access.
If a scan or its report fails, the conversation continues and routes normally without a fraud score. The SDK doesn’t show an error to the customer.