TABLE OF CONTENTS


Using the Salesforce Integration Tool

The Salesforce Integration Tool will allows users to look up ACME External IDs for Customers, Memberships, and Orders and see the data in both ACME and in Salesforce. ACME External IDs for Customers, Memberships, and Orders can also be entered and pushed to Salesforce. The Data Logs section of the tool allows user to search for payloads and responses for nine types of messages and view the associated success or failure response as applicable. 


API Calls

Each time you click either View Data or Push Data to Salesforce, you are triggering an API call. Looking up an ID in the Data Logs does not make an API call. Please keep in mind that your Salesforce environment has limits to the number of API calls it can support. An API call is made each time data is searched for in the tool or pushed from ACME to Salesforce. Your Salesforce admin can assist with questions or issues with your Salesforce API limits.


Permissions

A new RBAC permission has been created to give users access to the Salesforce Integration tool. The "SALESFORCE_INTEGRATION_UPDATE" permission will give users full access to all portions of the tool, including the ability to view data, push data, and search and view the Data Logs. This permission is automatically included in the new "sf-admin role". That role can then be added to an existing user group to give all users in that group access, or a new user group can be created to hold that role, which can then be selectively added to specific users permissions as desired.


Data Retention

Payloads and responses of messages in both ACME to Salesforce and Salesforce to ACME directions are saved and viewable using the tool for 3 weeks. Any messages sent prior to that point will not appear in the data logs. To troubleshoot IDs that were sent over 3 weeks ago, the IDs should be pushed to trigger a new message in the data logs.


View and Push Data

Process

The View and Push Data section of the tool will allow you to search, view, and trigger a push for Customers, Memberships, and Orders using an ACME External ID. After selecting an object type and inserting the ACME External ID, you can View Data to see the data associated to that ID in ACME and in Salesforce. If the object is not found in one or both systems, you will see a Failure, [Object] not found message in that section. You can then choose to Push Data to Salesforce, or View a new ID. If you know you need to push something to Salesforce, you can go straight to the data push without looking it up first, if you wish.


See Looking up ACME External IDs for assistance with looking up the correct IDs to use with this tool, and How to Resolve Missing or Unlinked Data In Salesforce for step-by-step recommendations for resolving different types of issues.


Timing

Once you have triggered data to be pushed to Salesforce, it should appear in Salesforce fairly quickly. You can confirm either by looking for that ID in your Salesforce environment (recommended) or by clicking View and Push Data again to see if the data is now populated in the Salesforce results (triggers an additional API call). However, the data might not appear in Salesforce immediately for a few reasons. If there is a high volume of data flowing from ACME to Salesforce, any push that is triggered will be added to the end of that queue, and you may experience a delay before it flows over to Salesforce. Additionally, if there is an error triggered in Salesforce for that object, it will prevent the object from saving or updating. Payloads, responses, and errors can be found in the Data Logs section of the tool.


Data Logs

Process

The Data Logs section of the tool allows you to search for and view payloads, responses, and errors by ACME ID, or in some cases by SFDC ID (18 character, case-safe IDs). If you are searching for a record that currently only exists in one system, you will need to search using that ID. For objects that sync in both directions and exist in both systems, generally you can search by either ID, though you may be missing initial results when the object was first created. Optionally, you can restrict the results to just a specific target system.


When a payload of data contains more than 1 record, if all of the records succeeded you will see the data log show a Success response. If even one data point in the payload failed, then the entire log will be flagged as an Error. Each response in the Data Logs will include a unique Data Log ID.


Objects

Object TypeID TypeNotes
AddressACME ID or Salesforce ID
CustomerACME ID or Salesforce ID
Delete NotificationACME ID of deleted membership

It is expected that the payload for these is blank

HouseholdACME ID or Salesforce ID
MembershipACME ID or Salesforce ID

This displays data for Memberships and the child object Membership Cards. This will show all messages in the ACME > SF direction, as well as real-time edits made in SF.

Membership ImportACME ID or Salesforce ID

This displays data for new Membership record creation or existing record updates in the SF to ACME direction only, made via the Membership Import Sync process.

If successful, data sent to ACME via Membership Import will have a blank response section in the logs and a 200 response code.

OrdersACME ID

As Orders only sync in the ACME to SF direction, so you can only search using the ACME ID. You will generally see four lines for an Order, from bottom to top:
1- The first (lower) Order line is for the Order object
2- The second Order line is the Order Item object(s) - tickets, membership, add-ons, donations
3- The first (lower) Transaction line is for the Transaction object(s)

4- The second Transaction line is for the Transaction Line Item object(s) *known issue


OrganizationACME ID or Salesforce ID
Organization ContactACME ID or Salesforce ID

Known Issues

Transaction Line Items in Data Logs

In the Data Log, currently the Transaction payload and response is displayed a second time, in place of the Transaction Line Items payload and response.


If you need additional assistance, please open a ticket in the ACME Product Support Portal and provide the object type and ID, as well as the data log ID for the payload/response (if applicable) along with your question.