Skip to content

What's new

Release Notes

What's new across Ailaaj One

Release history across Ailaaj One — every user-visible change, newest first, by product release. Filter to a single product if you like.

1.5.7

“Order desk, invoices & below-cost sales” Current 5 October 2026

CS Command Center can edit order notes and the ship-to address. Invoices filter by customer and notes. Warehouses block sales below cost. A purchase return can reduce a GRN balance, and bulk GRN payment no longer posts twice.

New Orders
  • On an open order, edit order notes and the ship-to address. The address form matches Add address, uses the city list, and opens filled in.
  • Copy the customer phone. Voice agents get a call button that opens the softphone with that number and dials.
New Purchase Returns
  • View, create, edit, discard, and complete are separate permissions. Only Complete Purchase Return (Approve) can save a return as completed, including turning a draft into a completed return.
New Accounting
  • On Invoice Payments, apply a same-supplier purchase return to a GRN. The balance is invoice minus payments minus returns, with no extra supplier-ledger voucher.
New Smart Counter
  • Invoices can filter by customer. Search and export also match sale notes.
  • Warehouses block sales below cost (on by default). Price changes, line discounts, cart discounts, and coupons that would go below cost are refused. Selling at cost is allowed.
New Claims Management
  • Members and Claims use a member dropdown. Search by employee name, employee number, email, and the customer name and phone.
Improved Smart Counter
  • Clear filters on Invoices resets the date to today.
Improved Claims Management
  • The claims list uses the full width of the screen.
Improved Academy
  • Guides with screenshots for Demand Forecast, Reorders, and Formulary Brand Groups.
Fixed Accounting
  • Bulk GRN payment re-reads the balance, skips a GRN that already has the same posted narration, and will not submit twice.
Improved Voice
  • Refreshing keeps Ready, Not ready, or Break and reconnects the softphone. Use phone in this tab moves the phone to the current tab.

Known issues. The warehouse switch is stored after the negative-margin migration is applied; until then the counter still blocks below-cost sales. Click-to-call needs a connected softphone and no call already in progress. Full release note.

1.5.6

“Call Center, handbooks & till balance” 29 September 2026

Reports v2 Call Center for Voice tenants. Corporate plans can email handbook PDFs. Smart Counter keeps till Balance correct after sales and blocks empty-cart checkout.

New Reports
  • Call Center Overview and Call Logs in Reports v2 (Voice) — volume, dispositions with drill-down, recordings, and phone / direction / wrap-up filters.
New Claims Management
  • Attach a policy handbook PDF on a plan; welcome and password-reset emails include it when present.
Improved Reports
  • Daily in/out chart hover shows full date with inbound, outbound, and total.
Fixed Smart Counter
  • Till Balance stays correct after cash sales while sync catches up.
  • Checkout blocks empty carts; zero-item queued sales are not synced as invoices.
Fixed Accounting
  • Zero-amount sales no longer post empty voucher lines.
Fixed Reports
  • Call recordings open from Call Logs when the SIP file is available.
  • Inbound Caller no longer shows the store DID when the real caller number is missing.

Known issues. Some inbound SIP events still omit the caller number (shown as Caller unknown). Call Center needs Voice on the plan and the report RPCs. Handbook PDFs need corporate object storage. Full release note.

1.5.5

“Narcotic register & till cash” 22 September 2026

Sale Reports adds a narcotic register. Checkout asks for the doctor when the cart has a narcotic item. Ending a till shows cash purchases taken during that session.

New Reports
  • Narcotic Register on Sale Reports — product-wise in and out for narcotic drug-control items, with sales, sale returns, and GRN purchases.
New Smart Counter
  • Narcotic cart lines show a chip. Checkout requires a doctor name (number optional) and saves it on the sale notes.
  • End Session lists cash GRNs for this warehouse since the till opened, so cash that left the drawer for purchases is visible before close.
Improved Smart Counter
  • Recent sales can filter by titled payment method, drug control, and exact amount, and shows the prescribing doctor.
  • Invoice date filters can include a time. Bag charges and rounding are included in invoice totals.
  • Product menus stay under the field on zoomed counter screens.
Improved Purchase Orders
  • A new PO line starts as one pack instead of one unit.
Fixed Platform
  • An expired sign-in restores the session when the browser is online, instead of dropping staff on a dead screen.
  • Demo organisation setup no longer fails after titled payment methods.

Known issues. Doctor name and number are stored on the sale notes. The narcotic register needs the register RPC on that environment. Cash purchases are cash GRNs since the till opened, not a separate cash ledger. Full release note.

1.5.4

“OMS Dashboard, titled payments & catalog” 18 September 2026

Reports v2 adds an OMS Dashboard. Cashiers title IBFT, card, and wallet methods at checkout. Catalog barcode is on Quick add/edit and the products list, and receiving can print GRN barcode labels.

New Reports
  • OMS Dashboard in Reports v2 — Overview, Orders, Fulfilment, Command Centre, Support & Queries, and Order Financials, sharing date and warehouse filters with Operational KPIs.
  • Overview shows order mix; First response time is a dashboard tile. Missing sources stay blank instead of a misleading zero.
New Smart Counter
  • Titled IBFT, card, and wallet methods — the title is required and shows at checkout, on receipts, on IBFT QR, and in Day View. Tenant owners can change payment method on an existing invoice.
  • Optional warehouse delivery charges (default off). X990 ECR card checkout after a one-time pair.
New PIMS
  • Barcode on Quick add and Quick edit (wider dialog). Products list has a Barcode column — search, sort, and double-click to edit immediately (not held for approval). Sorted by Updated, so an inline save puts that product first.
  • Data Migration can bulk-update cost, selling price, and ingredients by SKU from CSV.
New Goods Received Notes
  • Print barcode labels from a GRN list row or received GRN — the sticker dialog loads that GRN’s products.
  • Warehouse can save a default GRN payment mode.
New CS Command Center
  • Abandoned storefront carts — copy or email the existing checkout resume link.
New Platform
  • Login offers Office Hub and public desktop installer downloads. Hub Updates can run support-controlled SPA auto-updates.
Improved Smart Counter
  • Day View filters by date and time. Catalog remembers the last barcode sticker size.
Improved Warehouse
  • Hub GRN and PO pages show only this hub’s warehouses. PO projection and draft edit show warehouse stock.
Fixed Reports
  • OMS Dashboard fill rate, Rx timing, and live order scope use the correct window and warehouse.
Fixed Warehouse
  • Retrying a dispatch keeps dispatched quantity and shows receive progress.
  • Stock-audit opening excludes post-GRN orphan lots.
Fixed PIMS
  • CSV product import keeps leading zeros on SKUs.
Fixed Storefront
  • Staff ailaaj.com hosts are not treated as a customer storefront.

Known issues. OMS Support & Queries ignores the warehouse filter. Command Centre tiles are live-now, not the selected date (except inflow). Barcode list search and newest-first order need the products RPC updates on that environment. Full release note.

1.5.3

“POS charges on the books” 14 September 2026

One-click accounting setup auto-maps known chart accounts. Bag charges, rounding-up, and till cash expenses post to their own ledger lines. Setup Finish no longer fails on mapping conflict.

New Accounting
  • Finish Setup auto-maps sales, GST, discount, inventory, COGS, payment methods, tills, and shippers to the known chart.
  • Bag charges (4210), rounding-off (4220), and till Cash Expense / Purchase / Cash out (6410–6430) are created and mapped automatically.
New Smart Counter
  • Warehouse bag charges, checkout rounding-up, and End Session till expense heads (Cash Expense, Cash Purchase, Cash out).
  • Store email and logo print on thermal receipts when set on the store.
Improved Warehouse
  • Purchase order view-details card shows PO totals.
  • Cloud STR stock labelled live vs local hub (not cache).
Fixed Accounting
  • Finish Setup no longer fails with a mapping ON CONFLICT error — the chart and mappings are created.
Fixed Warehouse
  • Put-away warehouse dropdown commits the selection.
  • Audit implement applies frozen count variance; counted corrections can be saved first.
Fixed Order Management
  • Pending tracker location filter no longer shows a stale location.
  • Approved alternates append on committed pending orders.

Known issues. Custom till expense heads are not auto-mapped. Re-run Finish Setup on tenants that already completed setup to pick up the new accounts. Full release note.

1.5.2

“Brand on Smart Counter cart” 27 August 2026

Smart Counter cart lines show the product brand under the name when one is set. Products without a brand look the same as before — no blank Brand label.

New Smart Counter
  • Brand on cart lines — shown under the product name after add (search, barcode, or hold/recall).
  • If the product has no brand, the line is unchanged (no “Brand:” and no empty row).
Improved Academy
  • Add products how-to documents what appears on a cart line after add.

Known issues. Lines already in the cart before this deploy may need the SKU added again to pick up brand. Full release note.

1.5.1

“Support Tickets Academy” 6 August 2026

Tenant guide for Support → Help — report bugs, send feature requests, and track My Tickets — so Academy docs and What's New stay aligned with product feedback.

New Platform
  • Academy topic — Support Tickets (report a bug, request a feature, track My Tickets).
  • Status reference — friendly bug and feature labels (Reported, Under Review, Shipped, Declined).
  • Explanation — when to file a bug vs a feature so triage and release notes stay accurate.
  • Method A screenshots — real Support pages with fixture tickets (My Tickets, forms, detail, nav).
Improved Academy
  • Platform sidebar includes Support Tickets next to product versioning and Cloudflare routing.

Known issues. Full release note.

1.5.0

“Claims Management Academy” 5 August 2026

Claims Management joins Ailaaj Academy — operator guides for the corporate benefits console (dashboard, claims queue, adjudication, members, and organizations) with real UI screenshots.

New Claims Management
  • Academy guide — dashboard triage, claims list filters, claim detail, create/process claim, members, organizations, plans, and panel hospitals.
  • Setup tutorial — create organization → panel hospitals → benefit plan before enrolling members.
  • Method A screenshots — real corporate pages rendered with deterministic fixture data.
Improved Academy
  • Browse-by-module and sidebar include Claims Management alongside Clinic, POS, OMS, and WMS.

Known issues. Member onboard wizard detail screens will get dedicated how-tos in a follow-up. Full release note.

1.4.9

“Auto missed sales at checkout” 21 July 2026

When checkout clears out-of-stock items from the Smart Counter cart, those lines are automatically recorded as missed sales — the same demand log as the Missed dialog. Academy guides cover the new flow and reinforce intent-navigation paths.

New Smart Counter
  • Auto missed sale at checkout — out-of-stock cart lines removed before payment are logged as missed sales (demand only; no stock change).
  • Toast confirms how many missed sales were recorded; review under Sell → Exception → Missed Sales.
Improved Academy
  • Missed sale and checkout how-tos document the auto-record path alongside the Missed dialog.
  • Docs authoring rule: customer-facing paths use Intent → Section → Leaf from navigation_items / intentNavConfig.

Known issues. Manual Missed (M) is unchanged for notes or logging demand without checkout. Partial quantity caps (reduce qty to available stock) are not missed sales. Full release note.

1.4.8

“Faster images & smoother busy hours” 16 July 2026

Product photos and attached files now load through a faster global image network. The system handles busy periods more reliably, so staff are less likely to get locked out when many people use Ailaaj at once. Invoice uploads and a storefront product-loading issue are fixed.

Improved Platform
  • Faster photos and files — product images and uploaded documents are delivered through a global content network, so pages feel snappier and put less load on the main system.
  • Smoother busy hours — when many staff and customers use Ailaaj at the same time, the system is less likely to slow down or block sign-in.
Improved PIMS
  • New product photos are stored with clear, readable names based on the product — easier to manage and better for the website.
  • Existing Ailaaj catalog photos were moved onto the new faster image network.
Improved Storefront
  • Online store product photos load faster for shoppers.
Improved Goods Received Notes
  • Supplier invoice and attachment uploads are stored on the new file network (more reliable opening and sharing).
Fixed Goods Received Notes
  • Uploading a GRN invoice no longer fails with a confusing network error in some cases.
Fixed Platform
  • Online store product pages no longer fail to load when a system setting was left blank by mistake.

Known issues. Older on-server file storage is turned off but kept for safety if we ever need to roll back. Full release note.

1.4.7

“Clinic ops & notify-me” 15 July 2026

Clinic CMS adds tag reports, patient-instruction presets, and a per-doctor SOAP section toggle on Configure fields, plus sequential MR numbers from practice codes. CS Command Center ships a Notify Me waitlist for out-of-stock storefront SKUs and a WhatsApp inbox with unread tracking. Login is fixed when browser storage is full, and storefront checkout blocks notify-only or discontinued products.

New Clinic CMS
  • Tag reports — filter visits by doctor tags with age bands and CSV export from Reports and Clinical Fields.
  • Patient instruction presets — reusable instruction snippets on Configure fields, applied in consultation with one tap.
  • SOAP section toggle — doctors can show or hide Visit summary (SOAP) from Configure fields without admin help.
  • Sequential MR numbers — practice-code-based patient MR allocation with legacy ETL reseed support.
New CS Command Center
  • Notify Me workspace — staff triage storefront stock-notify requests for out-of-stock SKUs.
  • WhatsApp inbox — conversation list with unread tracking and faster open from CS Command Center.
Improved Clinic CMS
  • Past visits sorted by visit date; follow-up presets snap to days the doctor actually works.
  • Patient registration — fewer required fields and clearer duplicate phone checks.
Improved Auth
  • Permissions no longer flash empty while rehydrating after tab return or navigation.
Fixed Auth
  • Login when storage is full — signing in reclaims react-query cache and other regenerable local data so sb-api-auth-token can save; logout clears volatile caches to prevent recurrence.
Fixed Clinic CMS
  • Clinic access spinner no longer flashes on browser tab return.
  • Header quick actions respect subscription modules (clinic vs retail).
  • Legacy consult completion flags map correctly for New vs Follow-up visits.
Fixed Storefront
  • Checkout blocks notify-only and discontinued SKUs; credit sale hidden where not applicable.
Fixed POS
  • Sale return dialog accepts POS return permissions.
Fixed PIMS
  • Putaway page layout refinements.
  • Notify-only product toggle stays in sync after save.
Fixed Reports
  • Reorder suggested quantity uses remaining cycle days only.
Fixed CS Command Center
  • WhatsApp and CS routes handle object-shaped role permission payloads.

Known issues. Notify Me requires storefront notify-requests migration on each environment. MR reseed is a one-off legacy migration — new practices allocate from practice code automatically. SOAP and voice dictation defaults are per-doctor settings on Configure fields.

1.4.6

“Catalog & transfers refresh” 9 July 2026

Clinic CMS ships as the outpatient module with dashboard, appointments, queue, consultations, OPD billing, and a full Academy guide. Categories gets a KPI strip, five-column tree, and CSV import with a full Academy guide; large taxonomies load past 1,000 rows. Products list and editor are redesigned with async KPIs, Quick Add, sidebar-tab editor, and a new Products guide. Stock Transfers is action-first with Needs your action, triage pills, attention-only review, quick date filters, and a new guide.

New Clinic CMS
  • Outpatient module — dashboard, appointments day board, queue, consultation workspace, OPD invoices, and token/Rx printing under Clinical → Clinic CMS.
  • Practice setup — Settings clinic practices, locations, staff assignment (doctor/reception), Rx templates, consultation slots, fees, and OPD procedures.
  • Doctor tools — clinical fields, tags & favourites, diagnostic presets, and procedure suggestions in consultation.
  • Clinic CMS Academy guide — Diataxis tutorials, 22 how-tos, reference, and 30 screenshot scenes.
New Categories
  • CSV category import — page-header Import wizard for up to four hierarchy levels with preview and validation.
  • Categories Academy guide — Diataxis how-to, tutorial, reference, and screenshot gallery.
Improved Categories
  • Categories page redesign — KPI rail, five-column tree, status filter, and kebab row actions aligned to the handoff.
  • Accurate product counts on tree rows and delete dialog via paginated aggregation.
Fixed Categories
  • Large category trees — tenants with 1,000+ categories load fully (PostgREST pagination fix).
New Products
  • Products Academy guide — list, Quick Add, editor, filters, export, hub sync, and Sticker Printer screenshots.
Improved Products
  • Products list redesign — compact header, async KPI strip, toolbar/filters card, status pills, and sticky table header.
  • Quick Add — sectioned dialog with margin badge, Save & add another, and Create & continue.
  • Product editor — sidebar tabs, completeness ring, metadata chips in header, full-width layout; tab builder on Storefront tab.
  • Row actions streamlined — catalog view via product name; Quick edit, Edit, and Delete remain.
New Stock Transfers
  • Action-first layout — Needs your action (open transfers) and All other transfers (closed) with independent pagination.
  • Triage bar — Awaiting dispatch, In transit / receiving, and Needs review pills with live counts.
  • Attention-only view — Needs review and Filters toggle show flagged mismatches only; open-action section hides.
  • Stock Transfers Academy guide — triage tutorial, how-tos, and screenshot gallery.
Improved Stock Transfers
  • Quick date presets — Last 7 / 15 / 30 days chips beside active filters; Last 15 days added inside Filters.
  • Locations and Filters popovers — source/destination by store, status, type, product, attention, and custom date range.
  • Active filter chips with session + URL persistence; Review primary action on any attention-flagged transfer.

Known issues. Products list pagination remains 20 rows per page; KPI counts are tenant-wide. Sticker preview/print requires allowing browser popups. Stock Transfers dispatch/moving triage pills focus loaded rows; Needs review uses a server filter. Clinic OPD billing is separate from retail POS/FBR; doctors need clinic role plus practice assignment.

1.4.5

“GRN quick filter” 6 July 2026

GRN processing adds an inline filter to narrow loaded line items by product name or SKU, and defaults quantity entry to Pack with per-row Unit/Pack toggles unchanged.

Improved Goods Received Notes
  • Inline item filter — search box above the items table filters already-loaded lines by name or SKU; shows visible vs total count while filtering.
  • Pack entry by default — PO-loaded, draft-restored, and new rows start in Pack mode; each row keeps its own Unit/Pack toggle.

Known issues. Filter matches product name and SKU only, not batch number.

1.4.4.1

“PO pricing parity” 6 July 2026

Purchase Order line pricing is consistent across create, edit, view, and print — cost-based discount drives totals, margin shows two decimals, and discount % no longer drifts when focus leaves the rate field.

Fixed Purchase Orders
  • Discount % drift — entering 5% and tabbing away no longer rewrites to 5.002% when the rate column displays two decimals.
  • Line totals with discount — items table uses cost × (1 − discount%) so tax, margin, and line total match GRN-style pricing.
  • View and print — PO view and list print use the same pricing helpers as the form.
  • Margin on PO lines displays two decimal places.

1.4.4

“KPI cadence alerts” 4 July 2026

Reports v2 KPI cadence breaches now reach staff in the notification bell and by email (SMTP), with a tenant-scoped Recipient & Escalation Library. Goods Received Notes processing is clearer and stricter on quantities and payment filters.

New Reports
  • KPI cadence alerts — when a KPI breaches its threshold, admin-assigned recipients get an in-app notification (KPIs chip in the bell) and optional email via the shared SMTP relay.
  • Recipients per KPI — assign a tenant role or user with In-app and/or Email channels from the KPI Recipients tab (same roles as Admin → Access → Tenant Role Management).
  • Drill-through from the bell — open the KPI’s report route or Exception Center from the alert.
Improved Reports
  • Recipient & Escalation Library — lists only this tenant’s roles, shows members from User Role Assignment (users_roles), and which KPIs use each group.
  • KPI email delivery runs on a 30-minute schedule (in-app alerts are still immediate).
  • Operational KPIs — HMS demand hour row and hospital orders label renamed to Orders.
Improved Goods Received Notes
  • GRN processing UI refinements — clearer Save-GRN flow and Goods Received guide updates for staff.
Fixed Goods Received Notes
  • Bonus and quantity validated as whole units with pack preview so partial packs are not saved incorrectly.
  • Payment mode filter on the GRN listing applies correctly when narrowing the list.

Known issues. KPI email may arrive up to 30 minutes after a breach while the dispatch cron runs; in-app is immediate. WhatsApp KPI alerts and escalation tiers remain out of scope.

1.4.3

“Purchase return reliability” 23 June 2026

Large purchase returns complete reliably — batched stock lookups, all-or-nothing validation (including reserved qty), highlighted problem rows, and a save progress dialog so staff see validating, saving, and stock-update steps.

Fixed Purchase Returns
  • Batched inventory lookups — completing 100+ line returns no longer hits gateway 502/CORS failures from oversized stock queries.
  • All-or-nothing stock validation before complete — available qty includes reserved stock; duplicate lines on the same batch are aggregated; no partial quantity_out updates when validation fails.
  • Problem rows highlighted on edit with per-product stock messages; WMS error toasts restored when save fails.
Improved Purchase Returns
  • Save progress dialog on create and edit — phase label, X / Y counter, percentage bar, and step message (e.g. Saving item 45 of 139…); non-dismissable while save runs.
  • Save button shows Saving… and stays disabled until the operation finishes.

Known issues. Very large completes (100+ unique batches) can still take about a minute — progress is visible but total time is unchanged until stock updates are batched server-side.

1.4.2

“Stock transfer attribution” 23 June 2026

Stock transfers now record who cancelled an STR on the transfer record — same pattern as created, dispatched, and received — with a staff activity timeline on the view page, order-view attribution after cancel, and a four-column print layout.

Improved Stock Transfer
  • Cancelled By and Cancelled At on every STR — manual cancel, zero-stock dispatch, and rider zero-confirm all persist the acting user on the parent transfer row.
  • Transfer activity timeline — (i) icon on the STR view page shows who created, dispatched, received, or cancelled the transfer and when.
  • Order view STR list shows who cancelled a transfer and when after cancel from the order page.
  • Print layout — Created, Dispatched, Received, and Cancelled attribution boxes print on one row.
Fixed Stock Transfer
  • Historical cancelled STRs backfilled from audit logs where a cancel transition was logged; new cancels from the STR view or listing always set cancelled_by.

Known issues. Very old cancelled STRs with no audit log may still show Cancelled By as blank until manually corrected.

1.4.1

“Dispatch badges & polish” 22 June 2026

Printable Dispatch Station rider badges from tenant_riders, Orders Management product-picker filters, Ailaaj One invoice address on Bill to, and Academy link fixes so /docs/ cross-guides resolve.

Improved Dispatch Station
  • Printable rider badge card — name, phone, vehicle, warehouses, Ailaaj logo, and dispatch QR; opens from Admin → Operations → Shipping Methods (Riders tab) and loads live data from tenant_riders for a 4×6″ print layout.
Fixed Dispatch Station
  • Rider badge reprint reflects the latest Edit Rider row — badge fields are fetched from the database each time you open Rider QR.
Improved Orders Management
  • Product picker filter on the Orders list — select a catalog product by UUID instead of free-text search; removable chips for every active filter and aligned compact toolbar controls.
Fixed Orders Management
  • Product filter matches order_items by product_id when a catalog product is selected, with SKU fallback for legacy lines.
Improved Ailaaj One
  • Platform billing invoice print — Bill to can include the tenant primary store address alongside name and admin email.
Improved Academy
  • Docs build rewrites and validates relative guide links after Astro build so /docs/ cross-links resolve on deploy.

1.4.0

“Dispatch Station” 19 June 2026

A public dispatch kiosk for hospital runners — scan a badge, claim packed bags from the rack, start an own-fleet trip with a thermal sheet, and close at the warehouse wall QR with ward delivery credit and Ref# on every line.

New Order Management
  • Dispatch Station at /dispatch — three-step kiosk: identity → claim → start trip; works as a standalone URL or Sell → Dispatch inside the app.
  • Live Dispatch Board — Reports v2 supervisor view: rack backlog, trips out for delivery with wards, STAT pressure, On the rack supervisor tab, 7-day date range + search + pagination, and returned trips.
  • Academy screenshots for Dispatch Station and Live Dispatch Board use real shipped components with demo fixture data in the docs gallery (no live tenant data).
  • Rack claim board — Yours / Available / Taken tiles with Ref# (source reference), patient, MRN, ward · bed, and cold-chain markers.
  • Trip sheet — thermal print + preview lists each picklist; TRIP-XXXX label and CODE128 barcode for re-entry.
  • End trip — warehouse wall QR closes the run; picklists marked delivered with Handed to {ward} and exact delivery timestamp.
  • Dispatch APIs — identify, packed-picklists, resolve-picklist, start-trip, end-trip under api/dispatch/.
Improved Order Management
  • Scanner vs Camera mode remembered per kiosk browser; Scan another bag focuses the picklist input.
  • Clear errors when a bag is already on another runner's trip (not "not packed yet").
  • Uses existing picklist dispatch columns — assigned rider, tracking number = trip label.

Known issues. Kiosk PC needs a default receipt printer for trip sheets. Re-entry only works while the trip is still active.

1.3.5

“Stage heatmap” 18 June 2026

Operational KPIs gains an hour-of-day heatmap — see load and crew by stage and hour, open hour detail, and export Load / Crew / Load·op views to Excel or PDF.

New Order Management
  • Stage ledger heatmap on Operational KPIs — 24-hour grid with shift colours, Load / Crew / Load·op views, and click-through hour detail.
  • Heatmap export — Excel workbooks and PDF with view picker; row reorder and hide with saved layout.
Improved Order Management
  • Crew day totals use distinct operators across the filter period (footer and row Day column), not a sum of hourly headcounts.
  • Invoice creation and refunds attribute operators in Crew view; refunds hourly load repaired when compact RPC omits buckets.
Fixed Order Management
  • Heatmap footer Day operator total no longer double-counts the same person across hours when the period unique count is available from the API.

Known issues. Hourly footer cells still show distinct operators for that hour only; Day column shows period-unique staff. Apply four heatmap SQL migrations on dev and prod after deploy.

1.3.4

“Operations Intelligence” 17 June 2026

Two new Reports v2 screens for ops managers and warehouse leads — see how much work flows through each fulfilment stage by warehouse and hour, and which staff handled punch, pick, pack, dispatch, and delivery.

New Order Management
  • Operational KPIs — a fulfilment pipeline (punch → pick → pack → dispatch → deliver), hourly and daily load charts by store/warehouse, and Excel export for shift planning.
  • Operator Productivity — a staff × stage matrix with order or SKU view, role colours, idle filter, and PDF/Excel export for shift reviews.
  • Dispatch and delivery credit on picklists — who handed off to the rider and who delivered is stored going forward; historical picklists were backfilled where the system had enough data.
Improved Order Management
  • Picking load on Operational KPIs now matches real picking activity (picked lines), not an unused picklist timestamp.
  • Operational KPIs and Operator Productivity use the same stage definitions so volume and staff credit tell one story.
  • Hover hints on pending lines and pipeline stages explain what is being counted.
Fixed Order Management
  • Operational KPIs no longer showed zero for picking when picklists were actively being picked.
  • Operator Productivity no longer crashed on load when summary totals were still fetching.

Known issues. Some manual/HMS steps (SKU mapping review, ward liaison, QC sign-off) still show as Not tracked until those workflows are wired. One very old picklist may lack a dispatcher when no pack note exists — new dispatches record the signed-in user.

1.3.3

“Purchase Orders” 15 June 2026

A major upgrade to Purchase Orders on the Replenish Stock module — a redesigned list, create, and view, plus demand projection that suggests what to buy, in-platform send to suppliers over WhatsApp or email, and CSV bulk import.

New Purchase Orders
  • Demand projection suggests order quantities from the forecasting engine's seasonality-aware sales velocity, combined across the stores and warehouses you choose.
  • Send to supplier over WhatsApp (click-to-chat) or email, or download the supplier PO as a PDF — no integration to set up.
  • Bulk import — create many purchase orders at once from a CSV (one per supplier).
Improved Purchase Orders
  • Redesigned list, create, and view — a KPI strip, status pills, and a Draft → Pending Approval → Approved → Completed timeline; the KPI tiles follow the active store, warehouse, supplier, and date-range filters.
  • Editable line pricing — Discount % and Purchase Rate stay in two-way sync; net margin follows the pharmacy convention (trade margin + supplier discount).
  • Approving is now a two-click action from the list — open the inline editor, then Save and approve.
Fixed Purchase Orders
  • A purchase order can't be approved until it has at least one line item, and an approved PO is locked from editing to protect receiving.
  • Number inputs no longer keep a stuck leading 0, and clearing a line's quantity no longer deletes the row.

Known issues. Only products with sales velocity get a projection suggestion (new SKUs have none); a well-stocked product suggests 0 until its cover falls below your target days.

1.3.2

“CS Store WhatsApp” 12 June 2026

CS Command Center staff message customers on the linked store WhatsApp line; platform admins connect Evolution per store; tenant owners toggle notifications — with calmer background queue sync.

New Order Management
  • Per-store Evolution WhatsApp inbox — platform admins link an instance to each storefront store.
  • CS Command Center human chat sends and receives on the linked store WhatsApp inbox — not the Ailaaj One AI Bot used for marketing automation.
  • Tenant store settings — turn WhatsApp notifications on or off per store without exposing API credentials.
Improved Order Management
  • CS Command Center queue sync runs about once a minute while idle; tab switches no longer trigger a full reload.
  • Storefront warehouse and domain lookups are cached locally after first load.
Fixed Order Management
  • L1 admin CS chat auth resolves tenant from the active store.
  • WhatsApp chat history loads on Evolution instances where per-thread message filters return empty.

Known issues. Link the store in Admin → Tenant stores before CS chat uses that inbox; first open may take 1–2s while the thread is resolved.

1.3.1

“Smart Counter” 12 June 2026

A polish pass on the in-store sale screen — clearer till picker and End Session flow, a tidier cart and checkout, calmer out-of-stock handling, and fixes for session state after close.

Improved Smart Counter
  • Till picker — clearer store and warehouse selection, till cards with Open · your session, Free, In use, or Maintenance, and one-click resume or join on shared tills.
  • Opening balance pane — pre-filled from that till's last closing balance, with quick-amount chips and an optional opening note.
  • End Session cash reconciliation — clearer ledger, count by denomination or enter a total, Smart Validate, and ± Rs 10 balanced tolerance.
  • Focus mode — hide app chrome for high-volume cashiering (F11 or Ctrl/Cmd+Shift+F).
  • Check other warehouses — on an out-of-stock line, see which peer locations still have stock.
  • Show / Hide Counsellor — collapse the AI panel to give the cart more room; preference is remembered.
  • Cart and quick-add bar — cleaner line layout, trade-up ribbons, and keyboard navigation (⌘K command palette).
  • Out-of-stock lines — calmer styling with a Counsellor-forward substitute prompt instead of a hard dead-end.
  • Checkout, hold sale, coupon, customer search, recent sales, and returns — restyled to match the counter chrome.
  • Customer attach — search, select, or create a customer inline in the order summary row.
  • After End Session — return to the till picker with refreshed till cards instead of a stuck or blank screen.
Fixed Smart Counter
  • Till picker no longer stays on Open · your session after a close, and resume no longer loops when the session has ended.
  • End Session no longer flags an exact cash count as over/short because of rounding.
  • Check other warehouses now excludes the active till's warehouse instead of repeating it.

Known issues. Classification runner v2 ships separately for suggestion quality; no cashier workflow change required.

1.3

“Smart Counsellor” 8 June 2026

The AI selling layer on the Smart Counter — margin-ranked up-sell with clinical safety locks, a counter-wide substitution menu, “frequently bought together” cross-sell, and a way to report a wrong suggestion.

New Smart Counsellor
  • Trade-up ribbon surfaces a higher-margin equivalent under a cart line, with a ranked “+N options” popover and a Best-value pick.
  • Substitution menu turns an out-of-stock line amber and offers in-stock equivalents, ranked same molecule → different strength → same class.
  • Cross-sell rack surfaces “frequently bought together” items from the pharmacy’s own 90-day sales.
  • Report a recommendation lets a cashier flag a wrong suggestion without ever affecting the sale.
Improved Smart Counsellor
  • Up-sell ranks by gross margin, not the cheapest price — no ribbon shows unless the pharmacy earns more.
  • Clinical safety locks added: route/form and immediate- vs sustained-release are never relaxed.
Fixed Smart Counsellor
  • Out-of-stock items are no longer suggested as trade-ups.
  • Misclassified products no longer pollute suggestion groups.

Known issues. Combo-drug secondary strength is not yet locked.

1.2

“Order Management” 4 June 2026

Order-to-cash for every channel — capture orders from the counter, phone, WhatsApp, hospital, your own website and Shopify, then confirm, reserve stock, pick, pack, dispatch and invoice from one pipeline.

New Order Management
  • Multi-channel orders — counter, phone, WhatsApp, hospital, your own website and Shopify all land in one Orders list.
  • Execution: book stock (earliest-expiry first), reserve it against the order, and generate picklists.
  • Fulfillment pipeline — pick, pack, dispatch, then raise the sales invoice.
  • Pendings tracker splits unfilled lines into items already on the way (a transfer) vs. items that still need purchasing.
Improved Order Management
  • Auto stock-transfer raises a transfer automatically when the fulfilling warehouse is short.
  • Incoming purchase stock can auto-transfer toward warehouses that have orders waiting on it.

Known issues. Stock transfers are created automatically, but a warehouse still dispatches and receives them by hand. Customer confirmation is by WhatsApp and email (no SMS yet).

1.1

“Smart Counter” 3 June 2026

The in-store point of sale — search, cart and multi-payment checkout, till sessions, returns, FBR fiscal invoices, and the Rack Campaigns engine for promoting products at the counter.

New Smart Counter
  • Smart Counter sale screen — product search and barcode, cart, and multi-payment checkout (cash, card, credit) with discounts and coupons.
  • Till sessions with opening and closing balances and cash in/out.
  • Hold and resume sales, a returns flow, and a missed-sales flow.
  • FBR fiscal invoicing when the pharmacy’s FBR is configured, with thermal and A4 invoice printing.
  • Rack Campaigns — promote chosen products at the counter with staff incentives, audience rules, and Commercial Selling reports.
Earlier releases are archived in the changelog.