Hello Sixtel,
The entity table is a special table :) It encompasses the Customer, Vender, Employee and Other name tables into one. So you can think of it as the Customer being a ‘subset’ of the Entity table for instance. The reason this is done is so that you can for example be able to write a check to an employee, to a vendor or even to your customer in the case of a refund. If the entity table didn't exist then you wouldn't be able to do that and my many other cross-table functionality that is possible. It is done this way behind the scene in QuickBooks as well. The entity table cannot be modified, instead modification can be done to the 'subset' tables.
Contact is not a subset of Entity. The Contacts table is a Method only table. It has linked fields from the Entity table, but they are separate fields. The Contacts table hold all of your contacts and does not sync to QuickBooks.
Think of using the Entity table for data retrieval. So if you have a dropdown and for instance you wanted to filter vendor and employee then you can use the Entity table and show all your vendors and Employees, otherwise you wouldn't be able to see both types in one dropdown. For data entry it is best if you use the specific or 'subset' tables.
It is not recommended that you create a screen based off entity table. It would be best if you did that via the subset tables.
-Inder