Built for the way each license actually runs.
Generic compliance tools treat Metrc as one API. It isn't โ each CA license class operates a distinct Metrc surface with distinct daily rituals. Below: every workflow we ship today, mapped to the v2 endpoint behind it.
Cultivator
From mother room to wholesale dock. The Metrc plant lifecycle is graph-shaped โ plants split, merge, get re-tagged, get destroyed โ and the Metrc API surface reflects that. We give you the workflow that Metrc's own UI doesn't.
plant.plantingplant.move / plant.growth_phaseplant.tagplant.strainplant.harvest / plant.wasteplant.manicureplant.additives.usingtemplateManufacturer
Processing jobs, item SKUs, finished packages. We model the input โ output flow Metrc requires and surface the per-job package list so your CFO can pull cost-of-goods without opening a CSV.
processing.startprocessing.create_packagesprocessing.adjust / processing.finishprocessing.jobtype.*item.brand.*item.photo / item.filerecipe.* (THC layer)Distributor
The license class with the most Metrc surface area โ manifests, COAs, transfers, retail-ID handoff. We compress all of it into a queue-and-approve workflow your floor manager can run.
transfer_template.createtransfer.* lifecyclepre-submit validatorauto-bridgedistro toolingretailid.*Retailer
Sales receipts and deliveries โ storefront and non-storefront in one product. The 24-hour entry rule, but enforced. POS handoff in beta.
salesreceipt.*delivery.*delivery.retailer.*retailid.associateretailid.mergeretailid.packages.infoTesting Lab
Inbound samples, COA upload, result release. We handle the v2 quirks (base64 doc upload, two-stage release) so your lab tech doesn't.
labtest.results.recordlabtest.document.uploadlabtest.results.releasemirror table viewreference syncstate machineSee it on your data.
Send your license number โ we'll run your last 30 days of Metrc activity through the queue and show you what would have caught.