JR&CO
Warehouse Inventory Help Beta
PITCH operational inventory — user guide

Where do I start? Beta

PITCH is the operational inventory system of record. ComputerEase (CE) is a monthly financial export consumer only — not day-to-day pulls, POs, or delivery. Your starting page depends on your role.

PMValidate & confirm pull
WarehousePick, wrap, stage
FieldBOL & photos
DeliverPO lifecycle
CE exportMonthly financial

Where to start (by role)

Follow the card that matches your job today. Every flow reuses existing PITCH surfaces.

Project Manager

Start in Job Set Up (Materials tab) or Project DetailMaterials Order. Import the estimate materials list (Analyze Estimates), then use Materials Pull Request: Validate → Confirm.

Warehouse

Open warehouse POs from Job Set Up Materials tab (PO pills) or Warehouse Inventory. Pull and wrap crates; photograph with job code (wrapped_crate tag). Inventory decrements at pull/staging, not delivery.

Field crew

Use JRCO Field (mobile). Tag photos: bill_of_lading at supplier delivery, material_return for returns, asset_hours for meter photos.

Procurement / ops

Warehouse Inventory — aging report, open supplier claims, monthly CE TSV export. Escalations land in Work Queue (materials category).

Prerequisite: Job must have a material plan import (CE Material Report workbook under Estimate Exports → Analyze Estimates). Without it, the pull request list is empty.

PM materials pull request

Phase 1 — confirm before warehouse work begins.

1
Ensure material plan is imported (Job Set Up → Materials → Analyze Estimates or re-run material import).
2
Open Materials Pull Request panel (top of Materials Order tab on Project Detail or Job Set Up Materials).
3
Click Validate availability. Each line shows green (in stock at nearest hub/forward site) or red (short — must order).
4
Review staging capacity warning if the forward site is near max crates (~90%).
5
Click Confirm pull request (control gate). In-stock lines → warehouse PO; shorts → supplier PO(s).
Only Confirm pull request triggers warehouse workflow. Validating alone does not create POs.

Warehouse PO lifecycle

Warehouse POs use po_kind = warehouse. Status path: Pending Pick → Ready for Shipment → Delivered.

1
Pick materials from regional hub inventory (nearest location to job, or active forward site if configured).
2
Wrap crate with visible job code. Photograph in Field app with tag wrapped_crate.
3
System writes inventory pull transaction and reserves qty — decrement at staging, not at truck delivery.
4
PO moves to Ready for Shipment. PM receives Work Queue escalation with snooze-to-date.
5
On snooze due, designated delivery resource is alerted (configurable per branch in warehouse config).
6
After delivery, mark PO Delivered.

Supplier PO & BOL delivery

Supplier POs use the existing materials PO + BOL scan pipeline.

1
Supplier PO created automatically from pull confirm shorts, or manually from Job Set Up Materials (Create PO).
2
At delivery, field crew scans bill of lading in Field app (bill_of_lading tag). Haiku OCR extracts lines; optional PM confirm in expense queue.
3
Match outcomes: Full → receipt txn + Delivered; Partial → PO family split (1A→1B→1C child PO for balance); Short/damage → auto supplier claim to procurement.
4
Substitution on BOL → PM sets reviewed_substitution (ack record, no formal sign-off).

Critical-path POs (delivery within 15 days): when all critical POs for a job are Delivered, job is flagged Materials Ready to Start Work and PM is escalated.

Field / mobile photo capture

Reuse the existing job-log-photos pipeline — do not use a separate camera app.

Photo typeMobile tagWhen
Wrapped crate (job code visible)wrapped_crateWarehouse after pull/staging
Bill of ladingbill_of_ladingSupplier truck delivery
Material return cratematerial_returnSuperintendent return to job
Asset hours meterasset_hoursBefore restocking tools/equipment

Open JRCO Field → select job → Photos → choose tag before upload.

Returns & asset metering

1
Superintendent photographs returned crate → material_return on project.
2
Consumable: warehouse inspects → Restockable yes/no → return_restock or scrap txn.
3
Asset: photograph hours meter → OCR + human confirm → tbl_asset_usage → then restock/scrap same as consumable.
Open (accounting): scrap cost allocation and supplier credit on restock — confirm with Lucas before go-live reporting.

Ops console & CE financial export

admin/warehouse-inventory.html

CE catalog mirror (ce_inventory_items) syncs weekly via ce-sync-inventory-items for dropdown reference — not operational SoR.

All surfaces & links

SurfaceURLPurpose
Job Set Up (Materials)demo-pm-variance.htmlMaterial plan, PO create, pull request
Project Detailproject-detail.htmlMaterials Order tab, Job History calendar
JRCO Field (mobile)project-mobile-summary.htmlBOL, wrapped crate, returns, meter photos
Warehouse opswarehouse-inventory.htmlAging, claims, CE export
Work Queueescalation-work-queue.htmlPull-ready escalations, materials tickets
Gantt / Job Setup helpgantt-help.htmlEstimate import & legacy PO section

Deploy & support

Edge functions (ydgez): materials-validate, warehouse-po-action, warehouse-inventory-action, ce-inventory-export, ce-sync-inventory-items.

Deploy script: scripts/deploy-warehouse-inventory.ps1

supabase functions deploy materials-validate warehouse-po-action warehouse-inventory-action ce-inventory-export ce-sync-inventory-items --project-ref ydgeztourzrvuqkcxjgp

Database migrations live under supabase/migrations/2026061900*. If db push fails due to migration history drift, apply warehouse SQL files in the Supabase SQL Editor (ydgez), then 20260619000400 on wzoby only.

Permissions (RBAC): warehouse.materials.validate, warehouse.materials.confirm_pull, warehouse.pull.execute, warehouse.delivery.record, warehouse.return.*, warehouse.ce.export. Seeded in migration 20260619000200.