SalesForce Pre-Requisites
Setting Up the Salesforce Environment
Pre-requisites for your Salesforce environment before setting up the Zykrr integration.
If a user with the necessary license and permissions is available, that account should be used; otherwise, a new user must be created using the steps given below.
Confirm License Availability
- You’ll ideally need a “Salesforce Integration” user license. Salesforce provides a limited number of these with certain editions.
- If you don’t have an available “Salesforce Integration” license:
– You may need to purchase additional licenses from Salesforce. – Alternatively, you can use a standard “Salesforce” license. If using this license, you will need to assign either the “System Administrator” profile or, preferably, a custom profile with the minimum required permissions.
Create a Salesforce Integration User
- Login to Salesforce as an administrator.
- Navigate to Setup (gear icon) > Users > Users.
- Click New User.
- Follow your company’s naming conventions. It’s recommended to include the integration name in the username for clarity.
5. Fill in the user details:
- First Name: (Optional)
- Last Name: (e.g., Integration - User-Zykrr)
- Email: Use a dedicated email address (e.g., integration_user_zykrr@yourdomain.com)
- Username: Must be unique (e.g., integration_user_zykrr@yourdomain.com)
- User License: Select “Salesforce Integration” if available. If not, select Salesforce”.
- Profile:
- If using the “Salesforce Integration” license, select “Salesforce API Only System Integrations”.
- If using the “Salesforce” license, assign the “System Administrator” profile or a custom profile created specifically for this integration (cloned from “System Administrator” but with reduced privileges – see permission set details below).
- Role: Assign an appropriate role based on your hierarchy, or create a new one (eg., “Integration User”).
- Click- Save.
Assign Permissions (Choose ONE Method)
Method 1: Assign the “Salesforce API Integration” Permission Set License (If using “Salesforce Integration” User License) This license grants the necessary API access automatically.
- On the newly created user’s detail page, navigate to the “Permission Set License Assignments” section.
- Click “Edit Assignments”.
3. Find “Salesforce API Integration” in the list.
4. Check the box next to it to enable it.
5. Click Save.
Method 2: Create and Assign a Custom Permission Set (Recommended, Especially if using “Salesforce” User License) Using a custom permission set provides more granular control and follows the principle of least privilege.
- Navigate to Setup > Users > Permission Sets.
- Click New.
3. Enter details:
- Label: Give it a descriptive name (e.g., Zykrr_Integration_Access).
- License: Select “Salesforce API Integration” if available and applicable based on the user license chosen. If not available or needed, leave as “–None–”.
- Click Save.
5. Configure the necessary permissions within the newly created Permission Set:
- Object Settings: Define object-level permissions (Read, Create, Edit) for all objects the Zykrr integration needs access to (e.g., Account, Contact, Lead, Case, etc.).
Grant the minimum necessary permissions:
- Read Access: For any objects/fields to be pulled from Salesforce into Zykrr.
- Create Access: For any objects Zykrr needs to insert into Salesforce.
- Edit Access: For any objects Zykrr needs to update in Salesforce. (Note: The original document mentioned “Modify All”, but “Edit Access” on the object combined with field-level edit permissions is generally sufficient and safer unless mass updates are truly required).
- View All/Modify All: Grant these cautiously. “View All” might be needed for related objects during inserts/updates, if Zykrr logic requires broad visibility. “Modify All” grants extensive update permissions.
- Field Permissions: Within each object specified in Object Settings, set Field-Level Security. Grant Read or Edit access only to the specific fields the integration needs to interact with. Follow the principle of least privilege.
- System Permissions: Grant necessary system-level permissions. Critically, ensure the following is enabled:
-“API Enabled”: Essential for any integration user.
- Click Save after configuring permissions.
- Assign the Permission Set to the Integration User:
- Go back to the Integration User’s detail page.
- In the “Permission Set Assignments” section, click “Edit Assignments”.
- Find custom permission set (e.g., Zykrr_Integration_Access) in the “Available Permission Sets” list and add it to the “Enabled Permission Sets” list using the Add arrow.
- Click Save.
Create a Connected App for Zykrr Integration
This allows Zykrr to authenticate and connect to your Salesforce instance via the API.
- Login to Salesforce as an administrator.
- Navigate to Setup (gear icon) > Apps > External Client App > External Client App Manager.
3. Click New Client App.
4. Fill in Basic Information:
- External Client App Name: Enter Zykrr Integration or a similar descriptive name.
- API Name: This should auto-populate based on the name.
- Contact Email: Enter an appropriate administrative email address.
5. Configure API (Enable OAuth Settings):
- Check Enable OAuth Settings.
- Callback URL: Enter https://login.salesforce.com/services/oauth2/callback (or verify if Zykrr requires a different specific callback URL).
- Selected OAuth Scopes: Select the permissions Zykrr needs. Choose either:
- Full Access (full) - Grants broad access.
- Perform requests at any time (refresh_token, offline_access) - Allows Zykrr to maintain connection.
- OR (Recommended - Least Privilege): Select specific scopes. Minimally include:
- Access and manage your data (api)
- Perform requests on your behalf at any time (refresh_token, offline_access)
- Add other scopes only if explicitly required by Zykrr features.
- Require Secret for Web Server Flow: Keep this checked (Recommended).
- Require Secret for Refresh Token Flow: Keep this checked (Recommended).
- Click Save. You might see a message that changes can take a few minutes to take effect; click Continue.
Create Remote Site Settings
If Zykrr needs to make calls back into Salesforce from its servers, configure Remote Site Settings.
- Navigate to Setup (gear icon) > Security > Remote Site Settings.
- Click New Remote Site.
- Enter details for the first site:
- Remote Site Name: ZAuth
- Remote Site URL: https://accounts.zykrr.com
- Ensure Active is checked.
- Click Save & New.
5. Enter details for the second site:
- Remote Site Name: ZAPI
- Remote Site URL: https://zapi.api.zykrr.com
- Ensure Active is checked.
- Click Save.
Check Network Access (If Applicable)
If your organization restricts Salesforce access based on IP address ranges:
- Navigate to Setup (gear icon) > Security > Network Access.
- Check if Zykrr’s server IP addresses are listed as Trusted IP Ranges.
- If not, you will need to obtain the correct IP addresses or range(s) from Zykrr support or documentation and add them here.