Communities
Performance Quoting supports Salesforce communities for named users. Guest (or anonymous) users are not supported.
Setting up a Community and making it possible for users to access it requires taking these general steps:
- Building the community (pages, members, etc.) - This is well documented by Salesforce. For the community pages that require to interact with Smart CPQ, the Managed Package provides APIs that are able to call the various Smart CPQ public APIs.
- Setting up your Salesforce organization so that community users are allowed to use Smart CPQ through the community. This page will guide you through this setup.
Setup
CREATE A COMMUNITY PROFILE
Community users will access Smart CPQ. These named users carry a profile that needs to be defined. Start with cloning the "Customer Community Login User" profile. You can't use the standard profile because you need to edit permissions on the profile which is not possible on the standard one.
Once the profile is created, edit it to allow that all Apex classes and Visualforce pages defied in your Community are allowed for the profile:
In the profile Object Settings, make sure you grant all permissions for the Smart CPQ objects.
Again, in the Objects Settings, assign the right record type for the Smart CPQ Quote object for your user - this will drive what Quote Model to use for your community user.
Finally, in the System Permissions tab, make sure to check the following options:
CREATE COMMUNITY USERS
Now that the profile is set up, create community users. Community Users can only access the community if they are associated with an Account as Contact. Community Users cannot be created from the usual Users menu, instead, create them from their Account page - make sure to enable the account as Partner Account. Create a contact, then enable it as Partner user. This will create it a user, and you can assign it the Profile you created previously.
CONNECTED APPS PROFILES
Add the Community profile you created previously to two Connected Apps:
- "Smart CPQ Authentication"
- The Connected Apps you created during the Post-Installation Synchro Back step.
SHARING SETTINGS
In Sharing Settings, make sure that the "Default External Access" value for Smart CPQ Quote and Smart CPQ Mapping Set is set to "Public Read / Write."
IDP REGISTRATION
Go to "Manage Connected Apps" and open the one created in the Post Installation step (not the Managed Connected App called "Smart CPQ Authentication")
In the following example a "HiTechCenter" community has been created:
Expand the "For Communities" section
- Download the metadata
- Mark down the IDP Login URL. In this example it is @techportal-pros-developer-edition.na112.force.com/customers
Follow the guide here in order to add your Salesforce instance as an Identity Provider.
Community Guidelines
Communities can be created in different ways:
- Either using a template "ready to use" from Salesforce, or
- Using a "Build your own" approach
Using a template is faster to implement but will require developing Lightning components for custom needs. The second option requires more work but is also more flexible. In the end, both will require leveraging the Managed Package APIs so an APEX Controller communicates with Smart CPQ.
Please remember that for a community to be online it must be active and published. Also the community profile should be part of the Community Members. And finally, the community landing page must be defined.
