When should my module be Entity type?

Every module need not necessarily be an Entity type and the decision should be made wisely by the developer. If any of the following condition are met, then you should build an Entity module.

  • If module represents a Business object (like, Account, Contact, Lead, Payment)

  • If module requires access control (User/Group Assignment, Sharing Rules, Profile Access).

  • If module record has field(s) that is directly / indirectly linked with other Entity module.

  • If Workflows, Reports are required for the module.