The challenge with computer validation is to allow ALL values user require across all jurisdictions and use cases yet still provide checking more valuable than other features which could be added to Manager with similar programming effort.
Several of the checks you listed are already in the ideas list.
Similarly
Clients can have very similar names and addresses. Double entering contacts in Manager is sometimes used to accommodate multiple values of another parameter eg customer & supplier, or multiple addresses etc. As a result what is an invalid duplicate customer is not that simple across all jurisdictions & use cases.
Instead in Manager when entering a invoice you can have a second browser tab already open showing your customers in Manager. In that tab you can search and add customer whenever required.
On that we disagree.
Imo it is a complete waste of time and grossly detrimental to overall program functionality for a developer to try to incorporate every feature every user thinks they need.
A business must take responsibility for their own destiny. Which included deciding what is their market focus and building that business. Peripheral business can be accommodated and there is no need to kill niche market opportunities by telling them they are not core business, however compromising core business by complicating the program or distracting program development on peripheral issues is simply bad business management.
Listening to a broad range of view is useful however ultimately a program developer must trust their own vision for their program. Conversely users clearly describing what they would find valuable in the program can be constructive however ultimately, with off the shelf software, the users only real choice is to use the product on offer or choose a different product.