Slack

Connect a Slack workspace and Verifa posts Block Kit cards into the channels you pick: a new review case, an escalation, a declined verification, a sanctions hit. Every card carries an Open in Verifa deep link to the matching record.

The integration is notification-only by design. There are no approve or reject buttons on the cards — compliance decisions happen in the dashboard so every action lands in the audit trail with a named reviewer behind it.

Integrations require a Professional plan or above. All features are unlocked in sandbox regardless of plan, so you can wire up and test the flow before upgrading.

Connect a workspace

  1. In the dashboard, go to Integrations and find the Slack card.
  2. Click Connect. You’ll be sent to Slack to approve the app.
  3. Pick the workspace and the channel Verifa should post to, then Allow.
  4. You land back on the Integrations page with the workspace connected.

One Slack workspace connects per organization, and it covers both environments — sandbox routing is a configuration option rather than a second install (see Sandbox routing).

Reconnecting the same workspace updates the existing connection instead of creating a duplicate.

Private channels

The OAuth install grants access to public channels automatically. To post into a private channel, invite the bot to it first:

/invite @Verifa

Without that, delivery fails with a not_in_channel error and the connection is flagged on the Integrations page.

Events

Pick which events post to Slack from the connection’s Events panel. Eight are available:

EventFires when
case.createdA review case opens and needs a reviewer
case.escalatedA case is escalated to a higher reviewer
case.sla_reminderA case has been sitting open past your reminder interval
session.declinedA verification is declined, with the rejection reason
session.approvedA verification passes
session.requires-reviewA session needs manual review (session-level)
check.matchedAn AML or sanctions screening hit
screening.completedA screening finishes

New connections start subscribed to case.created, case.escalated, case.sla_reminder, session.declined, and check.matched.

session.requires-review is off by default because every review spawns a case — leaving both it and case.created on posts two cards for the same event.

Channel routing

By default everything goes to the channel you chose during install. You can override that per event type — send screening hits to #compliance and the review queue to #ops, for example.

Verifa resolves the target channel in this order:

  1. A per-event routing rule matching the event type. Rules support exact matches (check.matched) and prefix wildcards (case.*).
  2. The sandbox channel, when the event came from sandbox and sandbox routing is enabled.
  3. The default routing channel.
  4. The channel picked during install.

Sandbox routing

Turn on sandbox routing and set a separate channel to keep test traffic out of the channel your team actually watches. With it off, sandbox events post to the same channels as live ones — useful while you’re setting the integration up, noisy afterwards.

PII controls

Slack cards omit personal data by default. Names, dates of birth, document numbers, and addresses are stripped before the message is posted; you get IDs, references, statuses, and reasons.

Shared Slack channels tend to have a much broader audience than your Verifa dashboard, so this default is deliberate. If your compliance posture allows it, you can opt a connection in to including PII from the connection settings — but the deep link back into Verifa is usually the better answer.

Open-case reminders

With case.sla_reminder enabled, Verifa re-pings the channel about cases that are still open. Set the cadence per connection — 1, 4, 8, 12, or 24 hours, defaulting to 24. Each open case triggers one reminder per interval until it’s resolved.

Set the interval to Disabled to stop reminders without unsubscribing from other events.

Slash commands

The app installs a /verifa command, available to anyone in the workspace:

CommandWhat it does
/verifa helpList the available commands
/verifa status <session_id>Show a session’s current status
/verifa lookup <external_ref>Find an identity by your own reference
/verifa queueShow open review cases with links

Responses are ephemeral — only the person who ran the command sees them, so a lookup in a busy channel doesn’t broadcast results to everyone.

Commands resolve to the organization that installed the app in that workspace, and return results for that install’s environment.

When something breaks

Verifa watches delivery failures and reacts based on what went wrong:

  • Configuration problems — the bot was removed from the channel, the channel was archived or deleted, a scope is missing. The connection is flagged with a plain-language fix on the Integrations page, and everyone with the Admin or Developer role gets a notification.
  • Rate limits and transient errors — retried automatically, honoring Slack’s Retry-After. No alert; nothing for you to do.
  • Revoked or invalid credentials — the connection is archived and the org is notified that Slack was disconnected. Reconnect from the Integrations page to resume.

If a workspace admin removes the Verifa app from Slack directly, Verifa receives the uninstall event, archives the connection, and notifies your org — so the dashboard never shows a connection that’s silently dead.

Testing the connection

The connection row has a Test button that posts a sample card to your configured channel. Use it after changing channel routing or re-inviting the bot to confirm the path works end to end.