Facilities taxonomy: types, ownership, statuses, and categories
Every facility record in Verinode is built from a small set of fixed, closed lists: the kind of facility it is, how you hold it, what state it's in, what compliance obligations look like, what a co…
On this page
What this reference is for
Every facility record in Verinode is built from a small set of fixed, closed lists: the kind of facility it is, how you hold it, what state it's in, what compliance obligations look like, what a consumable is stocked under, and what a recurring cost is filed as. Behind the scenes each of these is stored as a plain lowercase token (truck_hub, under_renovation, hvac_service), because a fixed list is what lets Verinode read a lease, a compliance event, or a cost line the same way whether it came from you typing it into a form or from a document the Co-COO parsed. What you see on screen is always the humanized label, never the raw token. This article is the single place all six lists live together, so you know exactly what a value on your Facilities page means and where it can come from.
This is a reference, not a how-to. For the walkthroughs on using each part of the section, see Facilities: your operator footprint at a glance, Adding a facility, Leases: rent, terms, and renewal deadlines, Compliance: inspections, COIs, and postings on a calendar, Consumables: PPE and supply inventory with reorder thresholds, and Recurring costs: utilities, taxes, and the all-in monthly roll-up.
Where you'll run into this taxonomy
Open Facilities from the sidebar at /facilities. Every facility you add carries these fields from the moment it's created:
- The + Add Facility button in the header opens a form with Type and Ownership as required selects.
- Clicking any facility tile opens its profile: a centered card with a gradient header banded by the facility's type, a four-box stats strip (Sqft, Ownership, Status, and a fourth slot that flips between Notice due, Monthly rent, or Country depending on what's on file), and five tabs, Overview, Lease, Compliance, Consumables, Costs.
- The Overview tab's Identification section shows Facility type, Ownership, and Status as read-only fields; clicking Edit turns Type and Ownership back into the same selects used at creation.
- The Compliance and Consumables and Costs tabs each carry their own category taxonomy, described below.
Nothing here is inferred or guessed silently. Every value is either something you picked from a list when you added or edited a record, or something Verinode extracted from a lease or invoice document and normalized against the same list before it reached the screen.
Facility type
Facility type answers "what kind of location is this." It drives the gradient color on the profile header (so an office, a warehouse, and a yard read differently at a glance) and it's the label shown wherever a facility appears in a list.
| Stored as | What you see | |---|---| | office | Office | | warehouse | Warehouse | | yard | Equipment Yard | | truck_hub | Truck Hub | | storage_unit | Storage Unit | | branch | Branch | | mixed | Mixed-use | | other | (your own label, or "Other" if you leave it blank) |
"Other" is the one type where you're not stuck with the fixed list. Pick it in the Type select and a second field appears, "What kind of facility," where you type your own description (the field placeholder suggests examples like "Training facility" or "Document recovery vault"). Whatever you type there becomes the label everywhere that facility's type would otherwise show, replacing the word "Other." Leave it blank and the type is required to be filled before you can save, so an empty custom label can't slip through.
Ownership
Ownership answers "how do you hold this facility." It shows up on the profile's stats strip and drives the Active Footprint hero's ownership pill on the Facilities home page (an "N Owned" or "N Leased" pill, whichever group is larger across your active facilities).
| Stored as | What you see | |---|---| | owned | Owned | | leased | Leased | | rented | Rented | | subleased | Subleased |
Ownership matters beyond the label: it's what the Lease tab reads to decide its empty state. Set a facility's ownership to Owned and the Lease tab tells you plainly, "This facility is owned, a lease record isn't needed unless you carry one (e.g. financed facility with a master agreement)." Any other ownership value gets the invitational empty state instead: "No active lease yet. Add one to track the term, rent, notice deadline, and renewal options." Leased and Rented are both counted together as "Leased / Rented" in the Facilities home hero, since both mean you're paying rent to someone else for the space.
Status
Status is the facility's lifecycle state. It's a separate field from ownership: a facility can be Owned and Inactive, or Leased and Active, independently.
| Stored as | What you see | |---|---| | active | Active | | inactive | Inactive | | under_renovation | Under Renovation | | exiting | Exiting | | exited | Exited |
Only facilities with status Active count toward the Facilities home page's headline numbers: the Active Footprint count, total square footage, and the Owned / Leased-Rented split. Everything that isn't Active gets bucketed together as "archived or exiting" in the hero's sub-line. Status moves to Exiting or Exited through the Exit facility flow (the red-text button in the profile's footer), not through a plain edit: clicking it opens a confirmation modal that asks for an exit date and shows you the cascade before you confirm (open equipment released back to the pool, an active lease marked terminated, active recurring cost lines end-dated on the exit date, open compliance events waived, and a move-out inspection auto-scheduled 14 days before the exit date). Nothing is deleted; the modal says so directly: "This decommissions the property and cascades through linked records. The data isn't deleted, everything stays in history for audit."
Note
Exit facility is one-directional in the UI: there's no "un-exit" button. If you decommission a facility by mistake, tell IQ in chat and it can walk the correction with you.
Compliance event type
Compliance events are the recurring obligations tied to a facility: inspections, license renewals, insurance certificates, postings. Each event has both a type (what kind of obligation) and a separate status (where it stands right now).
Event type, set from the Type select in the Add/Edit compliance event form:
| Stored as | What you see | Default recurrence hint | |---|---|---| | fire_inspection | Fire Inspection | 12 months | | osha_posting | OSHA Posting | 12 months | | business_license | Business License | 12 months | | coi | Certificate of Insurance | 12 months | | elevator_inspection | Elevator Inspection | 12 months | | fire_extinguisher_service | Fire Extinguisher Service | 12 months | | hvac_service | HVAC Service | 6 months | | pest_control | Pest Control | 3 months | | sprinkler_inspection | Sprinkler Inspection | 12 months | | move_out_inspection | Move-out Inspection | none (one-off, auto-scheduled by the exit-facility flow) | | other | (your own custom label) | none |
The recurrence hint isn't a hard rule, it's a starting number Verinode fills into the "Recurrence (months)" field the moment you pick a type, so you don't have to remember that fire inspections are typically annual and pest control is typically quarterly. Change it to whatever your actual cadence is and Verinode keeps your number; it only auto-fills when that field is still empty. Picking Other opens a required "Custom label" text field (placeholder example: "Backflow preventer test"); the form blocks saving until you fill it in, since an unlabeled "Other" event would read as a blank line on the compliance calendar.
Event status is a separate field, not operator-set directly, it's computed from the dates on the event plus one manual action:
| Stored as | What you see | How it gets there | |---|---|---| | scheduled | (shown grouped under "Upcoming") | Default state for an event with a future next_due_on | | overdue | (shown grouped under "Overdue", in red) | next_due_on has passed and the event hasn't been marked done | | completed | (shown grouped under "Completed") | You click Mark done on a scheduled or overdue event | | waived | (shown grouped under "Waived") | The exit-facility cascade waives any open events when you decommission the facility |
The Compliance tab groups events into these four buckets, Overdue first, then Upcoming, then Completed, then Waived, so what needs attention right now is always at the top. The Compliance tab in the profile also carries a badge on its tab button: a red count when anything is overdue, or "Add" when nothing has been logged yet. The Facilities home page separately tracks a Compliance On-Time rate wherever your process cadence data supports it, that figure is not a raw count, it's the share of compliance events historically closed on or before their due date, described further in Compliance: inspections, COIs, and postings on a calendar.
Consumable category
Consumables are the stockable supplies kept at a facility: PPE, drying agents, janitorial and office supplies, and anything else you draw down and reorder. Category is optional on a consumable, it's there to group the inventory list, not to gate anything.
| Stored as | What you see | |---|---| | ppe | PPE | | drying | Drying | | antimicrobial | Antimicrobial | | janitorial | Janitorial | | office_supplies | Office Supplies | | safety | Safety | | other | Other |
A consumable's row shows its category as one segment of its meta line alongside quantity on hand and the reorder threshold, for example "12 boxes · reorder ≤ 5 · PPE." The category doesn't drive the reorder logic itself, that's purely quantity on hand versus reorder threshold, described in Consumables: PPE and supply inventory with reorder thresholds.
Recurring cost type
Recurring costs are the monthly bills that sit on top of rent: utilities, taxes, insurance, and the like. Cost type has ten values, one of which (sublet income) is the sole negative-value case.
| Stored as | What you see | |---|---| | utilities | Utilities | | internet | Internet | | security_monitoring | Security Monitoring | | janitorial | Janitorial | | landscaping | Landscaping | | trash_removal | Trash Removal | | property_tax | Property Tax | | property_insurance | Property Insurance | | sublet_income | Sublet Income | | other | Other |
Every cost type except Sublet Income is entered and stored as a positive monthly amount. Sublet Income is the one type that carries a negative amount, deliberately, so that when the Costs tab rolls every active line up into the "All-in monthly cost" figure, subletting part of a facility nets against what it costs you rather than sitting as a separate, disconnected number. A Sublet Income line is visually flagged too: its row carries a small "Income" tag and its dollar amount renders in the same green used for Expand-signal figures elsewhere in the product, instead of the plain foreground color every other cost type uses. The roll-up header spells this out directly when it applies: "Rent $X + recurring $Y (net of sublet income)."
Two enums you'll meet inside a facility's Lease tab
These aren't part of the six enums this article is a reference for, but they show up constantly once a facility has a lease, so they're worth knowing at a glance. The full walkthrough lives in Leases: rent, terms, and renewal deadlines.
Lease status:
| Stored as | What you see | |---|---| | active | Active | | expired | Expired | | terminated | Terminated | | superseded | Superseded |
Lease escalation type, the pattern the rent increases by over the term:
| Stored as | What you see | |---|---| | none | None | | fixed_pct | Fixed %, shown as "X% / yr" | | cpi | CPI-indexed | | stepped | Stepped, shown as a dollar step amount | | other | Custom |
Best-practice example
Say you're setting up a second location. You add it as Type: Warehouse, Ownership: Leased. The Lease tab immediately shows the invitational empty state rather than the "owned, no lease needed" message, so you know to add the lease terms. Once you do, you set Escalation type to Fixed % at 3.5% a year, and the Lease tab renders "3.5% / yr" instead of a raw decimal. A few weeks later you add a Fire Inspection compliance event; Verinode pre-fills the recurrence at 12 months, which you leave as is, and it lands in the Upcoming group until the due date passes, at which point it moves itself into Overdue and the Compliance tab badge turns red. When you eventually sublet the mezzanine level to another business, you file it as a Recurring Cost with type Sublet Income and a negative monthly amount; the all-in monthly cost on the Costs tab drops to reflect it, tagged "(net of sublet income)" so it's clear where the offset came from.
Data sources
Data sources
- 1.Your facility, lease, compliance, consumable, and recurring-cost records. Your business.