Template Configuration

A Template defines how a verification is run — what checks are performed, how users experience the flow, and how results are evaluated. Instead of thinking of templates as API objects, think of them as verification blueprints. Below represents the structure of a template

Template Identity

These settings help you identify and manage templates.

  • Template ID
    A unique identifier used internally and when triggering verifications.
  • Name & Description
    Human-readable details to explain what the template is used for (for example, Standard KYC for India).
  • Entity Type
    Defines whether the template is used for:
    • Individuals (KYC)
    • Businesses (KYB)
  • Tags
    Labels to organise and group templates, such as KYC, KYB, document-only flows, or periodic reviews.

User Experience & Branding

These settings control what the verification flow looks like for end users.

  • Theme & Branding
    Customise colours, fonts, and logos to match your brand.
  • Redirect Behaviour
    Define where users are redirected after completing the verification flow.

Verification Configuration

This section defines what checks are run and how the workflow behaves.

  • Verification Options
    Enable or disable specific checks and control verification behaviour at a workflow level.
  • Manual Review Rules
    Define when a verification should be sent for human review.

Risk & Decisioning

These settings determine how verification outcomes are evaluated.

  • Risk Scoring Rules
    Thresholds that decide whether a profile is Approved, Sent for Review, or Declined.
  • Custom Warning Handling
    Override default warning behaviour to align with your internal risk policies.

Notifications & Events

Control how AiPrise communicates verification progress and results back to your systems.

  • Final Result Webhook
    Receive the completed verification outcome.
  • Event Webhook
    Receive real-time updates as verification steps are processed.

Ongoing Monitoring (Optional)

  • AML Monitoring
    Enable continuous monitoring for individuals or businesses after verification is complete.

Running verification using a Template

To start a verification, pass the template_id into the API call:

curl -X POST https://api-sandbox.aiprise.com/api/v1/verify/run_user_verification \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key_here" \
  -d '{
    "template_id": "template-uuid-here",
    "user_data": {
      "first_name": "John",
      "last_name": "Doe",
      "date_of_birth": "1990-01-15",
      "country": "US"
    }
  }'

Template Overrides

You can override specific template settings per verification session, without editing the template itself:

OverrideDescription
callback_urlUse a different result webhook for this session
events_callback_urlOverride streaming event webhook
redirect_uriChange where the applicant is redirected after verification

Example:

{
  "template_id": "template-uuid",
  "callback_url": "https://yourdomain.com/custom-results",
  "redirect_uri": "https://yourdomain.com/complete"
}

Redirect modes (redirect_uri)

redirect_uri is set in the session config (and passed when generating hosted verification URLs or invitation links). It controls how the onboarding widget signals completion once verification finishes. Its value is either one of the reserved keywords below, or a real redirect URL.

When verification completes, AiPrise posts the string message AiPriseVerification:Complete to the host app (a separate AiPriseVerification:Success event is also posted). The redirect_uri value determines how and where that message is delivered:

redirect_uriBehavior on completion
iframePosts AiPriseVerification:Complete to the parent window (window.parent) — for embedded iframe integrations. Suppresses the auto-redirect countdown.
popupPosts the message to the opener window (window.opener); the popup stays open.
popup_closePosts the message to the opener window, then closes the popup.
manual_closeNo auto-redirect and no countdown; the continue button is hidden. Your app closes the widget manually.
react_nativePosts the message via window.ReactNativeWebView.postMessage — for React Native WebView integrations. Suppresses the countdown.
flutterPosts the message via window.FlutterWebView.postMessage — for Flutter WebView integrations. Suppresses the countdown.
iosPosts the message via window.webkit.messageHandlers.postMessageListener.postMessage — for native iOS WKWebView.
androidPosts the message via window.Android.postMessage — for native Android WebView.
any other string (a URL)Treated as a real redirect URL: the browser navigates to it, with the session ID appended as a query parameter (verification_session_id for KYC or business_onboarding_session_id for KYB, using ? or & as appropriate).

NOTE: For the browser-facing modes (iframe, flutter, react_native, and manual_close), the 10-second auto-redirect countdown shown on the completion screen is disabled.

redirect_uri can also be passed when generating verification links/invites for related persons — for example, KYB officer/UBO invitations created with create_verification_session_url_for_business_officer. manual_close is a common value in that context, since the host app controls when the invitation flow closes.


Theme Options

Customize the user-facing verification interface to match your brand:

{
  "theme_options": {
    "color_preset": "#1E88E5",
    "font": "Inter",
    "logo": "https://your-domain.com/logo.png"
  }
}

Did this page help you?