Riva Cloud Corporate requires a CRM connection to the target CRM using an admin-level account that can impersonate target CRM user accounts.
These instructions are specific to preparing for Riva Cloud Corporate CRM connections to Sugar and Sugar On-Demand. Some of the information in this article can be applied to CRM implementations from the following CRM vendors:
The following preparations must be completed:
- Prepare the Sugar server. Mandatory and optional preparation of the Sugar server (for Sugar Administrators).
- Prepare the Riva Cloud connection user account in Sugar. Required for the Riva Cloud connection to your CRM system.
- Prepare the target user accounts in Sugar. Required, to ensure that Riva Cloud syncs correctly for each user.
- Gather information required for creating the Sugar connection.
Step 1: Prepare the Sugar Server
The following Sugar server versions have been tested for Riva CRM integration:
- Sugar 7.2.0+ (Ultimate, Corporate, Enterprise, Professional, and Community Edition.)
- Sugar 6.5.0+ (Ultimate, Corporate, Enterprise, Professional, and Community Edition.)
- Sugar 6.4.0+ (Ultimate, Corporate, Enterprise, Professional, and Community Edition.)
- Sugar 6.3.0+ (Ultimate, Corporate, Enterprise, Professional, and Community Edition.)
- Sugar 4.5.0 to 6.2.x (Ultimate, Corporate, Enterprise, Professional, and Community Edition.)
- Sugar On-Demand.
Six potential preparations and performance tuning improvements may need to be made for on-premises and independent Sugar service providers:
- Sugar 6.3.2+, 6.4.0, 6.4.1 require manual patch.
- Sugar Community Edition and SuiteCRM "user impersonation".
- Sugar 6.0 PHP compatibility issue.
- Sugar 6.1+ appointment handling changes.
- Sugar server performance tuning.
- Recommendations for performance tuning and resource planning for CRM hosted on LAMP/WAMP.
Sugar 6.3.2+, 6.4.0, and 6.4.1 require manual patch
Sugar Development added a fix to the web services for Sugar 6.3.2 (and higher) and 6.4.0 (and higher) servers to protect against SQL injection attacks. That Sugar fix prevents the Riva CRM connection from permitting data sync. Sugar Development included a fix in the 6.4.2 release that works with Riva. We have devised a procedure to manually "patch" 6.3.2+, 6.4.0 and 6.4.1 Sugar servers to work with Riva. For instructions, see Sugar 6.3.2+: Resolve "Access Denied" errors.
Sugar Community Edition & SuiteCRM "Use Impersonation"
Riva requires "Use Impersonation" access through an administrator-level account to access the target user CRM accounts. All versions of Sugar Pro and Enterprise versions natively support “Use Impersonation”. Sugar Community Edition does not install this support by default. Follow the instructions in How to configure "Use Impersonation" support for Sugar Community Edition.
- Applies to on-premises Sugar Community Edition servers.
- Applies to commercial Sugar hosting providers (request the service provider to configure the server).
- Does not apply to Sugar On-Demand.
Sugar 6.0 PHP compatibility issue with PHP 5.3
Not all versions of Sugar Web Services APIs support PHP 5.3. For versions of Sugar prior to 6.0.1, the options are to apply a bug fix or to downgrade PHP to 5.2.x on the Sugar server. For more information, see Sugar: PHP compatibility issue with PHP 5.3.
- Applies to Sugar version prior to 6.0.1 hosted on a server running PHP 5.3.
- Fixed in Sugar version 6.0.1 and higher.
Sugar 6.1+ appointment handling changes
Sugar version 6.1 introduced a change to the logic for handling appointments:
-
New appointments not synced to user creating the appointment: For Riva environments that synchronize to Sugar 6.1, when a user creates a multi-attendee appointment in their CRM account, Sugar removes the creating user as an attendee from the appointment. Riva will synchronize the new appointment to the email mailbox of all attendees except the user creating the appointment. The user can find the appointment and manually add himself or herself as an attendee to the appointment, and Riva will synchronize the appointment to the user on the next sync cycle. For a fix to modify the default logic, see Sugar 6.1: New appointments not synchronized to user creating appointment.
-
Private appointments created in email are removed by Riva: For Riva for Exchange environments that synchronize to Sugar 6.1, when a user creates a private appointment in their email client and assigns the Sugar category to the appointment (either manually or automatically), Riva synchronizes the new private appointment to Sugar, which removes the user as an attendee. On the next Riva sync cycle, Riva removes the user from the attendee list, which in effect deletes the private appointment from Exchange. For a fix to modify the default logic, see Sugar 6.1 deletes private appointments synchronized from email.
Sugar server performance tuning
When Riva server attempts to sync multiple target users concurrently, it can result in many Apache instances to be created on the Sugar host server that uses most of the available memory. For six tips that can greatly reduce the impact of memory usage, see Sugar performance tuning.
Performance tuning and resource planning for CRM hosted on LAMP/WAMP
Another best practice on host Apache servers is to adjust the maximum number of worker processes to match the amount of memory available on the server. For more information, see Recommendations for performance tuning and resource planning for CRM hosted on LAMP/WAMP.
Step 2: Prepare the Riva Cloud Connection User Account in Sugar
You need to create a connection to your CRM using the credentials of an administrator-level account. For Sugar, choose one of the following options:
- Use an existing CRM user configured as a "System Administrator" user type, or
- Create a CRM user, for example riva or rivasvc, and configure it as a "System Administrator" user type.
The "System Administrator" type user provides the privileges necessary for Riva Cloud to impersonate each target CRM user and make the necessary changes to records in the CRM for each target user.
Step 3: Prepare the Target User Accounts in Sugar
Two configurations must be confirmed to enable the target users:
- Configure the correct primary email address value and
- Enable sufficient access permissions.
Configure the correct primary email address value
The Riva Cloud service attempts to match the primary SMTP email address of the target users in their email account to the primary email address value of the corresponding target user in the CRM. Ensure that for each user, the email address values from the email system and the CRM are identical.
Enable sufficient access permissions
The Riva server uses the access permissions assigned to the target user to write data from the CRM to Exchange and from Exchange to the CRM. If the access permissions defined in the target user's assigned role are not sufficient, the Riva server displays "Access denied" errors for each data change it tries to synchronize. For more information, see Sugar Access Denied errors explained. Ensure that for each target user, the assigned Sugar role provides sufficient permissions to create, modify, delete, import, and export the data types that Riva will attempt to sync for that user.
Step 4: Gather Information Required for Creating the Sugar Connection
Ensure that the following information is available for creating a Riva Cloud connection to the target Sugar system:
- The http:// or https:// website link to log in to the target CRM and
- The Sugar user name and password for the Riva connection user.