Archive for June, 2020

Security Enhancements in v4.25

Security is our number one priority here at MIDAS. We constantly strive to ensure our software remains secure, and provide users with a range of tools to help keep their MIDAS accounts and data secure.

We’re further enhancing security in MIDAS v4.25 and introducing a new admin setting.

New & Unfamiliar Login Notifications

A new “Alert users upon logins from unfamiliar devices” setting is located under MIDAS Admin Options → Manage MIDAS → Security.

With this setting enabled, a user account logged into from an unfamiliar browser/device, will trigger an automated email notification to the account holder.

Email Notification alerting user to an unfamiliar login to their account
Email Notification alerting user to an unfamiliar login to their account

This email notification is customizable through a template via MIDAS Admin Options → Manage MIDAS → Templates. The default notification provides details of the browser, operating system, and IP address of the new login. It advises that the notification can be safely ignored if the new login was genuine, or what to do if the user doesn’t recognize the login.

Obviously for these email notifications to be sent, your MIDAS system must be correctly configured for sending email.

Other “Under The Hood” Security Enhancements

You’ll often see “Security Enhancement” in the changelog for our MIDAS software. This is nothing to worry about, and it’s part of our pro-active approach to security.

We routinely make small changes to improve and “harden” our software against a variety of threats.

One of the security enhancements we’ve made in v4.25 is to drop usage of the “Math::Random::Secure” Perl module. Perl – the language that we develop our software in – is capable of natively generating random numbers. MIDAS uses random numbers for a variety of things, including password generation and unique session tokens. However, random numbers natively generated by Perl are not “cryptographically secure”. As such, we’ve been utilizing the “Math::Random::Secure” module to ensure that random numbers generated by MIDAS were cryptographically secure.

The developers of “Math::Random::Secure” haven’t updated it in over three years. Whilst the module still functions, it depends upon another module (Crypt::Random::Secure), which itself depends upon another module (Any::Moose) which has since been deprecated.

So for this reason, and also for performance reasons, MIDAS v4.25 now defaults to using Crypt::PRNG instead. If this Perl module isn’t available on your server, MIDAS will simply revert back to Perl’s native random number generator. However, it’s really easy to install Perl modules, and so for enhanced security we’d recommend installing Crypt::PRNG.

Dropping TLS 1.1 support for cloud-hosted customers

TLS stands for “Transport Layer Security” and is a mechanism used to facilitate secure connections and communications over the internet. To date, there have been three versions of TLS, each more secure than the last. The latest version of TLS is 1.3. The original TLS 1.0 version is considered “weak”, and no longer supported by modern browsers. We previously dropped support for TLS 1.0 on our servers back in July 2017.

To coincide with the release of MIDAS v4.25, we’ll be dropping support for TLS 1.1 connections to our client servers. Our client servers will continue to support both TLS 1.2 and TLS 1.3 secure connections.

Dropping TLS 1.1 support should have no noticeable impact for regular users of MIDAS. We’ve already dropped TLS 1.1 support on our website. If you’re reading this post, then you’ll still be able to access your hosted MIDAS system once TLS 1.1 support is dropped.

However, if you’re a cloud-hosted MIDAS customer utilizing the optional MIDAS API then you may need to take action. Please ensure that your applications and the underlying programming language you develop in can support (and are correctly configured for) TLS 1.2/1.3 connections.

If your applications/programming languages do not support at least TLS 1.2, your MIDAS API calls will begin to fail once we disable TLS 1.1 support.

Please refer to the vendor of your programming language if you’re unsure whether it supports TLS 1.2/1.3, or for assistance enabling such support in your development environment. This doesn’t affect API users interfacing with a self hosted MIDAS system.


These are just a few of the new and improved features for MIDAS v4.25. Please see this post for details of other new features you’ll find in v4.25.

Reddit You can also ask questions and discuss the new features of v4.25 over on Reddit.


Invoicing Improvements in MIDAS v4.25

If you’ve been following our recent posts, you’ll know that we’re introducing a whole host of new features for MIDAS v4.25. Many of the new and improved features in v4.25 relate to invoicing.

There’s a lot to take in, so we thought it would be useful to summarize the new and improved invoicing features of MIDAS, with links to posts with more information.

In addition to the above, there’s a handful of smaller invoicing improvements worth noting too:

Updating Finalized Invoices Now Allow Updating Visible Notes

Once an invoice is first printed, or emailed to the client, MIDAS considers the invoice “finalized”. The content of finalized invoices cannot then be changed. However, MIDAS does allow you to update the paid status of the invoice at any time. Additionally, you can also add internal notes at any time. Internal notes are not visible to clients on actual invoices.

From v4.25 we’re now also allowing you to modify the “visible” notes section on invoices – even after they’ve been finalized!

Multiple Identical Items On Invoices Are Now Consolidated

MIDAS now consolidates identical items on invoices. For example, say you’re adding a booking across two venues (rooms), each of which requires a “CD Player” resource in it.

When invoicing for these bookings, MIDAS would previously list the two venues separately and the two resources separately.

Now, MIDAS will identify these instances and combine items accordingly. So now instead of having two lines on an invoice both for a “CD Player” and both with a quantity of 1, they’d be a single “CD Player” line with a quantity of 2.

Itemized Invoice Notes No Longer Include Empty Notes

The visible “Notes” section on invoices can be configured to be automatically populated with the content of a booking field. For instance, you could set the “Booking Notes” to automatically appear in the “Notes” section of the client’s invoice.

If multiple bookings appear on the same invoice, it could get confusing as to which booking the invoice notes relate to. That’s why we’ve previously provided an “Itemize Notes” option. When enabled, each item on the client’s invoice with an associated note is indicated with a reference number. This appears on the invoice line it relates to, and then also in the Notes section below.

If an item had no notes associated with it however, it would still be given a reference number. This could be just as confusing if none of the bookings had notes. You’d end up with a string of meaningless numbers in the Notes section, like [1] [2] [3] [4] [5]

We’ve sorted this out for v4.25! Now, only bookings with notes will be numerically referenced if the “Itemize Notes” option is enabled.


These are just a few of the new and improved features for MIDAS v4.25. Please see this post for details of other new features you’ll find in v4.25.

Reddit You can also ask questions and discuss the new features of v4.25 over on Reddit.


Improvements To Cancellation Invoicing

We’re introducing a whole host of new features for MIDAS v4.25. One area that’s had a big overhaul for this update is invoicing.

The Cancellation Invoice features of MIDAS automatically generate a charge for clients if their bookings are canceled at short notice.

This charge may be in the form of a fixed amount, or as a percentage of the total cost of their booking.

These appear on an invoice which may be printed or emailed to the client, and which they may pay online.

As mentioned in a previous post, we’re improving Cancellation Invoices for v4.25. Now you’ll be able to set a specific tax rate for all your Cancellation Invoices.

Additionally, we’re adding a new option to automatically increase cancellation charges for bookings cancelled at even shorter notice.

Increase cancellation charges for bookings cancelled at even shorter notice
Increase cancellation charges for bookings cancelled at even shorter notice

For example, you could configure a 20% cancellation fee if a booking is cancelled less than two weeks before it’s due to take place, and increase this to 50% if cancelled less than one week before.


These are just a few of the new and improved features for MIDAS v4.25. Please see this post for details of other new features you’ll find in v4.25.

Reddit You can also ask questions and discuss the new features of v4.25 over on Reddit.


Merge Invoices

One area of our software that’s had a big overhaul for MIDAS v4.25 is invoicing.

In this post we’ll take a look at a new tool we’ve added to MIDAS allowing you to “merge” an unsent invoice into another unsent invoice.

This will allow you to combine multiple unset invoices for the same client.

Simply view the invoice you’d like to merge into another, and click the “Merge Invoice” icon.

You’ll then be shown a list of all other unsent invoices for the same client.

Merge a client's invoice into one of their other existing invoices
Merge a client’s invoice into one of their other existing invoices

Select the invoice you’d like to merge into, and click “Merge Invoice”.

Items on the original invoice will then be added to the selected invoice, and totals updated accordingly.

The original invoice will then be deleted from the system, and a corresponding audit trail added to the Recent Activity log.


These are just a few of the new and improved features for MIDAS v4.25. Please see this post for details of other new features you’ll find in v4.25.

Reddit You can also ask questions and discuss the new features of v4.25 over on Reddit.