Probably a good fit for the new Room Lighting app. From there, you can set modes based on a mix of things. Something along the lines of:
- Opening - triggered by motion during a certain time window or when the first switch is turned on in the morning
- Business - set by time that they open for customers
- Sunset - Set by sunset
- LastCustomer - Maybe designate a switch or a button to trigger this one
- Shutdown - Again...designated switch
As for the sporadic issues, I've had similar experiences and fixed it one of two ways. Enabled metering to space out the commands and/or disable optimizations.