Salesforce has vast default capabilities to help you manage your sales and customer service. However, as a Salesforce partner with 11-year experience in CRM development, we know that unique business needs can be fully addressed only with Salesforce customization services.
From our article, you will find out about the main Salesforce customization types, problems solved with customization, and tips on the efficient management of the customization process to ensure its overall success.
Types of Salesforce Customization
There are 2 ways of tailoring a Salesforce solution to make it reflect the live business processes of a particular organization with different levels of impact on the said solution: configuration and customization.
Configuration implies tailoring a Salesforce solution with “declarative” or point-and-click tools, which do not require programming skills. A Salesforce admin can deal with configuration successfully. The changes that can be made to the solution’s user interface (UI) or data model (the way data is stored in a Salesforce solution) within configuration may include:
- Creating new objects and fields.
- Creating new tabs and apps (which are actually a group of tabs).
- Creating validation rules to verify that data entered in CRM meets a company’s internal quality standards.
- Enabling default email templates.
As for customization, it’s a more complex activity performed when getting certain functionality with configuration is impossible. Customization implies deeper tailoring of a solution with code, and it is performed by a Salesforce developer. Possible customizations may include:
- Creating custom processes, e.g., for the calculation of expected revenue/taxes.
- Enabling bulk operations, which imply processing large volumes of data.
- Enabling custom email templates created with Visualforce, for instance, for invoices and warranty emails management.
As a rule, customized Salesforce solutions combine both the options (configuration and customization). To maintain an optimal balance between them, it’s advisable to start with configuration, leveraging default Salesforce capabilities and tools in full. As soon as the need in deeper changes in a Salesforce solution arises, and those needs can’t be fully addressed with configuration, it’s high time for code-based customization.
Hampered business processes due to the lack of automation
You can spur your employees’ productivity and tangibly support their sales and customer service activities by automating certain business workflows.
The basic level of automation can be achieved with configuration, which allows creating workflow rules and approval processes using the default Workflow and Approvals functionality, the Process Builder or the Flow Builder. Automating sales and customer service workflows with these tools can manifest in, say, sales managers getting emails about stuck and closed deals, and sales reps being notified about the deadline for the opportunity processing. Another use case made possible with the configuration is automated field updating after the related fields are changed. For instance, when the status of a service case changes to “Closed”, it may trigger the appearance of the actual closing date in the relevant field.
If there’s a need to automate complex business processes, developers resort to code-based customization. Using Apex code, they can create multistep custom processes, including those of approving purchase orders and discounts, calculating revenue, discounts, and taxes.
Although new Salesforce UI called Lightning Experience is generally user-friendly, default page layouts may not correspond to your employees’ needs in full. To increase the convenience of CRM use, you can configure page layouts, arranging your fields, tabs and apps in the order suitable for your business workflows.
If you’d like to introduce substantial UI modifications, like creating a branded UI, which entails making changes to every Salesforce page, you should opt for deeper customization with Lightning Components and Visualforce. It will give your CRM interface a unique view completely correspondent with your UI/UX requirements.
Inefficient reporting due to the lack of reports’ and dashboards’ visibility
As a basic step of managing your reports and dashboards, you may configure your standard reports with default features, like the Report Builder. For instance, you can use different filters to present the data from certain standard objects and fields in the report. If you need to reflect data from custom objects in your reports, you can create a custom report type with default Salesforce functionality.
For giving your reports a certain view that can’t be achieved with configuration you need to turn to Salesforce developers to further customize the reports with Apex code. Imagine a company that delivers demo products to its customers for a trial period and needs a lot of date fields, like “delivered to the customer”, “arrived from the customer”, “delivered back”, etc. to track where the product is at a certain time. In such a case, the number of a report’s field filters, columns and rows the company needs may be beyond the limitations of default Report Builder. To build a report with the required number of columns and lines, Apex classes (templates from which custom Salesforce objects are created) and Salesforce Object Query Language (SOQL) queries should be used.
Ineffective business processes because of the lack of third-party integrations
To achieve the aligned work of a Salesforce CRM with different systems (like ERP, DMS, an ecommerce platform), developers may integrate them using default Salesforce tools (like Files Connect for Salesforce-SharePoint integration) and API web services (like REST and SOAP) or build integration tools from scratch, which implies custom development. You can get your systems integrated via APIs only if you’re using the Enterprise edition of your Sales/Service Cloud, or higher. For Essentials, the simplest Sales/Service Cloud edition, third-party integrations are not available. As for the Professional edition, the integration will cost additional 25$ per user/month above the standard license price.
The choice of a Salesforce integration method will also depend on the number of systems to integrate and the integration levels to cover (there are 2 basic levels - data and process integration and 2 additional levels- security and user interface integration). For instance, if a customer needs to provide a single integration, they may resort to ready-made integration apps placed on AppExchange. If there are multiple systems to connect with Salesforce, this approach would be rather costly, as the company will have to buy a separate app for every integration, so it’s better for them to ask developers to provide custom integration that embraces all the systems. As for the integration levels, the more of them should be covered within the integration project, the higher is the need in custom integration solutions, provided by a third-party IT services provider.
A need to provide role-based access to CRM
To comply with strict security requirements in your organization, you may configure your Salesforce solution with the Roles and Permissions feature. It allows providing role-based access to your Salesforce data to different user groups and clearly defining what different users can see and do within a Salesforce solution.
To get a customized Salesforce solution in line with your live business needs, you should properly organize the customization process. Although it’s no rocket science, Salesforce customization may require more effort than you’d estimate. To increase your chances for success, consider taking the sequence of the following steps:
1. Getting your end users’ input
To understand the scope of a future customization project, ask your employees what CRM challenges they currently face, what features they consider utmost helpful for their job and which ones they lack. Getting such feedback enables you to spot the functionality gaps needed to eliminate with customization.
2. Engaging a CRM manager
Consider engaging a qualified CRM manager responsible for defining the customization’s scope, planning the customization process, prioritizing delivery of custom features and supervising the ongoing support of a customized solution. An in-house CRM manager can find the right balance in allocating responsibilities among third-party experts, like Salesforce developers of a customization services provider and in-house specialists (like a Salesforce administrator).
3. Opting for a suitable model of cooperation
To choose a well-fitting cooperation model, think how big your project’s scope is, whether it’s likely to change, and how well- defined your requirements are. Basically, there are 2 possible options:
- The first one implies a FP (Fixed Price) contract, which goes in line with the one-time delivery of the fixed scope of custom features. Under such a contract, the customer agrees on the total cost of the customization service upfront. The biggest advantage of this cooperation model is the predictability of costs. You may opt for it when you already have specified requirements for your future customized solution and fixed budget.
- The second option is the T&M (Time and Materials) contract usually accompanied by the iterative development when the baseline of custom functionality is delivered first and other custom features are further rolled out to complement it. In this case, the overall payment of the customer to the customization provider depends on the completed scope of works, done by the customization provider. The greatest advantage of this cooperation model is its flexibility. That’s why, if your requirements are not completely specified and you may need to change throughout the project, opt for the T&M contract.
4. Finding a reliable Salesforce services provider
You should choose a reliable Salesforce customization services provider with sound consulting and development skills. The consulting skills are crucial for elaborating the truly efficient ways to address your business challenges. Quality Salesforce consulting requires profound business analysis skills and extensive experience in your industry and business directions from the potential vendor. As for sound Salesforce development skills, they are a must to make a Salesforce solution look and work exactly as required. To make sure your potential IT vendor can handle both business and technology sides of your project, you should consider the vendor’s domain experience, certifications, testimonials, relevant case studies and other info proving their competence.
5. Keeping the costs under control
To curb the problem of customization cost creep, you should properly prioritize custom features to deliver and take a reasonable approach to customization. By “the reasonable approach”, we mean configuring default features, when it is enough to meet your business needs, and avoiding excessive code-based customizations. Otherwise, if you introduce code-based changes where a slight configuration could suffice, administering these customizations may be a rather complicated task requiring the need for third-party support services.
Salesforce customization is a viable way to make your Salesforce CRM an utmost helpful sales and customer service tool and curb the issues with poor user adoption. To turn your customization process into a successful venture, we suggest getting end users’ input, engaging a CRM manager to lead the change, choosing a suitable cooperation model and opting for a reliable Salesforce services provider, taking the reasonable approach to customization and keeping your customization costs under control.