Integration & Automation
ACE mapping guide for AWS Partner CRM Connector Version 2.0
When using the AWS Partner CRM Connector (referred to as the connector), partners must create APN Customer Engagements (ACE) mappings on the connector to sync opportunities between AWS and Salesforce. Because partners use different Salesforce database tables (called objects) for storing opportunity data, methods for creating ACE mappings can vary.
In this blog post, I present three different ways to complete ACE mappings for the connector. Choose your preferred way to create mappings based on your specific environment and requirements.
- Option 1: Use the ACE opportunity custom object that is packaged with the connector.
- Option 2: Create a new custom object or use the Salesforce standard opportunity object.
- Option 3: Populate and map data from another object using a trigger.
Finally, we describe how to upload your opportunities into ACE in bulk using ACE Pipeline Manager.
About this blog post | |
Time to read | ~10 min |
Time to complete | ~20 min |
Learning level | Intermediate (200) |
AWS services | Amazon Partner CRM Connector AWS Pipeline Manager |
Prerequisites
- Read the AWS Partner CRM Integration Guide to understand business flows.
- Complete Stage 1: Onboarding prerequisites.
- Complete the steps in Stage 2: Request submission to fill out the Onboarding Request form on Partner Central.
- Follow the Guided setup instructions to install the CRM Connector on the sandbox Salesforce environment and configure authentication.
Option 1: Use the ACE opportunity custom object that’s packaged with the connector
Use the AWS Partner CRM Connector’s Automap ACE custom object in the opportunity submission process to surface validations in the UI. We recommend this option over the other two because the Automap ACE object is automatically included when you install the connector from the Salesforce AppExchange. Also, the schema of the Automap ACE object matches the latest ACE data model described in the AWS Partner CRM Integration samples GitHub repository.
To map the Automap ACE object within AWS Partner CRM Connector Version 2.0:
- In the ACE Mapping tab (see Figure 1), choose Opportunity.
- In the Object Selector field, choose the ACE Opportunity object.
- Choose Automap ACE object.
After the connector maps the fields, the page automatically reloads and you can review the map values for the picklist and multi-picklist fields to confirm that they have been created successfully. The next step is to create the schedule so Salesforce can sync the opportunities.
Note: If all data resides in the new object, no further work is required. If the data resides in another object, you may need to build triggers to move the data to the new object. See Option 3 later in this blog post for more information.
Option 2: Create a new custom object or use the Salesforce standard opportunity object
Using this option, you can either create your own custom object or use the standard opportunity object provided with Salesforce. In either scenario, confirm that you have included all ACE mandatory fields such as Customer Company Opportunity, Industry, and Country.
To map the standard opportunity object:
- In the ACE Mapping tab, choose Opportunity.
- In the Object Selector field, choose the Opportunity object. Note that the Automap ACE object is available only for the ACE Opportunity custom object provided by AWS, as described in Option 1.
- Map the required Salesforce fields to the AWS fields. For picklist fields, map Salesforce values with ACE Pipeline Manager values. Choose Save.
The data type of the target mapping field must match the data type of the newly created field in the custom object. Otherwise, the new field might not display on the ACE Mapping screen. For example, a text field like customerCompanyName must be mapped to a text (string) field in the Salesforce Object Manager. For a complete list of ACE Opportunity fields, see Opportunity Fields.
Note: If creating a custom object or updating the Salesforce standard object, you are responsible for maintaining and updating your object as changes occur within your organization.
Option 3: Populate and map data from another object using a trigger
Use this option if your data is sourced from more than one object. For example, if you store opportunity data in one object but want to use the ACE opportunity custom object to perform the ACE mapping. Because Salesforce requires a single object to map fields to ACE, this scenario requires an automation trigger or workflow to populate a new custom object with the combined data.
Consider a scenario when the partner wants to map the Customer Company Name and Industry fields from the parent account of an opportunity but source the Use Case, Target Close Date, and Amount fields from the opportunity itself. This partner can first create a trigger that moves data from a custom object to a staging object. Using this trigger, the fields in the staging object are populated with data from both the account and opportunity, allowing the partner to map those fields to ACE within Salesforce.
Use the following snippet of code as a starting point when building and running a similar trigger on the Salesforce backend.
Note: The ACE CRM team does not provide support for building or testing triggers. Work with your CRM administrative team instead.
Trigger OpportunityTrigger on Opportunity (after insert)
{
//In this case a new Opportunity needs to be transmitted to ACE
List<awsapn_ACE_Opportunity_c> objectsToInsert = new List< awsapn_ACE_Opportunity_c>();
if( trigger.isAfter && trigger.isInsert){
for(Opportunity newOpportunity : trigger.new){
awsapn_ACE_Opportunity newaceOpportunity = new awsapn_ACE_Opportunity_c();
newaceOpportunity. awsapn__Customer_Company_Name__c = newOpportunity.Account.Name;
newaceOpportunity. awsapn__Industry__c = newOpportunity.Account.Industry;
newaceOpportunity. awsapn__Target_Close_Date__c = newOpportunity.TargetCloseDate;
newaceOpportunity.awsapn__Expected_Monthly_AWS_Revenue__c = newOpportunity.Amount;
//...Other fields sourced from opp or parent account
objectsToInsert.add(newaceOpportunity);
}
}
insert objectsToInsert;
}
Once implemented, confirm that the trigger successfully populates the data correctly in the ACE opportunity custom object provided with the connector. You should see the required fields and the correct data type used in the field definition. Next, perform the same mapping in the ACE Mapping tab.
AWS Partner Amplitude has successfully implemented this option by completing the following tasks:
- As a prerequisite, created a spreadsheet that mapped fields from their standard opportunity object to the custom ACE Opportunity object delivered with the connector.
- Built a custom Apex class job to move data from their CRM opportunity and its parent account object to the ACE custom opportunity object.
- Configured the Apex code with a trigger to sync the required opportunities daily.
- Created a batch query file to specify the use case for the synchronization and provide a limit to the number of opportunities to sync to AWS.
Bulk importing opportunities via the AWS ACE Pipeline Manager
After completing the ACE mapping using one of the three options described earlier, you can upload your opportunities into ACE in bulk using ACE Pipeline Manager. Using ACE Pipeline Manager, you can manage your pipeline of AWS customers while simultaneously collaborating with AWS on those engagements.
Figure 2 illustrates the bulk upload process within ACE Pipeline Manager.
Data from a standard or custom object in the partner’s Salesforce instance is passed to the partner’s opportunity extract file. Next, the opportunity extract file is transformed and converted into an ACE-formatted file, which is used to upload data into ACE Pipeline Manager.
To ensure success, review your existing manual workflow for bulk-importing opportunities into ACE. Review the existing guidelines and standard operating procedures (SOPs) that your AWS alliance lead or ACE Pipeline Manager users follow to export opportunities from your Salesforce organization and map them to CSV format (required for bulk import). Analyzing how existing values are transformed to CSV format is a key factor for establishing the field mappings required for automating the CRM integration with ACE.
Conclusion
We hope this blog post has provided you with some valuable insights and guidance for using the AWS Partner CRM Connector to complete ACE mappings and sync opportunities to Salesforce. If you have any feedback about this content or the options described, please leave a comment below.