D365 Marketing Weekly
Have you seen the D365 Marketing Weekly newsletter yet?
A weekly issue covering features, functionality and news on the topic of Marketing, specifically covering Dynamics 365 Marketing and other interesting tools and tips for anyone interested in the subject.
Subscribe Here
*** NOTE: ALL INFORMATION IS ACCURATE AT DATE OF PUBLISHING ***

One of the most important things when it comes to Realtime Marketing in Customer Insights – Journeys is knowing that Contact Point Consent (CPC) records are what keep you compliant, making sure you aren’t emailing people who have already unsubscribed. If you have only ever used the marketing app in D365 for this, then you are likely OK as anyone who has clicked on your Unsubscribe link at the bottom of any emails will have then had a CPC record either created or updated. What if you’re moving from another platform that already has a list of people on a suppression list who’ve previously unsubscribed? This post is for you as it will walk through how to import contact point consent records as data from your suppression list and get those CPC records added to Realtime.

The first thing that is important is determining which Compliance profile you are linking this to. I would suggest that you create a CPC record for the main Commercial Purpose and a CPC record for each Topic you’ve got linked to the Commercial Purpose. You need to make sure that Purpose has a unique name as it will be used during the import to make sure the new records are linked correctly. Even if you only have one Compliance profile, it’s possible you have an inactive one that might already have a Purpose with the same name. So for mine, I have renamed the Commercial one to Main Commercial. If you have more than one named Commercial, your import will fail.

Click to view in detail

Next you need to create your import file as a CSV document. Ideally you can export all email addresses from your previous system as that is all you would need from there, everything else will be new columns you will need to add.

Click to view in detail
  • Channel – this should either be Text Message or Email and worded exactly in that way
  • Contact point – this is the email address or phone number you want to update for
  • Consent type – either Purpose or Topic. If uploading Topics, this should be set to Topic, otherwise Purpose
  • Purpose – the exact name of the Purpose record you wish to link the CPC records to
  • Topic – this column can be left out if you are only uploading Purposes, otherwise if the Consent type is Topic, make sure this is the exact name of the Topic you wish to link the CPC records to
  • Consent status – if you are uploading a suppression list, this should be Opted Out, otherwise Opted In (as per your needs)
  • Reason – this is actually an option set (choice) field. You can pick one of the options from the list, but for me, No reasons works. You can always use one of the Opted Out ones, but again, the wording must match exactly to the Choice field options rather than trying to add one of your own
  • Source – this needs to be Internal
  • Who requested the change – you can add whatever you like here, but this can be used to add your own text to show that it was created as part of a suppression import if you wish

When we do the import, we will be creating a record for each row of the CSV file but ONLY if the email doesn’t already exist on a CPC record. If it does, the row will fail and you will need to find the existing CPC record and manually change it to Opted Out (or Opted In).

Click to view in detail

From the top of the Consent centre area, click on the arrow next to Import from Excel and then click Import from CSV. Note that if you see three dots with a menu, you might need to click on that in order to see the Import option.

Click to view in detail

Now browse out to your file and select it to upload.

Click to view in detail

You can skip past the next screen.

Click to view in detail

The last screen shows all of the mapping. You shouldn’t need to do anything if you have named the column headers the same as mine as it will select the correct column for you. However, if needed, you can go through and map to make sure you are adding the right values to the right fields. Once happy, click to continue and start the import. You will then have an option from the bottom of the side panel to track the progress.

Click to view in detail

From there you can see when the status is completed.

Click to view in detail

Any errors will be shown in the failures tab which should then give more information as to why those rows failed.

Click to view in detail

You should then see your successfully imported records in the Consent centre. Once you’ve done it for your Purpose, you can then do it again for each Topic, making sure to adjust or use a new CSV file with the correct Consent type in the file.

Click to view in detail


Check out the latest post:
Split Your Audience By Number Or Percentage In Customer Insights - Journeys


D365 Marketing Weekly
Have you seen the D365 Marketing Weekly newsletter yet?
A weekly issue covering features, functionality and news on the topic of Marketing, specifically covering Dynamics 365 Marketing and other interesting tools and tips for anyone interested in the subject.
Subscribe Here
This is just 1 of 480 articles. You can browse through all of them by going to the main blog page, or navigate through different categories to find more content you are interested in. You can also subscribe and get new blog posts emailed to you directly.




6 thoughts on “How To Import Contact Point Consent Records

  1. Great and important post Megan. One caveat about the import file format which I’ve experienced, is if you have multiple compliance profiles you need to use the ID value for the purpose in question instead of the purpose name, since each profile is likely to have its own Commercial and Transactional purpose record.

    1. Hi Mike, yes, or rename the Purpose/Topic so each one has it’s own unique name. Either way would work.

  2. Hi Megan,
    I follow step by step this instruction, using excel file to import CPC, fields was mapped, import started, but I’ve received Partial error:
    Updating of ‘msdynmkt_contactpointvalue’ attribute is not supported.
    It looks, that is impossible to create new record, because this field is read only. How to resolve this problem?

    1. It’s not impossible, so something else must be going on. The row where you got the error, was there already a CPC record for the same email address? If so, it would fail, which is why it won’t create another one. There can only be one CPC per email, per Purpose and/or Topic.

  3. Hi Megan, thank you for the amazing content!

    I followed your instructions and now I am unsure how to move forward. I have the following scenario: I have a list of emails, some of these emails are part of contacts and/or leads in Dataverse, but most are not. So after I import/load CPC, how can I create a trigger-based journey for the contact points that did not exist as either a contact/lead? My goal would be to at the end of this journey to create these contact points as leads. Thank you πŸ™‚

    1. Hi Augusto, glad the content helps! Hmmm, typically you would have your Contacts and Leads in the system first, and any way to automatically then create those records based on Contact Point Consent records being created isn’t really best practice in terms of how to go about it. You need a record to send it through a journey, so you can’t trigger a journey for anyone if the record doesn’t exist. My suggestion is, create the Contacts/Leads first, then do your import of Contact Point Consent records, and then create a Segment of the records you want to send on the Journey.

Leave a Reply

Your email address will not be published. Required fields are marked *