A build-to-order AL extension that runs HVAC installations, AMC contracts, job cards, dispatch and van stock inside Dynamics 365 Business Central. ECOSIRE scopes, builds, installs and supports it for your tenant. Built to order by ECOSIRE for Dynamics 365 BC (build-to-order) — indicative price from $499.00 USD; request a quote for a scoped proposal.
Illustrative previewA build-to-order AL extension that runs HVAC installations,
AMC contracts, job cards, dispatch and van stock inside Dynamics 365 Business Central.
ECOSIRE scopes, builds, installs and supports it for your tenant.
No DIY setup — a working app, built, installed and supported by ECOSIRE.
Start with a one-time build price. We scope it with you at kickoff.
ECOSIRE builds, configures and installs it on your Dynamics 365 Business Central.
You go live in about 2–4 weeks, with a post-launch support window.
An HVAC company sells three things at once: an installation project, a maintenance contract, and the parts and labour that keep the equipment running. Dynamics 365 Business Central handles the money side of all three well — sales quotes, jobs, service items, service contracts, item ledger — but it was never designed around the day a service manager actually works. There is no dispatch board showing which technician is where, no job card a technician can complete on a phone, no AMC renewal pipeline that warns you ninety days out, and no clean way to treat a van as a stock location that consumes parts against a specific service order line. Most HVAC firms bridge those gaps with a whiteboard, a WhatsApp group and a spreadsheet of contract expiry dates — and the reconciliation back into Business Central happens weeks later, if at all.
We build an AL extension that closes that gap inside your own Business Central tenant rather than beside it. The core is a Service Job Card table backed by table extensions on Service Header, Service Line, Service Item and Service Contract Header, so every job card resolves to real Business Central documents and posts through the standard service posting routines — no shadow ledger, no month-end reconciliation. A dispatch board page assigns jobs to technician resources against Resource Capacity, respects skill and certification codes, and writes back planned start and end times so Resource Ledger Entry reflects actual field time. AMC contracts extend the native Service Contract with renewal windows, escalation percentages and visit schedules; a job queue entry generates the next period's planned service orders and flags contracts approaching expiry into a renewal worklist. Van stock is modelled as per-technician locations fed by transfer orders from the main warehouse, so a part consumed on a job card decrements the technician's bin and lands on the invoice line in one step.
Technically it is a clean AL extension for current Business Central release waves, SaaS or on-premises. Business logic lives in codeunits invoked through event subscribers on the standard service and inventory publishers, so upgrades do not fight your customisations. Equipment history is exposed as a FactBox on Service Item — every past visit, part replaced, refrigerant charge and warranty state on one page. API pages published on REST API v2.0 / OData v4 expose job cards, technician schedules and equipment history for a mobile app, a customer portal, or a Power Apps canvas app over Dataverse; Power Automate flows can fire on job completion to notify a customer. Dedicated permission sets separate Dispatcher, Technician, Service Manager and Accounts roles, so a technician can close a job card without touching pricing.
Delivery is build-to-order. After a scoping call we write a specification covering your job card fields, AMC billing pattern, van stock policy and the quotation-to-invoice flow you actually use, then build against a sandbox of your tenant. Typical delivery is two to four weeks from confirmed scope, depending on how much of the mobile and Power Platform surface you want in the first release. You get the installable extension for your Business Central version, UAT on staging before anything touches production, and the source in a git repository you own.
Runs 8-40 technicians across installations, breakdowns and scheduled maintenance. Needs one board showing who is where today, which jobs are slipping and which AMC visits are due this month — without chasing a WhatsApp group or rebuilding the schedule every morning.
Wants recurring AMC revenue protected and visible. Needs renewal warnings before contracts lapse, real labour and parts cost per job so margin is known job-by-job, and all of it inside Business Central rather than a second system that has to be reconciled.
Implementing Business Central for an HVAC client and finding the native Service module short on dispatch, van stock and AMC renewal. Wants a clean, upgrade-safe AL extension with documented event subscribers and object ranges they can support and extend themselves.
Responsible for spare parts across a central store and a fleet of vans. Needs van stock as real locations with transfer orders and bin-level consumption, so a part fitted on site leaves inventory and hits the customer invoice in the same transaction.
| Criterion | ECOSIRE | Custom Build | Competitor | Dynamics 365 Business Central Native |
|---|---|---|---|---|
| Fit to your HVAC workflow | Built to your written spec — your job card fields, AMC billing pattern and van stock policy | Same fit achievable, but you carry the analysis and design effort in-house | Generic field service model; you adapt your process to the app's assumptions | Service module covers documents and contracts, not dispatch, van stock or renewals |
| Dispatch and technician scheduling | Dispatch board assigning jobs to resources against Resource Capacity and skill codes | Achievable, but the scheduling page is usually the most expensive piece to build well | Often strong, sometimes in a separate portal outside Business Central | No dispatch board; scheduling happens on a whiteboard or in a spreadsheet |
| AMC contracts and renewals | Renewal window, escalation, visit schedule and a job-queue-driven renewal worklist | Depends entirely on how much renewal logic your team specifies and builds | Contract handling varies widely; renewal alerting is often an upsell tier | Service Contracts exist and invoice correctly, but no renewal pipeline or warning |
| Van stock and parts consumption | Per-technician locations, transfer orders, bin-level consumption booked to the job line | Requires careful design against inventory posting to avoid valuation errors | Some support van stock; many treat parts as a flat consumption list | Locations and transfers exist, but nothing ties a van bin to a service job card |
| Upgrade safety across release waves | Event subscribers and table extensions only; validated on a sandbox each wave | Safe if built to pattern — risky when deadlines push a team into shortcuts | Vendor-maintained, but you wait for their update on their schedule | Nothing to break — it is the base application |
| Source code ownership | Full AL source handed over in a git repository you own | You own it outright, along with all future maintenance | Closed source; you license it and cannot change behaviour yourself | Microsoft's code, not modifiable |
| Time to a working system | Typically 2-4 weeks from confirmed scope, quoted against the signed spec | Months of internal AL development plus hiring or retaining the skill | Installs in a day, then weeks of process compromise and workaround configuration | Available now, but the operational gaps stay unsolved |
| Integration and mobile surface | API pages on REST API v2.0 / OData v4, plus Dataverse and Power Platform connectivity | Possible, but API design and Dataverse mapping add real scope | Usually a fixed API and a fixed mobile app; extension points limited | Standard Business Central APIs exist, but no job card or dispatch entities to expose |
No. This is a build-to-order extension. ECOSIRE builds it for your Business Central version and your working practices after you request a quotation — there is no instant download. If an existing AppSource product genuinely fits your scope better, we will say so on the scoping call.
Typically 2-4 weeks from confirmed scope. The scoping call and a written specification come first; once you sign off on the spec, the clock starts. Wider scope — a full mobile app, deep Power Platform work, or migration of a large equipment history — extends that, and we give you the revised estimate before we begin, not after.
Yes. It is delivered as an AL extension for current Business Central release waves. For SaaS we deliver a per-tenant extension installed on your environment; for on-premises we deliver the .app plus install instructions for your service tier. The same source builds for both — we confirm your exact version and release wave at scoping.
The extension uses table extensions, page extensions and event subscribers rather than modifying base application objects, which is the pattern Microsoft's upgrade path is designed around. We validate against the next release wave on a sandbox as part of the support window and issue an updated build if an obsoleted event or field requires one.
A post-go-live support window is included for defect fixes and configuration adjustments within the delivered scope. Beyond that we offer an ongoing support and maintenance agreement covering release-wave compatibility checks, minor enhancements and priority response. You also own the source in your own git repository, so you are never locked to us.
The extension publishes API pages on REST API v2.0 / OData v4 for job cards, schedules and job completion, and connects through Dataverse for Power Platform. A Power Apps canvas app, the Business Central mobile client, or a custom mobile front end can all drive it. Which of those we build is a scoping decision — the API surface is included either way.
AMC contracts extend the native Business Central Service Contract, so contract invoicing still runs through standard routines and your financial reporting is unaffected. We add the renewal window, escalation percentage and visit schedule on top. A job queue entry generates the next period's planned service orders and pushes contracts approaching expiry onto a renewal worklist, so nothing lapses silently.

A true finite-capacity APS engine for Dynamics 365 Business Central that builds optimized, executable schedules respecting machines, labor, tooling and material availability simultaneously. Built, installed and supported by ECOSIRE as a per-tenant AL extension.

A build-to-order AL extension that supercharges Business Central's native MRP/MPS with demand-driven forecasting, bulk SKU parameter management, and supply-vs-demand pegging — so planners replan thousands of items in minutes. Built, installed as a per-tenant extension, and supported by ECOSIRE.


A custom-built AL extension that adds an AI Copilot to Business Central — natural-language queries over your ledger data, anomaly and fraud detection, cash-flow forecasting and automated variance narratives. Built, installed per-tenant and supported by ECOSIRE.
A build-to-order AL extension that runs HVAC installations, AMC contracts, job cards, dispatch and van stock inside Dynamics 365 Business Central. ECOSIRE scopes, builds, installs and supports it for your tenant.