In order to access the new features and use cases in the ACME | Salesforce Integration version 2.0 Release Notes, additional set-up needs to be completed in your Salesforce and Workato environments, as outlined below.

TABLE OF CONTENTS


New Fields 

To support the new features and use cases in the ACME | Salesforce Integration version 2.0 Release Notes, additional fields need to be added to your Salesforce environment and the Integration User needs full CRUD access in order for the new and updated recipes to work. Only the new ACME Link field is required, and while the others are technically optional (if you do not plan to send data into these fields), we recommend adding them regardless as if data is ever sent to them via the recipes, the recipes will fail if the fields below are not present in Salesforce. For more information on if you need to add the fields, check in with your CSM. 


(Depending on when you installed the unmanaged package you may have some of these fields already. Please double check to ensure their configuration matches the below).


Opportunity Object

  1. ACME Link (API Name: ACME_Link__c)- URL

    • Required for Orders to sync

    • This field will hold a link to the Order in ACME Backoffice.

  2. ACME Customer Number (API Name: ACME_Customer_Number__c)- Text(64)

    1. Required for Orders to sync

    2. This field will hold the ACME Customer Number of the Customer who placed the Order


Contact Object

  1. ACME External ID (API Name: ACME_External_ID__c)- Text(20), Unique, Case Sensitive

    • This field can be used to hold a Customer Number for the Contact from another system (for example, if the Customer has a prior Constituent ID from Raiser’s Edge). When using our brand new recipe to send new memberships created in Salesforce to ACME, you can optionally send an External ID for the Contacts associated to the Membership. This ID will be stored on the ACME Customer record. (Coming soon: the ability to create a new Contact in Salesforce and send it to ACME where ACME will create a Customer record. During this flow you will optionally be able to send an External ID).


ACME Membership Object

  1. External ID (API Name: External_ID__c)- Text (20), Unique, Case Sensitive

    • This field can be used to hold a unique system ID for the Membership record from another system (for example, the Salesforce Record ID of the Membership record). When using our brand new recipe to send new memberships created in Salesforce to ACME, you can optionally send an External ID for the Membership. This ID will be stored on the ACME Membership record. External ID must be unique for each Membership version in ACME.

  2. External Membership ID (API Name: External_Membership_ID__c)- Text(64), Unique, Case Sensitive

    • This field can be used to hold a Membership Number for the Membership from another system (for example, the membership number given to memberships purchased in an external system). When you send a brand new membership purchase to ACME, you can optionally send a value for External Membership ID and ACME will accept this value as “ACME Membership Number” and “External Membership ID” on the ACME Membership Record. (Coming soon: the ability to update the External Membership ID for any membership in ACME) .

  3. Is Auxiliary (API Name: Is_Auxiliary__c)- Boolean

    • If the membership is an Auxiliary membership, this checkbox will be checked.

  4. Auxiliary Group (API: Auxiliary_Group__c)- Text(64)

    • If the membership is an Auxiliary membership, this field will hold the name of the Auxiliary Group.


ACME Membership Card Object

  1. External ID (API Name: External_ID__c)- Text (20), Unique, Case Sensitive

    • This field can be used to hold a unique system ID for the Membership Card from another system (for example, the Salesforce Record ID of the Membership Card). When using our brand new recipe to send new memberships created in Salesforce to ACME, you can optionally send an External ID for the membership card(s). This ID will be stored on the ACME Membership Card record. External ID must be unique for each Membership Card in ACME but if a card persists across many membership versions (in the event of a renewal) then it can keep the same External ID for its life.


Field Updates

Similarly to above, we have made several field updates to make things easier on your staff. By making fields required and changing them to picklists, your staff will have an easier time inputting data into Salesforce in the correct format that ACME requires to accept it.


ACME Membership Object

  1. ACME Membership ID

    1. Make this field editable by only the ACME Integration User

  2. Lifecycle Action

    1. Recommend adding Help Text like: "This is required in order to send a brand new membership version to ACME."

    2. Turn into an unrestricted Picklist with these available values:

Values

API Name

MembershipPurchase

MembershipPurchase

MembershipUpgrade

MembershipUpgrade

MembershipDowngrade

MembershipDowngrade

MembershipRenewal

MembershipRenewal

MembershipRenewalUpgrade

MembershipRenewalUpgrade

MembershipRenewalDowngrade

MembershipRenewalDowngrade

MembershipRejoin

MembershipRejoin

MembershipRejoinUpgrade

MembershipRejoinUpgrade

MembershipRejoinDowngrade

MembershipRejoinDowngrade

MembershipPostTermRenewal

MembershipPostTermRenewal

MembershipPostTermRenewalUpgrade

MembershipPostTermRenewalUpgrade

MembershipPostTermRenewalDowngrade

MembershipPostTermRenewalDowngrade

MembershipReplacement

MembershipReplacement


  1. Level

    1. Change to Required

    2. Turn into an unrestricted Picklist of all the Level names you have in ACME (case sensitive, matching what is in ACME)

  2. Offering

    1. Change to Required 

    2. Turn into an unrestricted Picklist of all the Offerings you have in ACME (case sensitive, matching what is in ACME). Also recommend adding Conditions that filter the Offering based on which Level is selected.

  3. Primary_Member__c

    1. Change to Required

  4. Standing

    1. Change to an unrestricted picklist with these available values:

      Values

      API Name

      Active

      Active

      Lapsed

      Lapsed

      New

      New

      Replaced

      Replaced

      Dropped

      Dropped


ACME Membership Card Object

  1. ACME Membership Card ID
    1. Change to not required
  2. Card Type
    1. Change to Required
    2. Turn into picklist with available values:

      Values

      API Name

      Primary

      primary

      Secondary

      secondary

  1. Card Standing

    1. Change to Required

    2. Turn into a picklist with available values:

      Values

      API Name

      Active

      Active

      New

      New

      Dropped

      Dropped

      Lapsed

      Lapsed

      Replaced

      Replaced

    3. We recommend defaulting this to “Active”

  1. Cardholder 

    1. Recommend adding Help Text like: “If Card Type is Primary, then the Cardholder field cannot be blank.”

  2. Name

    1. 100% Optional but we recommend updating the Name of this field to "Name on Card" so that it matches what is in ACME


New Workato Lookup Table

ACME Memberships

ACME will complete the following configuration for you.

A brand new Workato Lookup Table (Tools > Lookup Tables) was created to use in the recipe to create new memberships in Salesforce and send them to ACME. ACME requires Level ID, Offering ID, and Price Point ID in order to create a membership in ACME. Instead of requiring your staff to know these numbers or look them up each time, we are utilizing a lookup table that will take the values for Level and Offering on the Membership record and lookup the necessary IDs. Your CSM can help you fill out this table. The table has 4 columns:

  1. ACME Level/Offering. This must equal the Level Name + Offering Name from ACME.

  2. Level ID. This is the ID of the Membership Level in ACME.

  3. Offering ID. This is the ID of the Membership Offering in ACME.

  4. Price Point ID. This is the ID of the price point associated with this Level/Offering in ACME.


New Workato Environment Properties

This is where we will input the link to the ACME environment that Workato is hooked up to. We then use this environment property to link to the Order in ACME Backoffice from the Opportunity or to the Membership in ACME Backoffice from the Salesforce Membership record.


Salesforce Integration User ID

This is where we will input the Salesforce ID of the user configured as the Workato Integration User. 


New Layout Recommendation

ACME Membership Object

If you would like your Salesforce users to have the ability to create a new ACME Membership record in Salesforce and send it to ACME where it will create an Order, Customer(s), Membership, and Membership Card(s), then we recommend that you add a Custom button to the ACME Membership layout(s). To do so:

  1. Within Object Manager > ACME Membership > Buttons, Links, and Actions click “New Button or Link”

    1. Label: Create in ACME

    2. Type: Detail Page Button

    3. Content Source: URL

    4. Retrieve the webhook address from the recipe [SF] REC 106 | Webhook: Sync new Membership via ACME Checkout API 

    5. Append the following to the end of the link from step 4 when configuring the button: ?SalesforceMembershipId={!ACME_Membership__c.Id}

      • Full link: {webhook address from the recipe [SF] REC 106 | Webhook: Sync new Membership via ACME Checkout API}?SalesforceMembershipId={!ACME_Membership__c.Id}

  2. Add the button to the appropriate layout(s)


Example (note, you will have a distinct Webhook address so you need to copy the one from the recipe in your environment, not the one in this screenshot):