Systems Need to Be Flexible but Not Too Much!

A system is designed to create efficiencies and ease and, most importantly, predictable outcomes.

People should not have to think through each step. Systems need to be living organisms, where people are empowered to modify the systems (with oversight) to create an environment of constant improvement.

When your business creates an environment of problem-solving people who are systems-focussed and problem solvers, then things get dynamic and exciting.

If you step too far outside the system – with too many exceptions – then you no longer have a system!

Here is an example of systems at work that should not be modified.

Online Sales Order-Inventory System

We recently designed a system that synchronizes sales orders from an online ordering system into the company’s inventory system.

The order then decreases the inventory for each item sold and once marked complete, then exports all the completed sales orders into the core accounting system.

From inside the core accounting system the sales orders can now be batched emailed as invoices, and the customer can then pay online with a couple of mouse clicks.

One of the challenges we had to overcome is that the online sales order system has as the main contact the person who is initiating the order.

The person who initiated the order online is very often not the person who needs to get the invoice and pay it. An example would be an office manager ordering office supplies online is the one who gets confirmation of the order, and then the accounts payable person would get emailed the actual invoices to pay later.

Initially the sales orders synced over with just the email for the person who placed the order online.

What we did was add a default email for each customer inside of the inventory management system that was for the accounts payable person.

This default email then got exported to the core accounting system and with a few mouse clicks the invoices were batched emailed to the correct person!

Here is a Summary of this Beautifully Designed System –

  1. Customer enters order online
  2. Customer gets confirmation of order
  3. Inventory system receives (behind the scenes) each order and auto depletes the inventory being sold
  4. Sales Orders are batch completed (after some minor tweaking) in the inventory system
  5. Sales Orders are auto exported to core accounting system and then batch emailed to the customers
  6. Customer pays with 1-2 mouse clicks

So here is the breakdown. For some customers they wanted the invoice sent to multiple emails from the core accounting package (accounts payable, order person, etc.).

No problem, we can do that inside the core accounting software with the tick of a box.

Then we discovered that on subsequent orders from the same customer the box gets unticked.

Which meant that the only person who gets the invoice is the accounts payable person, which is actually the most important person, as they will pay the bill.

To send an email to multiple recipients would result in someone checking each invoice against a master list to see who gets the invoices.


Keep in mind that the system is designed to batch email 50 or so invoices with one mouse click!

So, What to Do?

Do you accommodate those few customers who would like an invoice sent to multiple email addresses, or do you just send each invoice to the accounts payable person?

Well, here’s the only way this can work as a system – just send to one email. We can then inform each customer that we will send the invoices to the email of their choice, and if they choose to forward to 12 people, that is their choice.

To step outside a perfectly functioning system to accommodate a quirk with a handful of customers does not make sense.

So, the morale of the story is – create systems to be as flexible as possible, but don’t deviate from  core functionality that will cost you hundreds of man-hours to manage.

Oh, and make sure you educate your customers, so they know how the system works and what to expect.

Thanks for reading…