The review queue: confirming uncertain documents
Every document that flows into Verinode, forwarded email attachments, uploads, connected-tool syncs, gets read by an extraction agent that identifies what the document is, pulls out the structured…
On this page
What the review queue is
Every document that flows into Verinode, forwarded email attachments, uploads, connected-tool syncs, gets read by an extraction agent that identifies what the document is, pulls out the structured facts (amounts, dates, line items), and works out which entity it belongs to: a vendor, a carrier, a TPA, a client, a job, or one of your own internal domains like team, financials, or equipment. Most of the time that classification is confident enough to file automatically. When it isn't, the document lands in the review queue instead of being filed silently in the wrong place.
The review queue is not a sign that something is broken. It is Verinode being honest about where its confidence runs out, rather than guessing and filing a document under the wrong vendor or the wrong job. As an independent data trust, Verinode would rather ask you once than quietly corrupt your Vault with a wrong match.
Verinode never decides where an uncertain document belongs. It reads the document, proposes its best guess, and hands you three ways forward: confirm the guess, edit the entity or category and confirm, or discard the document outright. You make the call every time.
Where to find it
Open Data from the sidebar (/data), which opens the Vault. From there, follow the link to Review queue at /data/review. The review queue page carries its own heading and a short line under it:
Documents Verinode couldn't classify with full confidence. Confirm the best guess in one tap, edit the entity, or discard.
A Back to Vault link at the top returns you to /data.
Note
The Vault surfaces a banner when documents are waiting in the review queue, so you don't have to remember to check. If you land on /data and see nothing pointing you to the review queue, there is nothing waiting.
The list
Each pending document is one row. Reading a row top to bottom:
- Label. The document's subject line if it has one (for example an email subject), or the document type if there's no subject.
- Meta line. Up to four pieces of information joined by middle dots: the document type (for example "Invoice," "Estimate," "Certificate"), the intent Verinode read from it (for example "Payment," "Renewal"), the confidence percentage, and how long ago it was queued ("just now," "14m ago," "3h ago," "2d ago"). Document type and intent are humanized from the raw extraction, so you never see a raw system value like
invoiceorrenewal_notice, only "Invoice" or "Renewal." - Confidence percentage. This is the extraction agent's own confidence in its read of the document, not a score of the document's quality or a judgment about the entity it's attached to. A document can be read with high confidence and still lack a clear entity match, which is exactly the case the queue exists to catch.
- Suggested entity. If Verinode found a plausible match, you'll see "Suggested:" followed by the entity's name and its type in parentheses, for example "Suggested: Rapid Dry Solutions (Vendor)." If there is no plausible match, the row instead reads "No suggestion. Pick an entity manually."
- Review button. Opens the full detail for that one document in the review modal, described below.
The header line and bulk actions
Above the list, a header line tells you the size of the queue and how much of it is confirmable in one motion:
- "N documents waiting" (or "1 document waiting" for a single item).
- When only some of the waiting documents carry a suggestion, an added clause reads "· N have a suggestion." This only appears when it's a partial count, not when every item or no item has a suggestion, so you always know whether "Confirm all suggestions" will clear the whole queue or just part of it.
Two buttons sit to the right of that line:
Discard all. Removes every pending item from the queue in one action. Before it runs, a confirmation prompt appears: "Discard every pending review item? This cannot be undone." Confirming clears the queue; the underlying documents are not filed anywhere, they are simply marked discarded and no longer considered.
Confirm all suggestions. Runs Verinode's best guess for every item that has a suggested entity, filing each one exactly as if you had opened it and hit Confirm individually. It is disabled when nothing in the queue currently has a suggestion. This is built for the case where a batch of documents (say, a CSV import or a folder of forwarded invoices) landed in the queue at once: instead of tapping through each one, you clear the whole batch that Verinode is confident about and are left with only the ones that genuinely need your judgment.
Because a single click could otherwise try to process an unbounded number of documents and run past what a single request should do, "Confirm all suggestions" processes up to 25 items per click. If more than 25 are waiting with a suggestion, the result line adds "more remain, run again," and a second click picks up where the first left off.
After either bulk action runs, a result line appears beneath the header summarizing what happened, built from whichever of these apply:
- "N confirmed", how many documents were filed.
- "N need manual entity pick", how many had no suggestion and were skipped, because there is no safe guess for Verinode to file them under. These still need you to open Review individually.
- "N failed", how many hit an error while being filed. If you see this, open those items individually; the per-item Review flow surfaces more detail and lets you retry.
- "more remain, run again", the 25-item batch cap was hit.
If neither action changed anything, it reads plainly: "Nothing to confirm." Any error from the bulk action itself (a failed fetch, not a per-document failure) appears in Ember Red under the result line.
Reviewing a single document
Tapping Review on any row opens the review modal with the full detail Verinode extracted:
- Document. The subject or document type, followed by the same meta line: document type, intent, confidence percentage.
- What Verinode read. A one-line plain-English summary of the document's content, when the extractor produced one.
- Extracted. A short table of whatever structured facts were pulled from the document: vendor name, total amount (formatted in the document's currency), document date, a date period (shown as a range), and how many line items it contained. Only the fields that actually exist show up here, there's no placeholder row for data the document didn't have.
- Where does this belong? A dropdown listing every section a document can be filed under: your own operational domains (Team, Training & CE, Certifications, Compliance, Safety, Financials, Equipment, Fleet, Facilities, Processes, Recruiting, Reputation, and a catch-all General / Other for anything that doesn't fit), plus the four counterparty kinds (A vendor, A carrier, A TPA, A client). It defaults to Verinode's own best guess. A short hint line under the dropdown explains what belongs in the selected section, for example Certifications reads "IICRC, WRT, licenses, who holds what, expiry."
- Which vendor / carrier / TPA / client? Shown only when you've picked one of the four counterparty categories. A search-or-create field: search your existing records, or type a new name to create one on confirm. If Verinode had a suggested match for this category, a note under the field reads "Verinode's best guess was [name]. Pick it again or choose a different record." so you can accept it with one more click or override it entirely. When you create a new entity here, a note confirms it will be created when you confirm.
- What kind of document? Appears only when the chosen section covers more than one document type (Team, for instance, covers roster, payroll summary, and performance review). Lets you pick the specific type within that section.
- Completion fields. When the chosen document type has structured fields Verinode expects (amounts, dates, names), a short form pre-filled with whatever the extractor already read appears so you can fill in anything missing before confirming.
- File as-is. For a section with nothing further to fill in, the modal simply reads: "Confirm to file this under [section]. Nothing else to add."
At the bottom, three actions: Cancel (closes without changing anything), Discard (removes just this one document from the queue, non-reversible), and Confirm (files the document under the entity and section you've set). Confirm stays disabled until you've picked a category, and, for a counterparty category, an entity with a name.
Bulk imports
Some ingested files aren't a single document tied to one counterparty, they're a whole book: a job export, a client list, or a vendor list bundled in one file. When the review modal detects one of these, it replaces the single-entity picker with a summary: how many rows the import contains, and, for a job export, how many distinct counterparties (carriers, TPAs, or vendors) span those rows. Confirming files every row at once, each one keeping its own carrier, TPA, or vendor assignment; discarding a bulk import warns you with the row count first, since it throws away every row that hasn't been saved yet.
Empty state
When there is nothing waiting, the queue reads simply:
No documents waiting for review.
That's the queue working as intended: everything ingested recently was confident enough to file on its own, or has already been cleared.
What happens after you confirm
Confirming, whether from the modal or from "Confirm all suggestions," runs the same save pipeline Verinode uses for every automatically filed document. The entity you assigned is recorded, and if you corrected Verinode's own guess (picked a different entity or category than what it suggested), that correction is stored and used to sharpen future extractions from the same source, so the same vendor or carrier is more likely to classify correctly next time. Confirming a suggestion Verinode already had right, without changing anything, is not treated as a correction, it's simply filed. Either way, the document leaves the review queue and shows up wherever you sent it: on the vendor, carrier, TPA, client, or job it belongs to, or under the internal section you chose.
Best-practice example
Say a supplier invoice comes in from an email address you haven't used before. Verinode reads the document with high confidence (it recognizes an invoice, pulls the total, the date, and a vendor name), but that vendor name doesn't match anything in your Vault yet, so it queues the document instead of guessing which existing vendor it belongs to, or worse, silently creating a duplicate. You open Review, see the extracted total and date sitting correctly on the right, and use the vendor search field: either you find the vendor already on file under a slightly different name and pick it (Verinode remembers that alias for next time), or you confirm it's genuinely new and let Confirm create the vendor. Either way, the review queue did its job: one extra tap instead of a silently misfiled invoice.
Related reading
Data sources
- 1.Documents you forward, upload, or connect. Your business.