Upgrading has caused serious issues

First, once you have used a data file with a newer version, you should never use it with an older version, as newer versions sometimes convert the data structure to accommodate new features. There is no source for older versions of the program unless you saved it when you updated. All versions of Manager and its data files are backwards compatible, but not necessarily forward compatible.

Second, your post is unclear in some respects. You mentionnon-inventory items, but write about selling widgets. The exact situation may not matter, since inventory and non-inventory items are now handled the same and appear in commingled lists for selection.

Third, as for why the restriction you are experiencing happens, it was always meant to be this way, but people were misusing the program. Inventory accounts are built-in control accounts, made up of subaccounts for individual inventory items. When things are parceled out on a random basis, many internal problems crop up. So the ability to do that unexpected thing was removed. Since non-inventory items are handled in very similar fashion, they are subject to similar restrictions.

But the bigger problem is you are following unorthodox procedures. You should not be using sales invoices in connection with advance deposits or prepaid income. A sales invoice records transfer of ownership of an inventory item or signifies completion or delivery of goods or services for non-inventory items. In other words, for either inventory or non-inventory items, you should not be raising a sales invoice unless the income has actually been earned. If you are requesting a deposit, you should use a sales quote, which might be renamed as a pro forma invoice. You might look at these Guides:

https://forum.manager.io/t/creating-sales-quotes/7238

https://forum.manager.io/t/customer-deposits-and-advances/7093

Once actual delivery has occurred, then you can convert the quote to a sales invoice, which creates an account receivable. If there have been advance deposits by that customer, they will be applied to the invoice automatically, lowering the balance due. Final payment is recorded by receiving money against the account receivable. For what you have described, there should be no journal entries involved. In fact, journal entries cannot be used to record money coming into the business.