A Business Central AL extension that runs a laundry or dry-cleaning operation end to end: order intake with per-garment tags, process-stage tracking through the plant, service-based pricing, pickup and delivery scheduling, and automated customer notifications. ECOSIRE builds it to your workflow after a scoping call. 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 Business Central AL extension that runs a laundry or dry-cleaning operation end to end:
order intake with per-garment tags, process-stage tracking through the plant, service-based pricing, pickup and delivery scheduling, and automated customer notifications.
ECOSIRE builds it to your workflow after a scoping call.
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.
A laundry is not a warehouse. What you take in is the customer's own property, it must come back to that exact customer, and between intake and collection it splits into individual garments that travel separately through wash, dry-clean, press, spotting and repair. Dynamics 365 Business Central handles the money side of this well — customers, prices, invoices, VAT, receivables — but it has no concept of a garment that belongs to someone else. Sales orders assume you sell items you own. Item tracking assumes serial numbers on goods you stock. There is no page that tells a counter clerk which of a customer's eleven pieces are still in spotting, and no field anywhere that says "ready for Thursday's van route". Most laundries end up running the actual operation on a whiteboard, a spreadsheet or a standalone POS, then rekeying totals into Business Central at month end — which is exactly where the revenue leaks and the disputed tickets come from.
We build a Business Central AL extension that adds the missing operational layer inside the same company database your accountant already uses. A new Laundry Order document captures the customer, promised-ready date and service branch, and explodes into Laundry Garment lines — one record per physical piece, each with its own tag number, garment type, colour, fabric, defect and stain notes, and photographs captured at intake. Tag numbers come from a Business Central number series so they are gapless and auditable, and print to thermal or heat-seal labels as barcodes or QR codes through standard report objects. Each garment carries its own status enum and moves through configurable process stages — Received, Sorted, Cleaning, Pressing, Quality Check, Packed, Out for Delivery, Collected — with every transition written to an append-only Laundry Garment Movement ledger holding user ID, station code, workstation and timestamp. Scanning a tag on a phone or a rugged handheld posts the movement through an API page on the REST API v2.0 surface, so a shop-floor scanning station never needs a full Business Central client.
Pricing is driven by a Laundry Service Price table keyed on garment type, service type, customer price group and optional express tier, so a two-piece suit dry-cleaned on same-day service prices differently from a shirt on standard wash-and-press without anyone typing a figure. Codeunits resolve the price at intake and again at release, so an upgrade to express or an added repair line reprices cleanly and lands on the sales invoice with the correct G/L and VAT posting groups. Corporate accounts — hotels, clinics, airlines, uniform contracts — invoice on a period consolidation rather than per ticket, using standard Business Central customer posting setup rather than a parallel ledger. Pickup and delivery are modelled as a Laundry Route header with stops sequenced per driver and vehicle, and a job queue entry generates the next day's routes on a schedule you configure. Customer notifications — ready for collection, out for delivery, overdue uncollected — fire from event subscribers on status changes and go out over your SMS gateway, WhatsApp Business API or SMTP, with each attempt logged so a "nobody told me" dispute is answerable from the record.
Everything ships with permission sets separating counter staff, plant supervisor, driver and manager, so a driver's app token cannot reprice a ticket. The extension is written for current Business Central release waves on both SaaS online and on-premises, using the extension model only — table and page extensions, codeunits, event subscribers, no base-object modification — so release waves do not break it. Published API pages also make the data reachable from Power Platform and Dataverse for a driver app in Power Apps, a plant-throughput dashboard in Power BI, or an escalation flow in Power Automate.
This is build-to-order. Nothing is downloaded and switched on — we build it against your actual process, because no two plants tag, sort or route the same way. It starts with a scoping call where we walk your intake counter, your plant stages and your delivery model, then we write a scope document naming your stages, your tag format, your price matrix and your notification templates. From a confirmed scope, typical delivery is two to four weeks. You get the AL source code for your Business Central version, deployment to a sandbox for user acceptance testing before anything touches production, a documented go-live with a rollback plan, and a support window afterwards. If your requirement is smaller than what is described here, we scope it smaller and quote it accordingly — the scoping call exists precisely so you are not paying for stages you do not run.
Runs three to fifteen drop shops feeding one or two central plants, already uses Business Central for accounting, and is tired of reconciling a standalone POS against the general ledger. Needs branch-level profitability, one customer record across all shops, and to stop losing garments between the shop counter and the plant van.
Responsible for throughput, and for the pieces that go missing. Needs to know at any moment how many garments sit in each stage, which tickets are at risk of missing their promised-ready date, and who last handled a garment a customer says came back damaged. Lives in the movement ledger and the stage board, not in the invoices.
Handles hotel, hospital, airline and uniform contracts billed monthly on volume rather than per ticket. Needs contract pricing that applies itself, period consolidation onto one invoice per account, and a defensible line-item breakdown when a housekeeping manager queries the bill.
Owns the tenant and will inherit whatever gets installed. Wants a per-tenant extension with a clean object ID range, no table locking on the plant floor, published API pages instead of direct SQL access, permission sets that survive a release wave, and source code in a repository they can build themselves.
| Criterion | ECOSIRE | Custom Build | Competitor | Dynamics 365 Business Central Native |
|---|---|---|---|---|
| Fit to your actual process stages | Stages, tag format and pricing modelled on your plant during scoping | Exact fit achievable, but only after you specify every rule yourself | Fixed stage model; you adapt the plant to the app | Business Central has no process-stage concept for customer-owned goods |
| Per-garment tracking | Dedicated garment table, tag number series and append-only movement ledger | Built from scratch; the audit trail depends on your developer's discipline | Usually present, but tag format and label hardware are fixed | Item tracking assumes stock you own, not a customer's property |
| Time to a working system | 2-4 weeks from confirmed scope, with sandbox UAT before production | Typically 2-4 months including discovery, hiring and testing | Fast install, then weeks of workarounds where it does not fit | Available immediately, but the operation still runs on a spreadsheet |
| Source code and lock-in | Full AL source and Git repository handed over; you can self-maintain | You own it entirely, and you own every future fix | Closed .app package; roadmap and pricing set by the vendor | Microsoft base application, not extensible for this without an extension |
| Scanner and mobile access | Published API pages on REST API v2.0 for handhelds, tablets and Power Apps | Possible, but API design and OAuth handling are extra scope | Vendor's own app, often with its own per-device subscription | Standard BC APIs exist but expose no laundry entities |
| Contract and consolidated billing | Period consolidation onto standard BC invoices with line-item breakdown | Buildable; billing edge cases are where DIY projects usually overrun | Often retail-first, with contract billing bolted on or absent | Invoicing works, but nothing aggregates garment activity to bill from |
| Customer notifications | Event-subscriber triggered SMS, WhatsApp or email with delivery logging | Requires building the trigger layer, templates and retry logging | Usually included, tied to the vendor's messaging provider and rates | No garment status events to subscribe to; manual emails only |
| Upgrade safety across release waves | Extension model only, tested on your release wave, support window included | Depends on whether your developer avoided unsupported patterns | Vendor handles it, on the vendor's schedule rather than yours | Fully Microsoft-maintained, because there is nothing custom to break |
This is build-to-order, not an instant download. Typical delivery is two to four weeks from confirmed scope — that is, from the point where you have signed off the scope document listing your process stages, tag format, price matrix, route model and notification templates. The scoping call itself usually happens within a few days of your enquiry. Larger requirements — multi-country operations, complex contract billing, unusual hardware integration — are quoted with their own timeline at scoping rather than squeezed into the standard window.
No. There is no existing AppSource listing to download. ECOSIRE builds the extension for your Business Central environment after scoping, and deploys it as a per-tenant extension to your sandbox first and then production. If you want the result published under your own AppSource listing — some franchise operators and BC partners do — we can package it and prepare it for AppSource technical validation as separately scoped work.
Business Central ships two major release waves a year plus monthly service updates. The extension is built against your current release wave and follows Microsoft extensibility rules — table and page extensions, event subscribers, no modification of base objects — so it survives updates cleanly in normal cases. Every project includes a post-go-live support window for defect fixes and configuration adjustments. Beyond that window we offer an ongoing support and release-wave compatibility agreement, priced separately. You can also take the code and maintain it yourself, since the Git repository is handed over.
Yes. The extension is written in AL for current release waves and runs on both Business Central online (SaaS) and on-premises. There are practical differences we confirm during scoping: on-premises gives more freedom with local hardware and outbound network calls, while online means scanner clients reach the tenant through published API pages with OAuth, and outbound SMS or WhatsApp calls go through approved endpoints. Your hosting model changes some integration choices, not the functionality.
Movements post through API pages exposed on the REST API v2.0 surface, authenticated with OAuth. A handheld scanner, tablet or lightweight web app calls those endpoints rather than running the Business Central client, so you licence the users who genuinely need Business Central and not every scanning station. We confirm the exact licensing shape with you during scoping, since it depends on how many named people need Business Central access versus how many are purely scanning tags.
Yes, and they are deliberately handled differently. Walk-in tickets price from the service matrix and invoice on collection, typically with payment at the counter. Contract accounts — hotels, clinics, uniform programmes — attach to a customer price group with contract rates, accumulate garments across the period, and consolidate onto one invoice per account per billing cycle with a full line-item breakdown. Both use standard Business Central customers, posting groups and VAT setup, so your accountant sees one ledger, not two.
Not necessarily. Some clients want everything inside Business Central and retire the POS. Others keep a counter POS their staff like and use this extension for the plant, routing, contract billing and the ledger, with the POS pushing intake through the API pages. Both are valid; which we recommend depends on what your POS actually does well and whether it can integrate cleanly. We look at it during the scoping call and will tell you honestly if replacing it is not worth the disruption.

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 Business Central AL extension that runs a laundry or dry-cleaning operation end to end: order intake with per-garment tags, process-stage tracking through the plant, service-based pricing, pickup and delivery scheduling, and automated customer notifications. ECOSIRE builds it to your workflow after a scoping call.