Skip to main content

Configure Microsoft Dynamics: entities, associations, and Field Mapping

Before configuring fields, decide which Dynamics entity will represent people. That choice affects schema, matching, imports, exports, and permissions.

Microsoft Dynamics organizes data differently from Enginy. Before configuring fields, decide which Dynamics entity will represent people.

In Enginy

In Microsoft Dynamics

Contact

Contact or Lead, depending on the configuration

Company

Account

Associated company

Parent Account of the Contact or Lead

Important: Enginy does not use Dynamics Contacts and Leads at the same time. The selected entity applies to the schema, matching, imports, exports, associations, and permissions.


Open the configuration

  1. Go to Integrations.

  2. Find Microsoft Dynamics.

  3. Click Configure.

Dynamics Setup contains five sections:

  • Sync configuration

  • Field mapping

  • Campaign mapping

  • User mapping

  • Permissions

This article focuses on the first two. When you finish, use Save Changes and confirm with Save.


Choose between Dynamics Contacts and Leads

Open Sync configuration and find Dynamics specific configuration. Under Enginy contacts are mapped with Dynamics, select:

  • contacts: Enginy searches, imports, and exports people as Dynamics Contacts.

  • leads: Enginy searches, imports, and exports people as Dynamics Leads.

Enginy Companies always correspond to Dynamics Accounts.

This choice also determines how the person relates to their company:

  • A Dynamics Contact uses its Parent Customer Account.

  • A Dynamics Lead uses its Parent Account.

  • If you import a Lead without a Parent Account, but it has companyname, Enginy can create a Company with that name.

It is best to decide this before the first import or export. If you change it later, the following operations will point to another Dynamics entity.

Even if you choose Leads, you will still see the Contacts tab inside Field mapping. That tab represents the people entity you selected.


Choose the activity for LinkedIn

In LinkedIn Activity mapping, select the activity type where Enginy will log LinkedIn activity. If you do not choose another type, Email is used.

If you use a custom activity, the connected user must be able to see it, create it, and relate it to the corresponding records.


Configure associations

In General, you will find two controls:

Control

What it does

When exporting contacts, associate them with companies in Dynamics

When exporting a person, Enginy can also export their Company and set it as Parent Account.

When exporting companies, associate them with contacts in Dynamics

When exporting a Company, Enginy can also export its Contacts and associate them with the Account.

Both controls are enabled in a new configuration. Disabling them prevents Enginy from creating or updating that association during future exports, but it does not remove existing relationships.

Dynamics keeps a single primary relationship with the Parent Account. If Enginy associates the record with another Account, the previous relationship may be replaced.


Review Field mapping

In this section, you will see two tabs: Contacts, which corresponds to the selected Dynamics Contact or Lead, and Companies, which corresponds to Dynamics Account.

When you connect Dynamics for the first time, Enginy creates these initial mappings.

Contacts or Leads

Enginy field

Dynamics field

First name

firstname

Last name

lastname

Professional email

emailaddress1

Mobile phone

mobilephone

Job title

jobtitle

Country

address1_country

Bio

description

Accounts

Enginy field

Dynamics field

Name

name

Website

websiteurl

Street address

address1_composite

City

address1_city

Description

description

Country

address1_country

You can modify these rows or add others with Add field. Each tab uses the schema of its own entity, so you should not assign an Account field inside Contacts.


Available mapping types

Section

What it is for

Field mapping

Connects an Enginy field with a Dynamics field.

Custom fields

Brings Dynamics fields into Enginy and allows them to be mapped when applicable.

Fixed value fields

Sends the same value in every export.

Manual export fields

Asks for a value during a manual export.

Engagement fields

Sets a value when Enginy logs an activity.

The same Dynamics field cannot be used multiple times within the same configuration.


Understand the two directions

The two Dynamics options explain how to handle a conflict during an export. They do not enable continuous background synchronization.

Enginy overwrites Dynamics

Enginy can send its value even if the Dynamics field already has information. Use it when Enginy should be the source of truth for that field.

Sync with Dynamics

During an export, Enginy keeps a non-empty value that already exists in Dynamics and fills the field when it is empty. On a new record, it uses the mapped Enginy value.

This option does not create real-time synchronization. To stop using a mapping, remove its row.

Empty Enginy values are usually omitted from the payload, so they should not be used as a general method for clearing existing information in Dynamics.


Type compatibility

Enginy value

Recommended field in Dynamics

Text

String or Memo

Integer

Integer or BigInt

Decimal number

Decimal, Double, or Money

Date

DateTime

True or false

Boolean

Option

Picklist, Status, or State, using the numeric code

Dates

For a Date Only field, Enginy uses YYYY-MM-DD. For other DateTime fields, it uses an ISO date.

Choice, Choices, Status, and State

Dynamics expects the numeric option code, not the visible label. If "Customer" has the value 100000002, the API must receive 100000002.

  • In fixed, manual, and engagement values, select the option in the dropdown.

  • If the source is a column, AI Variable, or Formula, it must return the numeric code.

  • For multi-select Choices, codes are sent separated by commas. Test this first, because pre-validation does not cover every case.

  • State and Status are related. Dynamics may reject a combination that is not valid for the current state.

Lookup and Owner

Lookups represent relationships, not free text. Enginy handles ownerid specifically through User mapping or owner selection during export. Other custom Lookups should be validated with a test before being used.


Before saving

Check that:

  • You have selected Contacts or Leads.

  • The Contacts tab points to fields from that entity.

  • Companies points to Accounts.

  • Choice values use numeric codes.

  • You have reviewed Lookups and owners.

  • You understand which mappings can overwrite data.

  • Associations with Parent Account reflect the result you want.

Then click Save Changes and confirm with Save.


Which records Enginy may create

Two settings decide whether Enginy creates a record in Dynamics that it could not match. They are the most common reason a contact "never arrived".

The creation toggles

In Sync configuration you will find two switches, both on by default:

  • Create contacts in Dynamics when no match is found

  • Create companies in Dynamics when no match is found

Turn one off and Enginy updates what it matches and skips the rest. Nothing new is created for that entity.

Required fields

Each row in the Field mapping table has a checkbox in the Required column. Tick it and a record missing that field is skipped instead of created.

Good to know: This never blocks an update. A record that already exists in Dynamics keeps being updated as usual, because the rule only gates creation.

Three things worth knowing before you use it:

  • One configuration covers every CRM. The check runs on the Enginy values, before they are translated into Dynamics field names. If you connect a different CRM later, the same rules apply.

  • 0 and false count as filled in. A field is only missing when it is empty, contains nothing but spaces, or is an empty list.

  • Turning creation off does not erase your selection. The list stops applying while the toggle is off, and comes back untouched when you turn it on again.

The checkbox is disabled while creation is off for that entity. Enable the matching toggle in Sync configuration first.

Important: There is one list for contacts, not one per entity. "Contact" here means the Enginy entity, so the same required fields apply whichever Dynamics entity your contacts are mapped to.

The rule that always applies

Always: A contact with no email, no phone, no LinkedIn URL and no CRM ID cannot be exported at all, whatever you configure here. Enginy would have no way to match or identify it in Dynamics.

Where you see the effect

Export to CRM checks your selection before running and tells you how many records are missing required fields. If every record in the selection would be skipped, it blocks the export with None of these contacts will be created in your CRM.

These rules also apply to automatic campaign syncs, not just manual exports.

Did this answer your question?