Developers · SDKs Overview Developer
SDK

Assentify DXP SDKs Overview

The Digital Experience Platform (DXP) ships two native SDK types for onboarding and identity. The Flow SDK embeds a whole published DXP flow as a guided native journey, while the Component SDK gives you direct control of individual identity components and submits the collected data back to the Digital Experience Platform (DXP).

Install · Initialize · Capture
Types Flow SDK & Component SDK Platforms iOS · Android · Flutter · React Native Credentials API Key · Tenant Identifier

Overview

The Assentify SDK complements the Assentify DXP platform (SaaS). It has several capabilities and functionalities that empower developers to take complete control of the Identity extraction process. The developer leverages the available data by using the response information from the supported components or data provided by the app user. The SDK allows the developer to submit all extracted data to Assentify to gain access to further features such as Compliance, AML, Client profile, and other features that the DXP covers.

The Assentify Component SDK is available for Android native, iOS native, Flutter, and React Native. Whichever type you choose, you obtain credentials from the Developers section of the Assentify DXP portal, initialize the SDK, use its components or flow, and submit the collected data to the Digital Experience Platform (DXP).

Two things you always needAn API Key and a Tenant Identifier, both retrieved from the Developers section of the Assentify DXP portal. The Component SDK also uses an Interaction Hash to initialize.

The Two SDK Types

Assentify offers two ways to integrate identity capture into a native application. Choose the Flow SDK when you want the platform to drive the entire journey, or the Component SDK when you want to build your own experience around individual components.

SDK typeWhat it doesBest for
Flow SDKEmbeds a whole published DXP flow as a native guided journey. The startFlow function initializes and launches the entire flow, including the UI and events configured in the Admin Portal.Delivering a complete, platform-configured onboarding journey inside your app with minimal custom UI.
Component SDKGives direct control of individual identity components (Identification Document Capture, Face Capture/Matching, Context-Aware Signing, and more) and submits collected data to the Digital Experience Platform (DXP).Building a custom experience where you control each component and aggregate or manipulate data before submission.

Flow SDK

The Flow SDK embeds a whole published DXP flow as a native guided journey. You call startFlow, which initializes and launches the entire flow, including the UI and events configured in the Admin Portal. The flow is the one you publish and configure on the platform, so the journey, its steps, and its look-and-feel are managed centrally.

The startFlow method accepts flow environmental conditions that let you theme the embedded journey. Only backgroundType is required; the remaining parameters are optional.

ParameterRequiredDescription
backgroundTypeYesDefines how the background should be rendered (for example: color or image). This is the only required field.
logoUrlOptionalURL of the logo displayed in the flow header or main screen.
svgBackgroundImageUrlOptionalURL of the SVG background image used for the screen background.
textColorOptionalPrimary text color in HEX format (for example: #000000).
secondaryTextColorOptionalSecondary text color in HEX format, used for subtitles or less prominent text.
backgroundCardColorOptionalBackground color for cards and containers in HEX format.
accentColorOptionalAccent color used for highlights and interactive elements.
backgroundColorOptionalDefines the main background style of the screen. Can be Solid (single color) or Gradient (multiple colors with angle).
clickColorOptionalDefines the background style applied on click or pressed states.
LanguageOptionalYou can optionally set the language that the OCR will process the extracted content from the cards.
enableNfc, enableQrOptionalTriggers NFC scanning after scanning a passport, or QR scanning after scanning a card.
blockLoaderCustomPropertiesOptionalMap containing the custom properties configured in the Admin Portal.
  1. Initialize the Assentify SDK object.
  2. Call AssentifySdk.startFlow().
  3. Configure the startFlow parameters.
  4. Handle flow completion through the flow callback (for example, listen to OnFlowCompleted).
Generating the Flow URLThe flow you embed is a published DXP flow addressed by a Digital Engagement Link of the form https://platform.assentify.com?interaction={HASH}. To generate that URL and pass custom properties through it, see the Flow URL and Engagement API page.

Component SDK

The Assentify Component SDK gives the developer complete control of the Identity extraction process through individual, standalone, event-driven components. Each component can use its built-in default user interface, or the developer can turn off the guides and default interface and supply their own design. This lets the integrating application create any design it wants without affecting the performance or capabilities of the scanning and extraction process, while retaining complete control of what is displayed on screen through the events fired during scanning.

The Component SDK is available for iOS native, Android native, Flutter, and React Native. The StepID represents the ID of the step in the Engagement block that you configure in the Flow Builder on the portal (for example, the StepID of Face Capture or ID Capture); you need it to submit your data to the portal.

Credentials

To initialize the Component SDK you require the following variables, all retrieved from the Assentify DXP portal. Once you have logged in, visit the Developers section and select the Flow you would like to use for your application.

VariableWhere to obtain it
API KeyCreate a new API Key, or use an existing one, in the Developers section. You can assign Claims to an API Key to limit the amount of access a specific key has.
Tenant IdentifierVisit the Developers section, click Flow Configuration, select your flow, and choose the Engagement block. The Tenant Identifier is shown in the block information.
Interaction HashOpen the Flow Manager and select your flow. When the Digital Engagement Link loads, its format is https://platform.assentify.com?interaction={HASH}; copy the HASH part to retrieve the interaction hash.

The assentifySdk object is an instance of AssentifySdk and is initialized with these parameters, including apiKey, tenantIdentifier, and interaction. An initialization callback (onAssentifySdkInitSuccess) signals success, and onAssentifySdkInitError is executed upon failure to initialize the SDK.

assentifySdk = AssentifySdk(
  apiKey: "",
  tenantIdentifier: "",
  interaction: ""
)

Initialize, Use, Submit

Every Component SDK integration follows the same shape: get an API Key and Tenant Identifier from the Developers section, initialize the SDK on each application start up, use the components you need, and submit the collected data to the Digital Experience Platform (DXP).

  1. Retrieve your API Key, Tenant Identifier, and Interaction Hash from the Developers section of the Assentify DXP portal.
  2. Initialize the SDK on application start up. On success, call getTemplates, which returns a List<TemplatesByCountry>; store the result for use when processing an ID Card.
  3. Use the components you need, such as startScanIDCard, startScanPassport, startScanOther, or startFaceMatch.
  4. Set the Wrap Up step (which supplies the flow end time) and populate the BlockLoader, including any custom properties.
  5. Prepare your list of steps with the outputProperties obtained for each step, set each SubmitRequestModel into a list, and call startSubmitData() to submit to the Digital Experience Platform (DXP).
BlockLoader and custom propertiesThe BlockLoader provides core context properties (DeviceName, FlowName, TimeStarted, Application, UserAgent, InstanceHash) and lets you add custom properties on the DXP. Assentify uses the OnBoardMe_Property_{propertyName} naming nomenclature for all custom properties declared in your app.

Supported Components

The Component SDK exposes the following standalone components. Availability of a given component varies by platform source; consult each platform's SDK page for the exact methods it documents.

ComponentPurpose
Identification Document CaptureA standalone, event-driven component that extracts information from an ID Card. The ID type is determined by the configuration set in Assentify DXP and can be managed even after the application has gone live. Methods include getTemplates, startScanIDCard, startScanPassport, and startScanOther.
Face Capture/MatchingA standalone, event-driven component that performs face matching between a live source and a target image. The developer supplies the target image and the selfie camera captures the source. Started with startFaceMatch.
NFC Passport ScanningReads an NFC-enabled passport. Documented as readPassport (iOS), startScanNfc (Android), and startNfc (Flutter) in the respective sources.
Context-Aware SigningProgrammatically creates files pre-filled with tokens retrieved from the Assentify DXP, then adds a user signature. Started with startContextAwareSigning.
BlockLoaderA core component that provides context properties to the DXP and lets you add custom properties for submission.
Wrap UpA built-in step that allows the developer to set the TimeEnded value, supplying an end time for the flow.
SubmissionA built-in function that initiates data transmission from the integrating app to Assentify DXP, allowing data aggregation and manipulation before sending. Called via startSubmitData.
Response models are fixedThe response models are static and are based on responses from the core ID orchestrator; they cannot be redefined from the admin page. When a callback such as onComplete fires, the application receives all the information and is responsible for transferring it. To trigger your backend after submission, define a webhook in the connector block.

Platform SDK Pages

The Component SDK is available for the four native platforms below. Each platform's page documents its exact initialization callbacks, method names, and data models.

PlatformComponent SDK page
iOS (native)iOS Component SDK
Android (native)Android Component SDK
FlutterFlutter Component SDK
React NativeReact Native Component SDK
Where keys map to the admin pageIn Flow Builder, after selecting a flow from Flow Manager, you are presented with the blocks that make up the flow. To view the additional keys per flow, select the magnifier icon on the BlockLoader to see all the data, and to define and add new data points.