Version History

mSupply v5.04 (2021-08-23)

New Features

See our docs to read more about our new features!

For everyone

  • The asset module now has reporting capability [9052]
  • Add multi-select and delete to backorders for individual Item and customer [9074]
  • Add pack unit to Add/Edit supplier invoice line screen [8891]
  • mSupply now shows an alert before closing mSupply client due to user inactivity [4070]
  • You can now get to mSupply dashboard through the mSupply navigator! [3904]
  • Add new stock variance report showing all lines [9152]
  • Requisition reports calculated Supplied quantities using number of packs rather than number of units [9415]

For Chemonics Niger

  • Chemonics Niger: proof of delivery information to be sent to proof of delivery app [9207]

For Kiribati

  • Vaccination programs: Allow to edit confirm date and vaccinator for finalised prescription [9055]

For Nigeria Kaduna

  • Add new current stock report [8968]
  • Sell price on customer invoices must come from the catalogue price, not the batch’s sell price [8964]
  • Requisition import: required for Kaduna [8943]
  • Update price list report: provide an additional option to update to the maximum price of current batches in stock. [8965]

For Samoa

  • Add new prescription report for Samoa based on transaction categories [8881]


  • Alert: Need to change alert while deleting a line in repack [9119]
  • Vaccination programs: Add ui for adding/editing/disabling medicine_administrator (vaccinators [9107]
  • Find goods received window to have more search options. [8963]
  • Need a way to ignore ColdChain Unacknowledged Breach notifications on the server [8947]
  • Add stocktake details and adjustment reasons and comments to Stock Variance report [8847]
  • Sidebar/tab for customer “cash receipt” and supplier “payment” in the [transact]Output listbox [8829]
  • Enabling the “Count of Sync” in mSupply Dashboard [8249]
  • Myanmar: changes to National Quarterly report to accommodate regions [7445]
  • Needs to prevent a runtime error be thrown at startup when json file for the scheduler is absent. [4989]
  • Clarify PO view [2202]

Bug fixes

  • Remote patient lookup was broken [9377]
  • Aggregator ID field has gone negative [9356]
  • Stocktake on ‘Collector’ store can be edited [9260]
  • Issuing service item > Its lines Sell price does not get updated [9099]
  • excelSheetReadRow method does not handle Blank type cells [9060]
  • Sussol Admin : Scheduler window adding Parameter key when it is not necessary and Scheduler fails to run [8966]
  • Can’t change password or language without the Add/edit users permission [8922]
  • Solomon NMS > Custom Usage report lost ETA calculation [8901]
  • Runtime error when updating kit items to stock on a goods received line [8868]
  • Runtime error when viewing kit details on a purchase order line [8867]
  • Stocktakes filtered by Master List should not include zero stock lines [8846]
  • AlternateHTTP server sometimes randomly responds with a 400 [8845]
  • Deleting a sync site in the Preferences Synchronise window doesn’t actually delete the site record [8826]
  • Keyboard control when logging in [8797]
  • Keyboard control when switching stores [8795]
  • Correction of VEN ‘N’ classification [8602]
  • Confusion around VEN classification [8601]
  • Any values given in sync IDs disappears after updating anything on Add/Edit sync parameters [8298]

Read more »

mSupply v5.03 (2021-07-5)

New Features

See our docs to read more about our new features!

For everyone

  • Can now add a new transaction from the transaction list window [6212]
  • An easier way to copy permissions across stores! [7901]
  • The value in the ‘their_ref’ field in Purchase orders is now pulled across to the Supplier invoice [8396]
  • Dashboard updates are now improved to allow more frequent data pushes [8245]
  • Add import method for importing regions from a spreadsheet [8905]
  • Newly added requisitions (request/response) now appear at the top of the listbox [8637]
  • Ok & Next button added to asset input form [8470]
  • Can now capture weight per pack on supplier invoices [8469]
  • Can now add a Universal Codes column to the Item List when customizing the columns [8440]

For Fiji

  • For Fiji, if Inpatient selected, allow selecting the Ward from a dropdown list [8559]
  • Record if patient has FMP card, and record card number [8548]
  • Show items that are not supplied and their EDD in customer invoices and supplier invoices [8398]
  • Change the ‘Ref’ label to read ‘FMIS Reference’ on purchase orders for Fiji [8397]

For Invitech

  • Invitech: new report for export to Sage [8668]

For Tonga

  • Extend API for Tonga Vesalius integration [8164]


  • Tighten checks before deleting a response requisition [8349]
  • Update patient form to not overwrite the [name]barcode field [8918]
  • Authoriser configuration forms redo [8895]
  • Patient API barcode filter [8840]
  • Customer requisition new authorisation columns [8782]
  • Asset import > new propsed status not visible with existing current status [8632]
  • Improve user permissions report [8585]
  • Patient and Prescriber remote search forms should use pagination parameters when querying [8557]
  • When creating a new sync site from a store, the responsible user should have to be able to log into the store [8395]
  • Include ‘never order’ items in Item usage report by default [8372]
  • Remove firedaemon pro from server installer [8045]
  • Remove locallist system and convert all locallists to masterlist, deprecate unnecessary tables and fields [7858]
  • Customer and supplier invoices: More information needed on item selection window [7560]
  • Improve data entry form for requisitions [7487]
  • Dashboard: all exports to use queue table [7102]
  • Dynamic scheduler – add apply change button to save all edited settings for the selected scheduler [6881]
  • Item build- replace the last remaining subform in mSupply with a listbox [5943]
  • Able to make supplier hub purchase orders with no Months to Supply, Look Back Period, AMC or Suggested Quantity [5319]
  • Stock line while issuing to be sorted by expiry date, Location.priority, Location, batch number, Available [3188]
  • Modifying item visibility should be logged [2514]
  • Can still edit the ‘User can…’ fields when a user is assigned to a group [2370]

Bug fixes

  • Purchase order: the position of buttons moves with changing the window size [9011]
  • Customer invoice : fix altered selection of [trans_line] records [9009]
  • Supplier hub catalogue updates not being posted to the Supplier hub server [8984]
  • Runtime error when adding local charges to a supplier invoice with lines [8915]
  • Creating a new name generates runtime error. [8858]
  • Auto-upgrader does not check the minimum window requirement [8812]
  • Store cannot be renamed without changing the store code [8811]
  • Asset import: preview table “Field” column takes column headings from the spreadsheet. [8803]
  • Asset import: a few minor issues [8802]
  • Mac signing and notarisation layout [8785]
  • Stocktake report doesn’t show added cost to adjusted quantity of an Item [8778]
  • Build: status dropdown list is populated with the current status [8771]
  • v4 router should return 405 and 500 HTTP statuses appropriately [8757]
  • Alternate HTTP server default port should be different from normal web server defaults [8736]
  • Supplier invoice and goods received note: weight per pack is not saved against stock like volume [8729]
  • Purchase order (Outstanding lines): “OK & Next” button doesn’t open new purchase order window [8719]
  • ‘View and edit’ temperature breach configuration permission (under Vaccines) is misleading [8698]
  • Customer assigned master lists: incorrect alert when printing [8688]
  • Updating group permissions doesn’t update a logged-in user [8687]
  • Clicking cancel button in the new build window just saves record even if there are no BOM items are added [8648]
  • Generic listbox: horizontal scrollbars always showing by default [8636]
  • Item properties are not being saved when an item is assigned a UC [8628]
  • Rest API Endpoints “Page not found” response message should return a 404 status rather than a 200 [8615]
  • Name visibility setting: buttons don’t work correctly in a non-sync system [8610]
  • Generic Listbox: margins are not right on form [8598]
  • When printing a requisition as an EMAIL PDF. The subject of the email displays blank dates. [8570]
  • Assets: changing a field label does not change the column header in the assets table [8567]
  • Supervisor can update price list despite the alert [8507]
  • Assets: when a property name is changed it doesn’t automatically update the column header displayed in the asset output listbox [8472]
  • Incorrect calculations for AMC and MOS in customer requisitions created from the supplier hub [8471]
  • The supplier/customer field is non-enterable when creating new General requisitions (non-program) [8443]
  • Cannot Make Patients or Prescribers on Primary Server [8421]
  • REST_validate_auth_header() returns true if no auth header supplied [8407]
  • Expiring Items report with locs (custom Nauru report) does not correctly sort locations [8390]
  • Nbr of Skipped records variable doesn’t seems to be reset at the end or start of importing location [8334]
  • When importing you can import blank codes in Abbreviation and others [8333]
  • Updating values after Sorting the fields in Recod Browser doesn’t work properly [8271]
  • Store code and name can be changed to the same name and code as the existing store [8064]
  • Item code ‘already in use’ warning should show the in use item name/code (not the item name being added) [7821]
  • Edit Store OK & Previous and OK & Next buttons do not select the correct stores [7807]
  • Splitting stock lines automatically assigns a barcode to the new stock line regardless of whether barcodes are in use [7769]
  • Log message for backup is confusing [7581]
  • Against Liberia cloud server > Viewing preference window throws runtime error with window freeze clicking OK [7551]
  • Purchase order: “OK & Next” button doesn’t open new purchase order window [7477]
  • The number of total records to export is partially hidden. [7476]
  • Replace Ordered Item report with slightly amended Purchase Order Lines with discount [Excel] report [6412]
  • Response requisitions: when creating for a non-store customer, their master list is not available when using the “Add from master list” button [6101]
  • Can delete patients with related insurance policies [5986]
  • Inconsistent behaviour when creating a calculated Purchase order with and without ‘Separate order for each supplier’ turned on [5889]
  • The tender module need more translations [4336]
  • Supervisor login grants access to all stores [3888]
  • Name import: needs to work for patient and benchmark suppliers [2468]
  • Choosing This half-year in the date range chooser displays Null dates when dates format are YYYY-MM-DD [2388]

Read more »

mSupply v5.02 (2021-05-07)

New Features

See our docs to read more about our new features!

The Asset Module

mSupply now has an asset management module which can be used to manage any equipment and items used to support a health supply chain, like vehicles, fridges, and freezers.

You can now use mSupply to manage these assets by storing:

  • when the asset was purchased as well as when it was sold or thrown away
  • current location and maintenance schedule
  • current value and depreciation

Explore the assets module further here.

For Niger

  • POD: Customer invoices: on confirmation send data to an external app for Niger 7591

Making setup easier

  • Add a menu option to delete Temp folders 7736
  • Adjust Setup Factory installer to detect Regional settings, and not install until a valid region is chosen 7655
  • Adjust setup factory to install mSupply.exe with the checkbox “Run this program as an administrator” 7260


  • Allow uploading and displaying documents onto a purchase order 8090
  • File > Preference > Synchronisation tab: Add a search filter for the sync sites list 8136
  • Can now print a report for master lists 7157



  • JSON Schema updates [8388]
  • Show warning on opening “nw” SIs if they’re older than the store receiving it [8201]
  • Incorrect hub error message on refreshing hub config (v5) [8109]
  • Update hub config to HTTPS (v5) [8106]
  • User should be able to create a store from a name seamlessly (without unfinalised stock transfer checks) [7695]
  • Single user SYNC system to only upgrade to the mSupply server version. [7464]
  • Allow to read requisitions in a sync set-up cloud datafile [6728]
  • Requisition to be saved at opening [3777]

Report improvements

  • Nigeria GHLI: Split column in delivery note report [8058]
  • Make Suggested order quantities report suitable for Supervisor Mode and pivot table friendly [7083]
  • Make Item Usage report suitable for Supervisor Mode and pivot table friendly [7073]
  • Excel error producing Purchase order vs good received broken down by batches [6410]

Bug fixes

  • Store visibility can be changed in satellite with All-on/All-off button [8616]
  • Lao localization unsupported for the 4dv18r5 on the Windows [8589]
  • SI: Buttons in the prompt for asking “Delete” works oppositely. [8546]
  • Deleting a stock take can also delete [item_lines] which create runtime error. [8515]
  • Alert not showing when opening “nw” SIs if older than the store receiving it [8427]
  • Update locking in store creation from name process [8370]
  • When creating store from name, finalising pre-existing invoices doesn’t get finalised [8363]
  • Right after duplicating an item, there is a strange behavior with opening any other item details except for the newly duplicated one [8359]
  • Store creation- “use existing name” should not be checked by default [8346]
  • Item to build button not working in New build [8282]
  • Disconnecting lines in Niger Package label report [8252]
  • Store is active on 2 different sites [8179]
  • Sync halt: Mobile sync stops after fetching 10 records at a time even there are many waiting records to pull [8161]
  • Build reports not showing individual items on the same print form [8154]
  • Remove local variable from SRP report [8084]
  • Requisition request: the line max number is checked in the normal order in spite of no need [8062]
  • Name supplying store ID holds the orphans store ID [8057]
  • Store input form: incorrect behaviour of “Cancel” button in alert [8039]
  • Warning message for ad hoc items opens too many times [8007]
  • Unit & extended prices show wrong figures in the ET GR report of Sames [8000]
  • GR Consignment receipt report : An order that is received by multiple batches is not properly represented. [7997]
  • Universal Codes: new datafiles are missing item properties [7944]
  • Registering a sync datafile should remove any dud sync URLs [7922]
  • Check sync connection button should be available without unlock code [7921]
  • DDL does not show the proper list when user adds the new note on the Supplier/Customer input [7608]
  • Purchase order list: can’t order by supplier [7561]
  • Server only returns data for the first of multiple stores on a site [7070]
  • Deletion of store leave records go orphan [6797]
  • Some translations needed on importation form [6583]
  • “Show location type” is not available in the item menu when logged to a dispensary [6539]
  • Make Transactions > Invoice line with donor report suitable for Supervisor Mode + other issues [6312]
  • Deleting [store] can delete [name] related to customer invoices [6127]
  • Creating a new sync data file through sync write wrong version [2197]

Read more »