Dealing with different types of accounts

We have two very distinctive sets of accounts and contacts. One is our partners who execute the work, the other is the clients. We need very specific information on the account and contact modules for partners that is irrelevant for clients and vice versa. If we pile on custom fields in Accounts or Contacts, it will be confusing as half the fields will need to remain untouched depending on what type of account/contact you create.

We thought that duplicating the account module, for instance, could give us the flexibility to create two distinct interfaces. We have not found an easy way to do it. We found this on the web:

“The easiest way I can think of would be to use the Export Customizations function in Studio. This will give you a Module Loader package for installing customizations from the modules you select. If you choose Leads, then you can unzip the package, go through all the files and change the module name to your custom module, then rezip it. Then you can upload and install it to get the customizations copied over. Let me know if you have any questions about this.”

Does anyone know of easy or detailed instructions on how to duplicate modules? Any other way to deal with the problem?

Thank you,


If you use module builder when you create a module if you choose the company or contact type it will give you fields similar to the account or contact module.

Also if your confident in building the module using code rather than studio then all the information for all the fields for accounts can be found in modules/Accounts/vardefs.php. If you create a new module you could use the contents of this file as a starting point for the files you place in custom/Ext/modules/YourModuleName/Vardefs to create all the fields for accounts.

The only issue I see around having 2 new modules is you may find you have to write some custom code to get things like converting leads to your new contact module to work.

The other option is to add all the fields as custom fields to accounts/contacts and have a field to store which type of account/contact it is, then using javascript you could hide the fields that aren’t required depending on which type of account/contact it is. The only drawback to this is listview will display accounts/contacts of both types, so you will need to choose fields that are common to both to be displayed there.