Skip to content

Document Parser Fields ​

When Asha at Acme Diagnostics sets up a workflow to process incoming lab reports, she picks the Medical Records document type and immediately knows exactly which fields come back — abnormal_flag, test_name, reference ranges — without reading a line of code. That predictability is what the Documented mode gives you.

This page lists every field, table column, and clause category that each built-in document type returns. Read it before you wire up the Extract Document tool or the Document Processing node, so you know what to expect on the other side.

Mode reminder. This page covers How to extract → Documented fields (our domain schema) only — you pick a document type and Perfox extracts a fixed, typed set of fields. If you need a different shape, choose AI decides (comprehensive) (extracts everything it finds) or Your own fields (you define the field list yourself).

The same field sets are what a Knowledge Base folder extracts when you apply the matching use case — see Extraction & Understanding.

Each document type returns some combination of:

  • Fields — one value per document (the header or summary values).
  • Table columns — for documents that contain a repeating table, one row per line item (invoice lines, lab observations, financial statement lines…), each row carrying these columns.
  • Clause categories — for contracts and audit reports, every clause is classified into one of the listed categories.

The Type column shows the value's data type: string, number, date, boolean, or enum with its allowed values. A field is only filled when the document actually states it — anything not present is left out, never guessed.


Resume / ATS Screening ​

Fields

FieldTypeDescription
candidate_namestringThe candidate's full name as written on the resume.
years_experiencenumberTotal years of professional work experience as a single number; estimated from the work history if not explicitly stated.
current_titlestringThe most recent / current job title.
skillsstringA comma-separated list of the candidate's key technical and professional skills.
highest_degreeenum (high_school / diploma / bachelors / masters / doctorate / other)The highest completed education level.
work_authorizedbooleanTrue only if the resume indicates the candidate is authorized to work in the target country without sponsorship.
locationstringThe candidate's current city / location.

Fields

FieldTypeDescription
party_namesstringA comma-separated list of the contracting parties / entities named in the agreement.
contract_typeenum (msa / nda / sow / dpa / license / services / employment / lease / other)The kind of agreement this document is.
governing_lawstringThe governing law / jurisdiction the agreement is subject to (e.g. "Delaware", "India", "England & Wales").
effective_datedateThe date the agreement takes effect / is signed.
expiry_datedateThe date the agreement expires or its current term ends; omit if perpetual / not stated.
auto_renewalbooleanTrue only if the agreement automatically renews unless a party gives notice.
renewal_notice_daysnumberThe number of days of advance notice required to prevent auto-renewal or to terminate, as a single number.
contract_valuenumberThe total contract value / fees as a single number in the contract currency; omit if not stated.
liability_capstringThe limitation-of-liability cap as written (an amount, "unlimited", or "12 months fees"); omit if not present.

Clause categories: limitation_of_liability, indemnification, termination, governing_law, confidentiality, auto_renewal, assignment, dispute_resolution, payment_terms, intellectual_property, warranty, data_protection, force_majeure, definition, other


Compliance / Audit ​

Fields

FieldTypeDescription
finding_idstringThe finding's identifier / reference as written (e.g. 'F-2024-017', 'CTRL-6.1.2-01'); omit if the finding is unnumbered.
severityenum (critical / high / medium / low / informational)The finding's severity. Map the source's own label to the closest level: treat CVSS 9.0–10 / 'P1' / 'Sev-1' / 'Critical' as critical; CVSS 7.0–8.9 / 'P2' / 'High' as high; 'Medium' / 'Moderate' as medium; 'Low' / 'Minor' as low; 'Informational' / 'Info' / 'Observation' as informational.
statusenum (open / in_progress / remediated / risk_accepted / closed)The current remediation status of the finding.
control_refstringThe control / requirement reference the finding maps to as written (e.g. 'CC6.1', 'A.9.2.3', 'AC-2'); omit if none.
frameworkenum (soc2 / iso27001 / nist_csf / nist_800_53 / pci_dss / hipaa / other)The compliance framework the finding is assessed under.
opened_atdateThe date the finding was raised / identified.
due_datedateThe remediation due date / SLA deadline for the finding; omit if none is stated.

Clause categories: control_objective, control_description, finding, remediation_action, evidence, scope, exception, risk_statement, management_response, other


Invoice / Accounts Payable ​

Fields

FieldTypeDescription
doc_typeenum (invoice / purchase_order / goods_receipt / credit_memo / other)The kind of AP document this is.
invoice_nostringThe invoice number / ID as written; omit if this is not an invoice.
po_nostringThe purchase-order number this document references or is (e.g. "PO-9912").
receipt_nostringThe goods-receipt / delivery-note number, if this is a receipt or references one.
vendorstringThe supplier / vendor name.
document_datedateThe document's issue date (invoice date, PO date, or receipt date).
due_datedateThe payment due date; omit if not stated.
total_amountnumberThe document grand total as a single number (no currency symbol).
tax_amountnumberThe total tax / VAT / GST amount as a single number.
currencystringThe 3-letter currency code (e.g. USD, INR, EUR).
statusenum (unpaid / partially_paid / paid / disputed / unknown)The payment status of the invoice.
classenum (po_backed / non_po / credit_memo / duplicate_suspect)Classification for routing.

Table columns (one row per item)

ColumnTypeDescription
descriptionstringThe line-item description / SKU as written.
qtynumberThe quantity for this line as a single number.
unit_pricenumberThe unit price for this line as a single number (no currency symbol).
extended_amountnumberThe line total / extended amount (qty × unit price) as a single number.
taxnumberThe tax amount on this line as a single number; omit if none.
po_line_refstringThe PO line reference this line maps to, if shown.

Worked example — an invoice arrives.

Acme Store's finance workflow receives a PDF invoice from a vendor. Asha has set the Document Processing node to the Invoice / Accounts Payable type.

  • Setup: the node is wired to an email trigger that fires when a new invoice lands in the AP inbox.
  • Action: Perfox parses the PDF and returns doc_type: "invoice", vendor: "Office Supplies Co.", total_amount: 14250, currency: "INR", status: "unpaid", and a table row for each line item with its qty, unit_price, and extended_amount.
  • Result: a downstream step automatically logs the invoice in Acme Store's approval queue, including the line-item breakdown, without anyone re-keying numbers.
  • What just happened: Perfox read the typed field list for the invoice type, pulled only those exact fields from the document, and passed them forward as structured data — no guessing, no hallucinated totals.

Financial Statements ​

Fields

FieldTypeDescription
reporting_entitystringThe company / reporting entity named in the statement header.
periodstringThe fiscal period this statement covers, normalised as "FY2024" for a full year or "Q3-2024" for a quarter.
period_end_datedateThe last day of the fiscal period, as YYYY-MM-DD (e.g. FY2024 → 2024-12-31, Q3-2024 → 2024-09-30). Used to order metrics over time.
fiscal_yearnumberThe fiscal year as a single 4-digit number (e.g. 2024).
statement_typeenum (income_statement / balance_sheet / cash_flow / other)Which financial statement this document is.
currencystringThe 3-letter reporting currency code (e.g. USD, INR, EUR).
revenuenumberTotal revenue / net sales as a single number in the reporting units; omit if not an income statement.
cogsnumberCost of goods sold / cost of revenue as a single number; omit if not present.
gross_profitnumberGross profit as a single number; omit if not present.
operating_incomenumberOperating income / operating profit as a single number; omit if not present.
net_incomenumberNet income / net profit (bottom line) as a single number; omit if not present.

Table columns (one row per item)

ColumnTypeDescription
line_labelstringThe line-item label exactly as written (e.g. "Revenue", "Cost of revenue", "Operating income", "Interest expense").
amountnumberThe line-item amount for this period as a single number in the reporting units.

Insurance Claims Adjudication ​

Fields

FieldTypeDescription
doc_kindenum (claim / policy / other)Whether this document is a claim or a policy.
claim_numberstringThe claim number / ID as written (e.g. "CLM-2024-0088"); omit if this is a policy document.
policy_numberstringThe policy number this claim is filed under, or the policy's own number.
claimantstringThe name of the claimant / policyholder.
date_of_lossdateThe date the loss / incident occurred.
claim_amountnumberThe claimed amount as a single number (no currency symbol); omit if not a claim.
perilenum (fire / flood / theft / collision / liability / medical / water_damage / wind / other)The peril / cause of loss.
statusenum (open / under_review / approved / denied / paid / closed)The current lifecycle status of the claim.
decision_classenum (approve_candidate / deny_candidate / needs_review / not_a_claim)A triage classification based only on what the document states — a hint for routing, not the final decision.

RFP Response ​

Fields

FieldTypeDescription
atom_typeenum (requirement / response_section / other)Whether this row is a requirement from the solicitation or a response section from a proposal.
requirement_idstringThe requirement number / reference as written (e.g. "3.2.1"); omit for a response section.
requirement_textstringThe verbatim text of the requirement (the shall / must / will statement); omit for a response section.
obligationenum (shall / must / will / should / other)The obligation strength of the requirement.
section_refstringThe proposal section reference this row is (e.g. "Section 4.1"); omit for a requirement.
win_themestringFor a response section: the win theme / key differentiator it advances; omit for a requirement.

Medical Records ​

Fields

FieldTypeDescription
doc_typeenum (lab_report / encounter_note / discharge_summary / imaging / pathology / other)The kind of clinical document.
panel_typestringThe panel / test family as titled (e.g. "Complete Blood Count", "Liver Function Test", "Lipid Profile"); omit for non-lab documents.
patient_namestringThe patient's full name exactly as printed.
patient_idstringThe patient ID / MRN / registration or lab number.
age_sexstringAge and sex as printed (e.g. "46 Years / Male").
referring_providerstringThe referring / ordering physician, if stated.
report_nostringThe report / accession number.
specimenstringThe specimen / sample type (e.g. Serum, Whole Blood, Urine).
collected_atstringThe sample collection date/time as printed.
reported_atstringThe report / verified date/time as printed.
interpretationstringThe overall impression / interpretation / remarks stated on the report.
abnormal_flagbooleanTrue if any result is flagged abnormal / out of the reference range.

Table columns (one row per item)

ColumnTypeDescription
test_namestringThe test / parameter name as written.
resultstringThe result value exactly as written (keep the unit out of this field).
unitstringThe unit of measurement (e.g. mg/dL, U/L, %).
reference_rangestringThe reference / biological range printed for this test.
flagstringThe abnormality flag if stated (Normal, High, Low, Critical, Positive).

Research Papers ​

Fields

FieldTypeDescription
titlestringThe title of the paper.
authorsstringThe authors, comma-separated, as written (e.g. "Karpukhin, Oguz, Min").
yearnumberThe publication year as a number (e.g. 2020).
venuestringThe publication venue — conference, journal, or preprint server (e.g. "NeurIPS", "arXiv").
doc_typeenum (paper / survey / preprint)The kind of research document.
primary_methodstringThe core method, model, or technique the paper proposes or studies, as a short phrase (e.g. "dense passage retrieval", "cross-encoder re-ranking").
summarystringA 2–3 sentence summary of the paper's contribution and key findings.
sections_tocstringThe paper's top-level section headings as a newline-separated outline (e.g. "1. Introduction\n2. Method\n3. Experiments\n4. Results").

Product Catalog ​

Fields

FieldTypeDescription
brandstringThe brand, manufacturer, seller, or label (e.g. Nike, Microsoft, Castrol, Standard Fireworks, Jeep).
product_namestringThe product name or title (e.g. "Air Max 90", "Office 365 Business", "GTX 20W-50 Engine Oil", "Flower Pot", "Compass").
variantstringThe specific variant / SKU / size / colour / pack / edition / plan tier / trim as written (e.g. "UK 9 / Black", "Annual", "1 litre", "Box of 10", "Sport 2WD Diesel Manual").
categorystringThe product category or type (e.g. "running shoes", "productivity software", "engine oil", "sparklers", "SUV").
pricenumberThe price shown for this item, as a plain number — drop the currency symbol, commas and any per-unit words (e.g. "Rs. 8,995" → 8995, "$29/mo" → 29, "Rs. 22.72 Lakh" → 2272000). Capture the price whenever an amount appears on the item's line; omit only when the line states no price at all (e.g. "price on request", "contact sales").
unitstringThe pricing unit when the price is per-unit (e.g. "per litre", "per kg", "per piece", "per month", "per box"). Omit for a flat per-item price.
key_featuresstringA short comma-separated list of notable attributes / specs (e.g. "waterproof, mesh upper", "unlimited seats, 1TB storage", "synthetic, API SN", "sunroof, ADAS, 4x4").

You can now read this reference alongside your workflow canvas ​

You know exactly which fields each document type returns before you wire anything up. When you're ready to put it to use: