Off the shelf is defined as “not designed or made to order but taken from existing stock or supplies”. So something like Sage 50 software.
Generic Software is defined as “software that can perform many different tasks and is not limited to one particular application. For example, a spreadsheet application is generic because it is useful for multiple purposes without modification, such as a calculating tool for engineers or a finance tool for accountants.”.
So off the shelf is the opposite of bespoke software and can be software used for a particular purpose. Generic is used for general things by various users.