Every small landlord has the same gap in their workflow. The tenant reports a leak at 10 AM. By 10:15 AM the message has been read, the leak has been classified, the urgency tank has been confirmed. By 10:30 AM the AI has picked the right plumber from your saved vendor list and drafted the dispatch message. And then, at 10:31 AM, the whole thing becomes your problem again — because someone still has to press "send." That's the gap vendor dispatch is supposed to close.
Automated vendor dispatch is the layer that takes a triaged maintenance request and turns it into a scheduled, in-flight repair with the right vendor — including the thread, the photos, the urgency, and the tenant context that vendor needs to do the job. Done by a person it's a Tuesday-morning phone call; done by software it's the difference between a leak fixed on Wednesday and a cabinet rotted by Friday. This guide is about how the dispatch layer works in 2026, what it handles, what it doesn't, and how to set it up without over-promising your vendors.
What AI vendor dispatch actually does
The phrase is often confused with a contact list — a spreadsheet of plumbers with phone numbers. That's not dispatch. Dispatch is everything that happens between "we know what this is" and "the correct vendor is on the way." The full picture:
- Vendor matching by category and trade. The triaged category (plumbing, electrical, HVAC, appliance, lock, structural) maps to the right vendor profile from your saved list. A leaking sink doesn't go to the handyman by default — it goes to the plumber, even if a handyman could eventually do the repair.
- Thread packaging. The vendor receives the original tenant message, the AI's classification and urgency tier, the triage notes, any photos the tenant attached, and the access instructions for the unit. The vendor doesn't have to call you back for context.
- Drafted dispatch message. The AI composes the outbound message to the vendor — name, address, problem summary, what was already triaged, who to contact on-site — and either sends it on approval or queues it for one-tap confirmation.
- Scheduling and SLA tracking. The dispatch layer knows your vendors' response expectations (4 hours for plumbing emergencies, 24 hours for routine, 72 hours for cosmetic) and either triggers an alert when SLA is missed or surfaces it for the landlord to follow up.
- Closure loop. When the vendor confirms the visit, the AI updates the maintenance thread, notifies the tenant with an expected window, and pings the landlord with the status. When the vendor reports the work done, it closes the thread.
The cheapest version of vendor dispatch is a contact list and a phone call — and that works fine for 1–2 units and one trusted handyman. The point of the AI version is that same dispatch handling without the per-request phone call, for the dozens of requests per month that a 10-unit portfolio generates across multiple trades.
Why dispatch is a separate layer from triage
Triage decides what this is. Dispatch decides who handles it. They overlap, but they're not the same job, and conflating them is the most common implementation mistake. The triage post covered the upstream — automated maintenance triage — and this post picks up where that one ends.
Three reasons the two layers are separate:
- Different inputs. Triage reads tenant messages and decides urgency and category. Dispatch reads those triage outputs and decides which vendor from a saved list matches — a different decision with different inputs. Putting them in one model compresses two decisions into one and gets both of them less right.
- Different failure modes. A bad triage decision costs time (you wake up to a leak). A bad dispatch decision costs money and trust (the wrong vendor shows up, can't do the work, bills for the visit anyway). The dispatch layer deserves its own review surface, its own audit trail, and its own approval threshold.
- Different ownership. Triage policies (what counts as emergency for your portfolio) belong to the landlord. Dispatch policies (which vendors you use, what specialties they cover, what their SLAs are) also belong to you — but they're a different list of decisions, edited less often, and reviewed when vendor relationships change rather than when the tenant reports a new issue.
One way to see the difference: triage is the per-request decision that runs every time a tenant reports something. Dispatch is the per-portfolio decision you set up once, then refine over time as your vendor relationships evolve. Same workflow, different cadence.
The 3-step dispatch flow in practice
Once triage has finished — category set, urgency tier set, tenant acknowledged — the dispatch layer does three things, in order, every time:
- Match the category to a vendor. The system reads the triage output ("plumbing / urgent") and looks up the vendor profile that matches: plumbing trade, marked "active," SLA within your portfolio's expectation for the urgency tier. If multiple vendors match (two trusted plumbers, for instance), the system either rotates by recency or surfaces both for your pick. If no vendor matches, it escalates with a draft message you can send to a new vendor on file.
- Build the dispatch message. The system composes a thread-ready message: vendor name and contact, property address, unit number, tenant name and contact, problem description from the original tenant message, the AI's classification, the AI's urgency tier, any attached photos, and any specific instructions the landlord has set ("the tenant works from home, call before arriving").
- Notify everyone with the thread intact. The dispatch message goes to the vendor. A confirmation message (with the expected response window) goes to the tenant. A summary notification — with the full thread, the dispatched vendor, and a one-click "mark complete" button — goes to the landlord. If the vendor responds (asking a question, confirming a time, requesting access details), their message lands in the same thread, not in your inbox.
That three-step flow — match, build, notify — is the entire job. The hard part isn't the steps; it's the vendor list underneath them. A good dispatch layer requires a saved vendor profile per trade, with enough information that the match step doesn't have to guess.
The vendor stack every small landlord needs
Most small-landlord portfolios end up needing the same five to seven vendor trades over time. Some landlords start with a single handyman and add trades as issues come up; others build a roster in advance. Either way, the canonical list for a 1–10 unit portfolio:
- Plumber. The trade that gets called most. Active leaks, water-heater failures, sewer backups, slow drains. Typically one plumber is enough for 1–10 units; two if you're in a metro area with weekend-only emergency coverage.
- Electrician. Outlet failures, panel issues, light fixture replacements that require code compliance, post-storm electrical work. Most landlords don't think about electricians until they need one — and then they need one fast.
- HVAC technician. No heat in winter, no AC in summer, broken thermostat, refrigerant top-ups. HVAC is the trade most tied to habitability laws, so the dispatch layer needs to know which vendor can respond within your state-defined emergency window.
- Handyman. The catch-all for small fixes — door hinges, cabinet adjustments, drywall patches, screen replacements, garbage disposal replacements. Useful, but not a substitute for the trades above when the issue is a real plumbing, electrical, or HVAC problem.
- Appliance technician. Refrigerator, dishwasher, oven, washer/dryer. Most landlords rent these with the unit; tenant-claimed appliance failures trigger maintenance requests that go to this trade, not the handyman.
- Locksmith. Broken locks, lockouts, re-keying between tenants. The urgency profile is different (broken main-door lock is urgent, not emergency) and the dispatch needs to know 24/7 availability.
- Generalist / contractor. Larger repairs that need multiple trades, structural issues, post-damage restoration. Less frequent, but worth having one on file before you need them.
For each vendor, the useful fields to capture in the saved profile: vendor name, trade(s), primary contact (phone, email), business hours, after-hours / emergency availability, typical response window for routine calls, typical response window for emergency calls, hourly or flat-rate pricing expectations, and any portfolio-specific instructions ("call tenant for access," "do not enter without landlord approval," "send photos before and after the visit"). The dispatch layer pulls from this profile every time a request routes to that vendor.
What dispatch should auto-do vs. what stays with the landlord
Not every step of the dispatch workflow belongs to the AI. Some belong to the system; some belong to you regardless of how good your tool is. The breakdown below mirrors the triage table — yes for what the dispatch layer should fully run, partial for what it should draft and you confirm, no for what stays in landlord hands:
| Task | Automated? | Notes |
|---|---|---|
| Reading triage output | Yes | Category and urgency tier flow in from triage automatically |
| Matching category to vendor | Yes | Reads your saved vendor profiles, picks the right trade |
| Building the dispatch message | Yes | Pulls property, tenant, photos, urgency into a single message |
| Sending routine dispatches | Yes | Routine tier: AI can send and notify you after the fact |
| Notifying tenant on dispatch | Yes | Sends expected response window within the same thread |
| Tracking SLA compliance | Yes | Counts time since dispatch, alerts when vendor misses window |
| Sending emergency dispatches | Partial | Drafts immediately; landlord one-tap approves before send |
| Selecting between competing vendors | Partial | Surfaces both with prior-work history; landlord picks |
| Approving budget exceptions | Partial | AI flags when expected cost exceeds your set threshold |
| Picking which vendors are "your vendors" | No | Vendor list, contacts, and SLAs are your call |
| Negotiating rates or contracts | No | Relationship work — the AI doesn't do this for you |
| Vendor performance reviews | No | Who's reliable gets called again; that's a landlord decision |
The "yes" column is what compounds: every dispatch that lands cleanly on the right vendor in the right window makes the next one easier. "Partial" is where the AI drafts the dispatch (especially for emergency tier) and you confirm in one tap. "No" is what stays in your hands — vendor selection, rate negotiation, performance review. The dispatch layer should make those decisions easier to make, but it shouldn't pretend to make them for you.
Stop translating "tenant messages" into "vendor phone calls"
NestOps matches triaged requests to your saved vendor list, drafts the dispatch with the full thread attached, notifies the tenant, and pings you only for emergencies. Flat $29/mo, no minimums.
Start Free Trial →14 days free · No credit card required · Cancel anytime
How dispatch connects to triage, rent, and the rest of the workflow
Dispatch is the bridge between automated maintenance triage and an actual repair visit. It also feeds back into other parts of the workflow — most obviously a tenant's reply to a rent reminder that turns out to be "I can't pay until the bathroom leak is fixed." Three integrations matter:
- Triage layer. Dispatch is the natural next step after triage sets the category and urgency. The handoff is automatic; the dispatch layer reads the triage output and starts the match step. If triage changes a request's urgency (an "urgent" leak becomes "emergency" after the tenant sends a follow-up photo of active water), the dispatch layer re-runs the match with the new tier.
- Rent reminder and rent collection. Tenant replies to a rent reminder that turn out to be maintenance requests ("I can't pay until you fix the AC") trigger a fork: the message is triaged as maintenance, dispatched per the routing rules, and the rent conversation continues in parallel, not stopped. The two threads close independently — the rent reminder sequence doesn't pause because the unit needs a repair, and the maintenance repair doesn't pause because the rent reminder is overdue.
- Tenant communication. The dispatch layer's tenant notification ("the plumber will arrive Tuesday between 10 AM and 12 PM") is one more tenant-facing message in the same thread, not a separate outbound comms system. The same AI that drafted the tenant acknowledgement after triage drafts the dispatch notification after dispatch — same tone, same template style, same thread history.
The practical benefit of integration: dispatch work doesn't create a side task list that competes with your other landlord work. The dispatch confirmation lives inside the tenant conversation, the vendor message lives in the same thread, and the closure lives at the end of the same chain. You're not checking "did the plumber get called?" in three different systems.
What dispatch looks like at the moment of handoff
It's Tuesday morning. Triage just finished on the bathroom leak — plumbing, urgent (broken toilet in a one-bathroom unit). Your saved plumber profile is "Acme Plumbing, weekdays 8–5, 4-hour routine response, 1-hour emergency response." The dispatch layer drafts: "To: Acme Plumbing. From: [your property]. Property: 412 Oak St, Unit 3. Tenant: [name], pref. contact method. Issue: Broken toilet, single-bath unit, leaking at base. Triage tier: Urgent. Photos attached. Access: knock and call tenant. Please confirm ETA." One click — the message goes to the plumber, your tenant gets a notification with the expected window, and you see a one-line summary with the SLA countdown. The whole handoff took 20 seconds.
Common mistakes to avoid
A few patterns that consistently undermine dispatch, whether you're doing it by hand or with software:
One vendor for everything. Routing every maintenance request — plumbing, electrical, HVAC, appliance, lock — to a single handyman is the default for small landlords who've never built a vendor list. It's cheap, but it's a 2× cost in the long run: wrong-vendor visits, handyman-time billed for specialty work, slow handyman response during his busy weeks. Even three trades (plumber, electrician, handyman) is better than one.
Dispatching before triage completes. Calling a vendor the moment a tenant reports an issue is the route to bad vendor selections and emergency rates for routine work. Triage before dispatch — even if triage is fast — saves money every time. Dispatch is the next step after triage, not a substitute for it.
No SLA per vendor. A vendor list without response windows attached is a contact list, not a dispatch layer. If your plumber promises 4 hours but you don't track the SLA, you won't know whether they actually met it until the tenant complains about a wait. Every vendor profile should have expected response windows for each urgency tier, and the dispatch layer should alert you when a window is missed.
Sending the vendor a half-context message. "Tenant reports a leak at 412 Oak St, please call back" is the typical informal dispatch — and it's why vendors call back to ask questions. A thread-bound dispatch message includes the triage output, the photos, the urgency, the access instructions, and the primary contact. Vendors who get the full context dispatch faster, show up better prepared, and bill fewer "extra visit" charges.
Notifying the tenant separately. Dispatching and tenant notification should feel like one event from the tenant's side. If the vendor gets a message and the tenant gets a separate, differently-toned notification at a different time, the tenant doesn't trust either one. The dispatch layer should send both messages — to vendor and to tenant — from the same thread, with consistent tone.
Letting the thread lose context after dispatch. If the triage decision lives in one place, the vendor message in another, and the tenant reply in a third, you've recreated the audit gap dispatch was supposed to close. Pick a workflow that keeps the whole chain — intake, triage, dispatch, vendor reply, completion — in a single thread you can search later.
Automated vendor dispatch is the part of your maintenance workflow that turns triage into something that actually gets fixed. The first time a Sunday-night leak routes to your on-call plumber in seconds — without you waking up to make a phone call — covers the cost of the tool for the rest of the year. By the second month, you're no longer the person who decides which vendor to call; you're the person who gets asked only when the situation actually needs you.