TABLE OF CONTENTS |
Required ACME Configuration
Your CSM will complete these updates on your behalf during implementation.
Create an API user that will be used to connect ACME to Workato. Send the following details into api-help@acmeticketing.com to get an API key issued.
Username: api-workato
User ID: #####
Category: Direct
Usage info: Workato integration
Update the Integration setting in Backoffice > Administration > Integrations. This must be set to "Raiser’s Edge". This setting is required because when turned to "Raiser’s Edge", customers are made for Organization Contacts, which is critical for when Orders are placed for these Org Contacts.
- In addition to creating the API key, ACME will create standard Workato reports in your ACME environment, which are used to provide in the integration recipes. The report IDs will be provided with the API key, for you to enter when setting up the connection to ACME within Workato.
Our prebuilt recipes assume that ACME is the primary source for your data. Therefore, the recipes are designed to send data one way from ACME to SF in most cases, except for on demand syncing of updates from SF Contacts, SF Accounts, and SF Account Contacts to existing ACME customers/contacts.
If you are currently using a different integration with ACME, we recommend completing step 1 and 3 in both production and your sandbox environments, but not completing step 2 in your production environment until you have completed testing and you are ready to activate the integration there.
Required Salesforce Set Up
While NPSP is not required for the integration, our prebuilt recipes are optimized to work with NPSP. If you are not using NPSP, there will be a significant amount of reconfiguring to work with a non-NPSP model.
Create a new User for the integration.
We recommend creating a separate System Admin user in Salesforce that will be used to establish the connection between Workato and Salesforce. This username and password will be used when setting up the connection to Salesforce in Workato.
Configure the following NPSP Settings:
People > Addresses
Enable Organizational Account Addresses: "When selected, enables Address Management for non-Household Accounts such as Organizational Accounts."
Affiliations
Enable Automatic Affiliation Management: "When selected, this option tells Salesforce to create or update Affiliations for Contacts connected to Organization Accounts whenever the Contact's Account field or Primary Affiliation field changes. Organizations Accounts include all Record Types except those defined as Household or One-to-One Account Record Types."
Relationships
Enable Custom Field Sync: "Select this option to sync custom Relationships fields between the two Contacts in a relationship pair."
Update or add a Price Book in Salesforce. Add the following Entries to the same price book with a list price of $0. Note the ID of the price book, as you will be needed when setting up the initial Workato configuration.
Event Ticket
Event Add On
Add On
Donation
Membership
Combo Event Add On
Combo Event Ticket
Install this unmanaged package: https://login.salesforce.com/packaging/installPackage.apexp?p0=04tHr000001e16b (updated 10/07/23) to create new custom objects and custom fields used in the prebuilt recipes.
The package contents are documented in the ACME Custom Objects & Fields for Workato SF Integration Prebuilt Recipes. Alternatively, manually create the custom objects and fields as outlined by that document. The unmanaged package does not include any prebuilt layouts (see the Optional Salesforce Set Up section).
The field level security for all fields used in the integration should be set to at least System Admin, to ensure that data is not blocked from being written to SF when the integration runs.
Configure the ACME Organization Categories in Salesforce
Add an entry for every Organization Category you have configured in ACME Backoffice (Organizations > Organization Categories). The Name should closely match what you have configured in both ACME and for the restricted picklist on the “ACME Org Category” field on the Account Object. The Salesforce ID of this picklist items will be needed when setting up the initial Workato configuration.
Select Salesforce Opportunity Record Type
Create or choose the Opportunity Record Type that will be used for all Opportunities that are created by the integration. The Salesforce ID of this Record Type will be needed when setting up the initial Workato configuration.
Create a placeholder Org Contact record
If Organizations are able to have ACME Orders placed with deferred payment, then we recommend training users to always enter in a Billing Contact on the Order, even if no payment is made when the Order is created. Doing so will ensure that a Contact is created on the order in ACME and in Salesforce when the recipe runs. For cases when a billing contact is forgotten, we recommend creating a Salesforce Contact called “Temporary Org Contact” (or whatever you wish to call it) that will be assigned to the Order when it is created in SF. Then your team can filter by these and update the Contact with the correct data. The Salesforce ID of this record will be needed when setting up the initial Workato configuration.
Required Workato Set up
- ACME will provision separate Workato sandbox and production environments for you with the ACME prebuilt recipes. Once they are ready, we will invite client users to have access. Once your account is set up, then you will be able to invite your internal users and any SI or other consultants you are working with (see Workato's Invite and manage workspace collaboratorsguide for step by step instructions). Each collaborator you invite will be assigned one role, which controls their access:
- Account Admin : This role has the highest level of access. The user will be able to view and edit most things and manage collaborator access.
- Account Manager : This role is for users who just need to manage collaborator access.
- Recipe Viewer : This role is for users who need to see the recipes and their logs but do not need to make any edits.
- Once you accept the invitation to Workato, you will initially see only your own personal account space. Once you log in, select the round icon with your initial, and you'll see a menu open with the other team spaces you have access to. When you select the team for your ACME project, as listed in the invitation email, you'll be able to continue with the set up steps.
- Set up your Workato Notification settings in Settings > Notifications
- Fill in the Recipient(s) email address(es): This setting determines who at your venue will receive error messages from a recipe. We highly recommend setting up a distribution list that you can manage access to within your own email provider.
- We recommend turning on "Error notification throttling" so that you receive only one email per hour per recipe.
- Set up your connections within each Workato environment.
- Projects > Common Assets > Connections > Create > ACME Connection
- Login using the ACME provided API Key and set the correct environment
- Projects > Salesforce Integration > Connections > Create > Salesforce Connection
- Login using the integration user you created in "Salesforce Required Set Up" step 1
- Projects > Common Assets > Connections > Create > ACME Connection
- Set Up Environment Properties in Workato (Tools > Environment Properties)
Create the following properties in your Workato environment(s) and insert the appropriate values, as outlined below:Property Name
Value
ACME Donation Report ID
The ID in the URL when viewing the report in ACME; this ID will be provided with the ACME API keys
ACME Form Report ID
The ID in the URL when viewing the report in ACME; this ID will be provided with the ACME API keys
ACME Membership Report ID
The ID in the URL when viewing the report in ACME; this ID will be provided with the ACME API keys
ACME Transaction Report ID
The ID in the URL when viewing the report in ACME; this ID will be provided with the ACME API keys
ACME Membership Conversion Report ID
The ID in the URL when viewing the report in ACME; this ID will be provided with the ACME API keys
ACME Subscription Report ID
The ID in the URL when viewing the report in ACME; this ID will be provided with the ACME API keys
ACME Organization Payment Policy
Select the preferred default value you want used:
{deferredPayment, fullPayment}ACME Organization Ticket Delivery
Select the preferred default value you want used:
{print, willCall}ACME Organization Unique Voucher Numbers
Select the preferred default value you want used:
{true, false}Timezone
Enter your timezone, not in quotes; accepts timezone names from the IANA time zone database
ACME API User ID
The ID in the URL when viewing the ACME User associated with the API key requested in Step 1 of the ACME Configuration steps; this ID will be provided with the ACME API keys
Salesforce Batch Size Up to 200; we have found 50 as a good place to start. Salesforce Opportunity Record Type ID
The Salesforce ID of the Opportunity Record Type that you wish to assign to all Opportunities that are created in SF for ACME Orders
Salesforce Price Book ID The Salesforce ID of the Price Book that you added the ACME items to in "Salesforce Required Set Up" step 3 Salesforce Temp Org Contact
The Salesforce ID of the Contact created in the Salesforce Set Up Step 7
- Run the recipe [SF] ONB 001 | Populate Lookup Table: Timestamps. This recipe will populate the Lookup Table with data that will be used when running the main recipes. Configure the "ACME Organization Categories" Lookup Table (Tools > Lookup tables > ACME Organization Categories)
- First run the recipe [SF] ONB 002 | Populate Lookup Table: ACME Organization Categories. This recipe will call ACME and populate the Lookup table with the name and ID of all the ACME Organization Categories you have set up in ACME.
- Next, fill in the Salesforce Record Type ID that each Organization Category applies to. You can find this by going to Setup > Object Manager > Account > Record Types > Open the Record Type and pull out the ID in the URL.
- Run the recipe [SF] ONB 003 | Populate Lookup Table: Salesforce Price Book Entries. This recipe will populate a lookup table within Workato that will be used in recipes to correctly assign the Price Book Entry ID when creating Opportunity Products.
You can now start the recipe and recipe functions in Workato when you are ready to begin testing. We recommend doing this in the sandbox environment first, before activating anything in your production environment.
Optional Salesforce Set Up
Helpful Layout Modifications
While the below updates are not required, we find having this data visible is helpful to users.
- We recommend adding all the ACME custom fields to the appropriate layout(s) for the related objects.
On the "Account" object:
Display "Affiliated Contacts" in the related list view. Set the Visible fields as First Name, Last Name, Email, Primary.
On the "Contact" object:
Display "ACME Memberships" in the related list view. Set "Latest Version" to display as one of the visible fields.
Display "ACME Membership Cards" in the related list. Consider setting "Card Type" and/or "Card Standing" to display in the visible fields.
On the "Opportunity" layout, add the following to display in the related list:
ACME Memberships
ACME Donations
ACME Forms
Payments (NPSP)
Optional Configuration: Organizations that Should Not Sync
If you have Organizations in either ACME or Salesforce that you do NOT wish to sync via the Workato Integration, then complete this optional configuration:
- Fill out the Workato Lookup Table called "Organizations Do Not Sync".
- If an Organization exists in ACME which should not sync to Salesforce, then input the Organization Name in the "Organization/Account Name" column and the Organization ID (ID from the ACME URL) into the "ACME Organization ID" column.
- Let ACME know the Organization ID that should not sync and we will update the Workato Transactions Report to exclude all Orders placed by this Organization from syncing.
- If an Account exists in Salesforce which should not sync to ACME, then input the Account Name in the "Organization/Account Name" column and the Account's Salesforce ID (ID from the Salesforce URL) into the "SF Account ID" column. NOTE: We require the 15 character ID for this to work. The ID in the URL is 18 characters, so simply remove the last 3 characters.
- If an Organization exists in ACME which should not sync to Salesforce, then input the Organization Name in the "Organization/Account Name" column and the Organization ID (ID from the ACME URL) into the "ACME Organization ID" column.
Resources
Workato: Field Map for ACME/Salesforce Integration Prebuilt Recipes
ACME Custom Objects & Fields for Workato SF Integration Prebuilt Recipes