Skip to main content

Shufti Pro - KYC & AML Verification

The shufti plugin lets your users verify their identity on Shufti Pro's hosted page, with ID, passport, driving licence, address and selfie or video checks. It is an opt-in alternative to HollaEx's built-in Automatic KYC: it replaces that flow, and you use and pay for your own Shufti Pro account.

What you need​

  • The Enterprise plan on HollaEx Cloud.
  • Your own Shufti Pro account, with a Client ID and Secret Key.
  • No other KYC plugin. Only one KYC plugin can be installed at a time, so remove automatic-kyc (or any other KYC plugin) first.

Set it up​

  1. Get your Shufti Pro credentials. Copy your Client ID and Secret Key from the Shufti Pro Backoffice.

  2. Install the plugin. Go to Operator Controls → Exchange → Plugins, find shufti under Available to install and click Install.

  3. Configure it. Open the plugin with Configure, fill in the settings and save.

    SettingWhat it does
    client_idYour Shufti Pro Client ID. From Shufti Pro. Required.
    secret_keyYour Shufti Pro Secret Key. It also verifies Shufti Pro's webhooks. Secret, from Shufti Pro. Required.
    urlShufti Pro's API address. Leave the default, https://api.shuftipro.com/.
    languageLanguage of the hosted verification page, as a two-letter code. Default EN.
    verification_modeany (default), image_only or video_only.
    supported_documentsComma-separated list of documents users may present, from id_card, passport, driving_license and credit_or_debit_card. Default id_card,passport,driving_license.
  4. Webhook. You don't need to set a webhook in Shufti Pro. The plugin sends the webhook address with each verification. If you need to allowlist it, it is your exchange's API address followed by /plugins/shufti/webhook: https://<your-api-domain>/plugins/shufti/webhook. Your API domain depends on how your exchange is set up, for example api.yourexchange.com or yourexchange.com/api. See Base URLs to check yours, or open a ticket.

  5. Test it. Sign in to your exchange as a test user, open Verification and complete a Shufti Pro check.

What your users see​

On the Verification page, users click a button to start the identity check. They complete it on Shufti Pro's hosted page and are then sent back to your exchange's Verification page, which shows that their documents are being processed. Users get an email when they are approved or rejected, including the reason Shufti Pro gave for a rejection.

How it works​

  • Shufti Pro tells your exchange about each result through the webhook. The plugin checks the webhook's signature with your Secret Key, then asks Shufti Pro's API for the result before changing a user's status.
  • An accepted verification verifies the user. A declined, cancelled, timed-out or deleted request rejects them. Anything still pending or under review leaves the user pending.
  • Once a user is verified, later webhooks don't change their status.
  • Verified users are not moved to a higher tier by this plugin. Use tiers, or a tier upgrade plugin, to decide what verified users can do.
  • Admins can verify or revoke a user's KYC from Operator Controls.

Troubleshooting​

  • Users can't start the check. The plugin needs both client_id and secret_key. Check that they are filled in and correct.
  • Users finish Shufti Pro but stay pending. Check in the Shufti Pro Backoffice whether the request is still under review. You can also verify or reject the user yourself in Operator Controls → Operations → Review Queue → ID Verification.

Need help? Open a ticket from your HollaEx dashboard.