Documentation

EntryVault

EntryVault captures form submissions from many builders and stores them in its own tables, then presents them as one searchable, taggable Kanban board. This page explains how that works so you can reason about — and extend — it.

How capture works

EntryVault ships one adapter per supported form builder. On each request it detects which form plugins are active and registers only the matching adapters — so there’s no overhead for plugins you don’t use. When a form is submitted, the adapter reads the submission through that builder’s own hooks, normalises it into a common shape, and hands it to EntryVault’s sync engine.

Supported builders (all in the free tier): Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Forminator, SureForms, Ninja Forms, Formidable Forms, WS Form, Everest Forms, and Trinity Forms.

The normalised submission

Every adapter converts a builder-specific payload into the same normalised structure before storage: a list of fields (label, key, value, type), a best-guess email and title for the card, and a dedupe identity. EntryVault copies this into its own tables ({$wpdb->prefix}ev_submissions and ev_submission_data) — it never modifies your source plugin’s data, so deleting the original form leaves your EntryVault records intact.

De-duplication

A submission’s identity is the triple (source plugin, source form id, source entry id). Ingest is idempotent on that triple, so re-processing the same submission won’t create a duplicate card. Adapters for builders that store nothing of their own (Contact Form 7 is the classic case) synthesise a unique entry id per submission, so distinct submissions never collapse into one record.

Capture timing (why you don’t lose leads)

Where a builder offers a pre-send hook, the adapter captures there rather than on “mail sent”. For Contact Form 7 that means capturing on wpcf7_before_send_mail — the same hook Flamingo uses — so a submission is recorded even if the notification email fails to send.

Working with submissions

  • Board & list. Every entry lands on a Kanban board and in a Submissions list, filterable by pipeline, stage, source, or date and searchable by name/email.
  • Tags, owners, notes. Colour-coded multi-tags, an owner (any WP user), and timestamped notes per card.
  • CSV import & export. Export everything or a filtered view; import (with preview and dry-run) to backfill from another tool.

The Pro workflow layer

Storing and exporting is free forever. Pro adds a workflow layer on top of the same data: multiple pipelines, drag-through stages, owner round-robin, an automation engine (triggers → conditions → actions), and IMAP reply sync that threads email replies back onto the right card. These are additive — the free capture-and-store behaviour is unchanged whether or not Pro is active.

Extending EntryVault

The most common extension is teaching EntryVault about a new form builder. Because every integration is just one small class implementing a three-method contract, that’s a short job — see Writing an EntryVault adapter.