ExactTarget –
Dynamics CRM
Integration
Product Specifications
October 2012
C
ONTENTS
Purpose ... 3
Functionality ... 4
Assumptions ... 5
Use Cases ... 6
1. New Leads from CRM to ExactTarget ... 6
2. Updated Leads from CRM to ExactTarget ... 6
3. Convert Lead to New Contact ... 6
4. New Contacts from CRM to ExactTarget ... 6
5. Updated Contacts from CRM to ExactTarget ... 6
6. Merge Two Contacts in CRM ... 6
7. Deactivate of Contact in CRM ... 6
8. Sync Contact marketing Lists from CRM to Marketing Lists in ExactTarget ... 7
9. Create Send Record from ExactTarget to CRM ... 7
10. Subscriber-Level (Low-Level) Program Metrics from ExactTarget to CRM ... 7
11. Send-Level (High-Level) Metrics from ExactTarget to CRM [BETA] ... 7
12. Sync Global Opt-out from ExactTarget to CRM ... 7
13. Sync Lead marketing Lists from CRM to Marketing Lists in ExactTarget ... 7
14. Scalability ... 7
15. Performance ... 7
Solution Maps ... 8
P
URPOSE
ExactTarget provides an integration solution between ExactTarget and Dynamics CRM (CRM) that allows a user to create a list of contacts, choose a mail template, and execute a send to those contacts as subscribers in ExactTarget. The tracking metrics for these are then updated to the associated contact records in CRM as well as a custom objects in CRM that are related to the send.
Larger ExactTarget customers have integration needs that extend beyond this baseline capability. The current
integration integrates only the tracking metrics for those sends that are initiated in CRM. Data from sends originated in ExactTarget to leverage capabilities in ExactTarget like AB Testing, Audience Builder, or ReturnPath are not integrated back into CRM with the current solution.
The approach to solving this problem is to synchronize all leads and contacts in CRM to ExactTarget as subscribers. This enables the integration of metrics into CRM from all programs in ExactTarget regardless of the program’s origination. Scribe Online has a connector for Microsoft Dynamics CRM. The scope of the project includes development of an ExactTarget connector and a SolutionPak for integrating CRM and ExactTarget.
namics
CRM
ExactTarget
Configuration cribe nline Silverlight Contacts to ExactTargetcribe nline
Windows Azure Program Metrics to CRMcribe nline gent ol tion Template CRM Connector ExactTarget Connector Existing To be built
F
UNCTIONALITY
Dynamics CRM
ExactTarget
New and Updated Contacts Create and update Subscribers including mapping
data to custom attributes Marketing Contact List maintenance (create, add,
or delete Members)
Subscriber list maintenance (create, add, or delete Subscribers)
Create Send Create Send
Update statistics on Send pdate statistics on end (onl incl des “ niq e”
stats, not “total” stats)
New and updated Leads Create and update Subscribers
Marketing Lead List maintenance (create, add, or delete Members)
Subscriber list maintenance (create, add, or delete Subscribers)
Convert Lead to Contact Create second Subscriber record (consistent with
existing ET integration solution)
Merge two Contacts Globally unsubscribe Subscriber that corresponds
to the losing Contact
Flip DoNotBulkEmail flag on Contact or Lead Globally unsubscribe/activate Subscriber Flip DoNotBulkEmail flag on Contact or Lead Globally unsubscribe/activate Subscriber Create one Response Activity per send per Contact
or Lead
Send is executed against Subscriber
Add event to CRM Response Activity Subscriber activity creates an Event against a Send (open, unsubscribe, click, etc.)
A
SSUMPTIONS
1. The global opt-in/opt-out setting will be maintained in ExactTarget and synchronized to Dynamics CRM. 2. The connector will support the ability to map additional attribute data on the ET Subscriber records during the
implementation of the solution.
3. The integration solution will not support the synchronization of hard deletes of contact records in Dynamics CRM to ExactTarget.
4. All data volumes outlined in the design document are for normal operations beyond the initial synchronization of records.
5. The integration solution will leverage the Dynamics CRM customizations used by the ExactTarget provided solution.
6. This integration solution will be capable of coexisting with the existing ExactTarget provided Dynamics CRM and ExactTarget integration or be able to be deployed independently of that solution. Scribe will test and validate only the independent deployment of the solution and will not test or validate the combined solution.
7. There are four major categories of marketing campaigns that will be supported by the combined solution as outlined in the following table:
Campaign Integration Solution
Ad-hoc sends from CRM ExactTarget provided
Workflow driven sends (ex. welcome email) ExactTarget provided Real-time transactional sends (ex. thank you for donation) ExactTarget provided Bulk campaigns (involving A/B testing, return path, etc.) Scribe Online provided
8. ExactTarget has multiple system versions (Advanced and E2.0) and multiple methods of tracking subscribers (email address and subscriber ID, which is the CRM GUID + a type such as Contact). Scribe will test and validate only:
a. E2.0 using subscriber ID b. Advanced using email address
Scribe will not test or validate any other combinations that may exist.
9. The solution will support two possible initial states – (1) data in CRM but no data in ExactTarget or (2) subscriber keys already synchronized between CRM and ExactTarget. Using the solution with other initial states will not be supported.
10. If the customer is using the ET-CRM Connector tracking return functionality they will not be using the Scribe Connector to return tracking functionality, Use Cases 13 & 14.
11. API Users will have appropriate permissions in ET to do the necessary operations. If E2.0 the API User must also have the default business unit set to the enterprise business unit and has availability to the business units that
U
SE
C
ASES
1.
N
EWL
EADS FROMCRM
TOE
XACTT
ARGETWhen a user creates a new lead in CRM, insert the lead as a subscriber in ExactTarget. The end result should be a new s bscriber in ExactTarget with the lead’s information. The integration m st create a relationship between the s bscriber in ExactTarget and the lead in CRM so that future updates to the lead can be brought over to the subscriber. This should include the ability to populate subscriber attributes. The attribute list is customizable so specific links to accommodate these fields may not be included in the base solution.
2.
U
PDATEDL
EADS FROMCRM
TOE
XACTT
ARGETWhen a user modifies a lead in CRM, update the corresponding subscriber record in ExactTarget with the changed information from the lead. CRM is considered the system of record for this information, and any changes in CRM will overwrite any changes that may have happened in ExactTarget. This should include the ability to update subscriber attributes. The attribute list is customizable so specific links to accommodate these fields may not be included in the base solution.
3.
C
ONVERTL
EAD TON
EWC
ONTACTWhen a user converts a lead to a new contact in CRM, the integration will create a new subscriber for the new contact in ExactTarget. It will not preserve the information associated with the original lead or update the original subscriber with any new information from the new contact.
4.
N
EWC
ONTACTS FROMCRM
TOE
XACTT
ARGETWhen a user creates a new contact in CRM, insert the contact in ExactTarget. The end result should be a new subscriber in ExactTarget with the contact’s information. The integration m st create a relationship between the subscriber in ExactTarget and the contact in CRM so that future updates to the contact can be brought over to the subscriber. This should include the ability to populate subscriber attributes. The attribute list is customizable so specific links to accommodate these fields may not be included in the base solution.
5.
U
PDATEDC
ONTACTS FROMCRM
TOE
XACTT
ARGETWhen a user modifies a contact in CRM, update the corresponding subscriber record in ExactTarget with the changed information from the contact and the related account. This information exchange will only be triggered if the contact changes and not if the associated account record changes. CRM is considered the system of record for this information, and any changes in CRM will overwrite any changes that may have happened in ExactTarget. This should include the ability to update subscriber attributes. The attribute list is customizable so specific links to accommodate these fields may not be included in the base solution.
6.
M
ERGET
WOC
ONTACTS INCRM
When a contact is merged in CRM, the integration will leave the corresponding surviving record alone in Exact Target and will update the corresponding losing record in Exact Target with a global opt-out status.
When a contact opts in or out of bulk email in CRM, update the corresponding subscriber record in ExactTarget with a global Opt Out status.
8.
S
YNCC
ONTACT MARKETINGL
ISTS FROMCRM
TOM
ARKETINGL
ISTS INE
XACTT
ARGETWhen a marketing list is created in CRM, create that list in ExactTarget with the same name and then update the ExactTarget Marketing List with the Subscriber for each of the CRM contacts in the list. As CRM contacts are added or removed for the Marketing list in CRM, add or remove those associated contacts from the list of Subscribers in the ET Marketing list.
9.
C
REATES
ENDR
ECORD FROME
XACTT
ARGET TOCRM
When a send is executed in ExactTarget, create a new, corresponding send record in Dynamics CRM.
10.
S
UBSCRIBER-L
EVEL(L
OW-L
EVEL)
P
ROGRAMM
ETRICS FROME
XACTT
ARGET TOCRM
As tracking metrics are captured in ExactTarget, insert the tracking metric records into the custom activity object in CRM, relating the metrics to the corresponding CRM contact and send.
11.
S
END-L
EVEL(H
IGH-L
EVEL)
M
ETRICS FROME
XACTT
ARGET TOCRM
[BETA]
As the aggregate metrics for a given send in ExactTarget are updated, update the send record in CRM with the new metrics. This will include only the metrics that ExactTarget pre-calculates. Any metrics that would require extensive counting of individual records such as Total Clicks per Send or Click Rates will not be included.
12.
S
YNCG
LOBALO
PT-
OUT FROME
XACTT
ARGET TOCRM
When a subscriber record in ExactTarget is updated with a global opt-out setting, update the corresponding contact record in CRM by setting the bulk email opt out flag.
13.
S
YNCL
EAD MARKETINGL
ISTS FROMCRM
TOM
ARKETINGL
ISTS INE
XACTT
ARGETWhen a marketing list is created in CRM, create that list in ExactTarget with the same name and then update the ExactTarget Marketing List with the Subscriber for each of the CRM leads in the list. As CRM contacts are added or removed for the Marketing list in CRM, add or remove those associated contacts from the list of Subscribers in the ET Marketing list.
14.
S
CALABILITYThe solution must be capable of handling at least 1 million records at a time from any given map in either direction without restarting, even if some of the individual HTTP calls to the ExactTarget or CRM APIs fail. In the event of a catastrophic error (prolonged loss on connectivity) the solution will terminate with a fatal error and restart when next
SOLUTION MAPS
Map Name Description
CRM Contact to ET Subscriber Creates and updates subscribers. Includes setting global unsubscribe based on DoNotAllowBulkEmail flag. CRM Lead to ET Subscriber Creates and updates subscribers. Includes setting global
unsubscribe based on DoNotAllowBulkEmail flag.
CRM List to ET List Creates and updates lists.
CRM List Member to ET List Subscriber Associates subscribers with lists. Will also create them if either does not exist.
CRM List Member delete to ET List unsubscribe Unsubscribes subscribers from lists.
CRM Maintenance: Delete change history table Cleans up Scribe's custom table that is used for tracking list removal activity in CRM.
ET Subscriber Global Opt-Out to CRM Contact DoNotAllowBulkEmail
Flips the CRM opt-out flag. ET Subscriber Global Opt-Out to CRM Lead
DoNotAllowBulkEmail
Flips the CRM opt-out flag.
ET Send to CRM Send Metrics Creates sends and updates sends with metrics.
ET SentEvent to CRM Response Activity Creates a CRM response activity for each sent event.
SentEvent to CRM Adds sent events to response activities.
OpenEvent to CRM Adds open events to response activities.
BounceEvent to CRM Adds bounce events to response activities.
UnsubEvent to CRM Adds unsubscribe events to response activities.
EXACT TARGET API DOCUMENTATION
CODE@ (http://code.exacttarget.com/)is our developer community and developer documentation site. To post and answer API questions you must create a free login. To view the documentation does not require anything. Please feel free to sign up and contribute questions/answers as needed.
We will want to use the Web Service (SOAP) API and never the XML API!
Key API Links
Web Service Guide
.NET (C#) SOAP API Starter Kit
SOAP API Best Practices for ET