Skip to main content
To set up webhooks, contact help@frankieone.com with your designated webhook endpoint URL(s) and contact email. You can configure multiple webhook endpoints for different notification types. Ensure your endpoint is accessible via HTTPS.
FrankieOne uses webhooks to send real-time notifications about events in your system, such as a workflow completing or an entity’s risk profile changing. This allows you to build automated, event-driven integrations.

Available Notifications

Workflow Events

Notifications triggered when a workflow execution completes, providing updates on the final status and outcome.

IDV Biometrics Events

Notifications for IDV biometrics events, such as token requests, results retrieval, errors, and expirations.

Entity Events

Notifications related to entity events, such as onboarding, updates, and errors.

Activity Monitoring Events

Notifications from financial transactions (deposits, withdrawals) or activities (registration, login) are checked for fraud, AML, or behavior risks and trigger alerts when operators act on them.

Workflow Events

Notifications related to errors workflow events are sent to your webhook endpoint.

IDV Biometrics Events

These IDV function names are also sent when errors occur during the corresponding operation. Use the functionResult field to distinguish success from error.
Notifications related to errors in IDV biometrics events are sent to your webhook endpoint.

Entity Profile Events


Migrating from V1?Some webhook function names differ from their V1 counterparts and do not follow the same naming conventions. For example, V1’s EntityStatusChange is EntityStatusChanged in V2. Refer to the Migrating from V1 to see the key differences.
Understanding Event StatusesFor a complete mapping of all values and their transition logic, please consult the Event Statuses Reference Guide.
Webhook Notification Model for Repeated Workflow RunsWebhook notifications for workflow completion are sent per workflow execution. In the KYC webhook specification, the WorkflowComplete event is triggered each time a workflow execution finishes successfully. Each payload includes a unique workflowExecutionId representing that specific execution instance.If multiple workflow executions occur for the same entity, a separate webhook notification is generated for each execution. Webhooks are not aggregated across multiple runs.

Transaction and Activity Monitoring Events

FrankieOne sends notifications to keep you informed about transaction and activity monitoring. These notifications are sent to your configured webhook endpoint.

Webhook Structure

You can configure your webhook endpoint to receive all notifications or only specific types, depending on your integration requirements. The notificationType field in the payload identifies the category of each notification.Event-specific fields in the payload are always populated with relevant values based on the event type, ensuring you have the necessary context for processing.
All V2 webhooks share a consistent structure. The payload contains two key fields, notificationType and function, which you should use to determine how to process the event. notificationType: Indicates the nature of the update. For most V2 use cases, this will be EVENT. function: This field specifies the exact event that occurred. The payload for every webhook consists of a base schema of common fields, with additional event-specific fields included depending on the function.
Some webhook function names differ from their V1 counterparts. They also do not follow the same naming conventions. Refer to the tables above for the correct function names.

Endpoint Format

FrankieOne appends the requestID to your configured webhook endpoint:

Base Payload Schema

These fields are present on every webhook notification.

Event-Specific Fields

Depending on the function, additional fields may be present in the payload.

Payload Examples


Handling Notifications

1. Receive the Webhook

Your endpoint should respond with a 200 or 202 HTTP status code to acknowledge receipt.
  • If your endpoint returns a 5xx or 4xx status code (other than 400), the system retries delivery.
  • A 400 response stops retries immediately.

2. Process the Notification

Use the notificationType and function fields to determine the appropriate action. Use functionResult to distinguish successful events from errors.

3. Retrieve Workflow Execution Results

After receiving a WorkflowComplete notification, retrieve the full workflow execution results by calling:
This endpoint is documented in the OpenAPI spec and available in the Postman collection. All path parameters (entityId, serviceName, workflowName, workflowExecutionId) are provided in the webhook payload. Required headers:

Security

HTTPS and IP Whitelisting

All webhook payloads are delivered over HTTPS. FrankieOne supports IP whitelisting so you can restrict incoming requests to known FrankieOne IP addresses. See Outbound IP Addresses for the list of IPs to whitelist.

JWT Authentication (Optional)

You can enable JSON Web Token (JWT) signing for additional payload verification. Contact support@frankieone.com to enable JWT verification for your account. When enabled, the JWT is included in the Authorization header of the webhook request using the Bearer scheme:
The JWT has the following structure: Header:
Body:
Security details:
  • RSA-4096 bit private key encryption.
  • A customer-specific public key is provided for verification.
  • HTTPS transport with secure algorithms.

Retry Mechanism

FrankieOne retries failed webhook deliveries using the following approach:
  1. Initial Retry: Immediately after the first failure.
  2. Exponential Backoff: Subsequent retries occur at increasing intervals.
  3. Maximum Retries: Up to 50 attempts over approximately 24 hours.
If all retries fail, the message is moved to a Dead Letter Queue (DLQ) and the FrankieOne support team is notified. Contact support@frankieone.com to retrieve messages from the DLQ if necessary.

Best Practices

  • Respond quickly. Return a 200 or 202 from your webhook endpoint as fast as possible. Perform any heavy processing asynchronously after acknowledging receipt.
  • Handle duplicates. Due to retries, your endpoint may receive the same notification more than once. Use the requestId field to deduplicate.
  • Check functionResult. The same function name (e.g., WorkflowComplete, TOKEN_REQUESTED) is used for both success and error events. Always check functionResult to determine the outcome.
  • Use the retrieval endpoint. Webhook payloads contain summary information. For full workflow execution details, always call the retrieval endpoint using the identifiers provided in the payload.

Migrating from V1

Key differences between V1 and V2 webhook notifications: