ParsePilot

Section: CRM
URL: /admin/parsepilot
Page title: ParsePilot

Overview

ParsePilot is an AI-powered document parsing module that uses the OpenAI API to extract structured data from uploaded files — PDFs and images — and map the extracted values into CRMConnect records automatically. Staff upload a scanned invoice, receipt, or similar document through a modal interface; ParsePilot sends the file to OpenAI, receives the parsed fields, and pre-fills the relevant form so the record can be reviewed and saved without manual data entry.

The module supports files up to 500 MB, accepts PDF and common image formats (PNG, JPG, JPEG, WebP, TIFF), and can be restricted to specific pages or document types via the settings panel. An optional confidence threshold filters out low-confidence field extractions before they reach the user.

Business value

Manually keying data from supplier invoices, receipts, or other incoming documents into the CRM is slow and error-prone. ParsePilot eliminates most of that work by converting an uploaded scan into a pre-populated form in seconds, letting staff focus on reviewing and approving rather than typing.

Typical use cases:

Accessing this module

/admin/parsepilot/settings — the settings page is the primary entry point (the index route returns 404). The modal interface is embedded on the pages where parsing is enabled and is not accessed directly by URL.

Only administrators can access the settings page and save configuration. Staff with the parsepilot create permission can trigger document parsing from the modal.

Key concepts

Concept Description
OpenAI API key The secret key used to authenticate calls to the OpenAI service for document parsing.
Document type The category of document being parsed (e.g., invoice). Determines which fields the AI attempts to extract.
Confidence threshold A value between 0.0 and 1.0. Extracted fields below this score are discarded before presentation to the user.
Enabled pages A comma-separated list of CRMConnect page identifiers where the ParsePilot modal is made available.
Languages Hint(s) passed to the AI indicating the expected language(s) of the uploaded documents, improving extraction accuracy.
Parse modal The in-page overlay triggered on enabled pages that lets staff upload a file and review extracted fields.
Tax lookup An internal API call (/admin/parsepilot/find_tax_by_rate) that matches a parsed tax rate to an existing tax record in the database.
Supported formats PDF and image files (PNG, JPG, JPEG, WebP, TIFF, and other MIME types matching image/*).
Max upload size 500 MB per file.

Common actions

  1. Configure the OpenAI key — Go to /admin/parsepilot/settings, enter the OpenAI API key, set the expected document language(s), and save.
  2. Set a confidence threshold — In settings, enter a decimal value between 0 (accept all) and 1 (only perfectly confident extractions). Values outside this range are clamped automatically.
  3. Enable parsing on specific pages — In settings, select or enter the CRMConnect page identifiers where the ParsePilot modal should appear, then save.
  4. Parse a document — On an enabled page (e.g., new invoice), click the ParsePilot icon or button to open the modal, upload a PDF or image, and wait for the AI to return extracted fields. Review the pre-filled values, make corrections if needed, then save the record normally.
  5. Review low-confidence fields — Fields that fall below the configured confidence threshold are not pre-filled; staff must enter them manually, which is a deliberate quality control step.
  6. Match a parsed tax rate — ParsePilot automatically calls the tax lookup endpoint to find a matching VAT rate in CRMConnect and link it to the parsed line items; if no match is found, a not-found error is shown and the tax field must be selected manually.

Source: crm-connect-main/app/modules/parsepilot