This guide explains the integration steps to collect Merchant Fraud Management device Id information via iovation FraudForce Mobile SDK.
Configuration
Since the mSDK version 2.18.0 you can use Merchant Fraud Management device Id information for more security reason. The device Id is sent together with the payment via OPP parameter customer.browserFingerprint.value.
To enable this feature you have to go through the following steps:
Activate the feature in your back office portal. Please contact your account manager for more information.
Import the iovation FraudForce SDK to your project.
iOS
Import the iovation FraudForce SDK to your project
Download and unzip iovation FraudForce Mobile SDK for iOS from Github.
Drag and drop FraudForce.framework to the "Frameworks" folder of your project. Make sure "Copy items if needed" is checked.
Check "Frameworks, Libraries, and Embedded Content" section under the general settings tab of your application's target. Ensure the Embed dropdown has Embed and Sign selected for the framework.
Add a Run Script
The framework contains a build for both the simulator (i386, x86_64) and the actual devices (ARM). As it is not permitted to submit a binary for an unsupported architecture to App Store, you have to add script that "manually" removes unused architectures from the final binary.
Go to the app target’s Build Phases tab.
In Xcode menu, select Editor > Add Build Phase > Add Run Script Build Phase. You should now see a Run Script section in your Build Phase options.
Important: "Run Script" phase should be put after "Embed Framework" phase. You can reoder build phases by dragging them using your mouse.
Set it to use /bin/sh and check the Run script only when installing option.
Enter the following script:
APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
find "$APP_PATH" -name 'FraudForce.framework' -type d | while read -r FRAMEWORK
do
FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)
FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"
echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"
EXTRACTED_ARCHS=()
for ARCH in $ARCHS
do
echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"
lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"
EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")
done
echo "Merging extracted architectures: ${ARCHS}"
lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"
rm "${EXTRACTED_ARCHS[@]}"
echo "Replacing original executable with thinned version"
rm "$FRAMEWORK_EXECUTABLE_PATH"
mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"
done
Android
Import the iovation FraudForce SDK to your project
Download and unzip iovation FraudForce Mobile SDK for Android from Github.
Importfraudforce-lib-release.aar into your project:
File > New > New Module > Import .JAR/.AAR Package
Add the module dependency to the build.gradle:
// this name must match the library name defined with an include: in your settings.gradle file
implementation project(":FraudForce")
Ready-to-Use UI
If you use our ready-to-use UI and the configuration was successfully done, the Merchant Fraud Management device Id information will be collected and sent automatically in step 2.
SDK & Your Own UI
If you use core SDK & Your Own UI then you need to collect Merchant Fraud Management device Id information using iovation FraudForce SDK and send it in step 1.