Skip to main content

Troubleshoot Microsoft Dynamics integration warnings and errors

Most Dynamics issues come down to permissions, Field Mapping, matching, or authentication. Start with the exact message and the affected entity type.

Most Dynamics issues come down to one of these four areas: permissions, Field Mapping, matching, or authentication. Start with the exact message and the affected entity type.


What Field mapping icons mean

Icon

Actual meaning

Blue check

The option is selected in that dropdown. It does not confirm that the mapping is valid.

Yellow warning

Enginy has detected a type risk or an options field. It is a heuristic warning and does not block saving.

Red X

The option has a specific reason for being disabled, for example because it is already used or is read-only when that metadata is available.

Important: Dynamics does not currently provide Enginy with all metadata needed to identify every read-only field in advance. A field without a red X can still fail because of its schema, permissions, or business rules.

If a field was deleted or renamed in Dynamics, the mapping value may appear empty instead of showing a red X.


Type warnings

A warning does not mean the operation will fail. It means Enginy cannot guarantee the conversion.

Source

Recommended destination

What to review

Text

String or Memo

Maximum length and format.

Integer

Integer or BigInt

Allowed range.

Decimal

Decimal, Double, or Money

Separator and precision.

Date

DateTime

Date Only versus date with time.

Boolean

Boolean

true and false values.

Choice

Picklist, State, or Status

Numeric code, not label.

Choices

Compatible multi-select

Numeric codes separated by commas.

Owner or Lookup

Compatible relationship

ID and binding for the correct entity.

Unknown types, both in the source and in Dynamics, may not generate a warning. Always confirm custom mappings with a test.


Errors Enginy may show

Missing CRM permission

Dynamics rejected the operation because privileges are missing. Review:

  • Create, Read, or Write on the entity.

  • Append and Append To for associations.

  • Assign for owner changes.

  • Act On Behalf Of Another User if User Mapping exists.

  • Privilege depth and access to the specific record.

Invalid CRM field mapping

A configured field no longer exists, does not belong to the selected entity, or cannot be used in that operation.

  1. Open Field mapping.

  2. Find empty rows or renamed fields.

  3. Delete and recreate the mapping.

  4. Check that Contacts corresponds to the selected Contact or Lead entity.

  5. Save and repeat with one record.

CRM field type mismatch

The value is not compatible with the Dynamics field. Check Choice, Choices, DateTime, numbers, State, Status, Owner, and Lookup. The error detail usually indicates the rejected field.

CRM record not found

Enginy has a Dynamics ID, but the record no longer exists or the user cannot see it.

Confirm the ID, connected environment, and user access. If the record was deleted and should be recreated, support can help review the link before exporting again.

Unsupported filter or operator

A search may fail if an operator is not compatible with the field type or if the value does not have the expected format.

Remove the problematic filter, add it again from the selector, and test with one condition first.


Choice, State, and Status

Dynamics expects the internal numeric value. The visible label is not enough.

Example: if the interface shows "Customer" and its code is 100000002, the value sent must be 100000002.

State and Status form a pair. A valid Status may be incompatible with the current State. If an update fails, test first without those mappings and then add a valid combination for your environment.


Lookup and Owner

A Lookup is not free text. Dynamics needs a reference to a specific entity.

Enginy handles the owner specifically through User mapping or the owner selected during export. Custom Lookups are not guaranteed by the general mapping, even if the selector allows saving the row.


Permission issues that do not appear in Permissions

The panel checks whether a privilege exists, but not its access level. It may also not cover privileges for every activity, such as Phone Call.

If the panel looks correct and the operation fails:

  1. Check the connected user's role.

  2. Review their business unit and access to the record.

  3. If there is User Mapping, also review the represented user.

  4. Check Field Security Profiles and required fields.

  5. Review Dynamics business rules and plugins.


When a read works but a write fails

Reads use the user who connected Dynamics. Some writes may run as the mapped user. The write is limited by both users' permissions.

It also needs additional privileges such as Write, Assign, Append, or Append To, which are not needed for a simple read.


Authentication or environment issues

Symptom

What to do

Expired connection

Use Reconnect and complete sign-in again.

Wrong environment

Reconnect using the exact API URL.

No records appear

Check environment, Contact or Lead entity, Read, and access depth.

Consent blocked

Ask a Microsoft Entra admin to approve the app.


Duplicates or incorrect records

If Enginy creates duplicates or updates another record:

  • Review repeated emails.

  • Check LinkedIn Profile URL.

  • Review first name, last name, and company.

  • Check Website and Account name.

  • Disable Check for any domain if the match is too broad.

  • Avoid using empty or non-unique data in Custom mapping.

Remember that if Dynamics returns several results, Enginy uses the first one.


Before contacting support

Reproduce the failure with one record and gather:

  • Date, time, and time zone.

  • API URL and environment name.

  • Affected entity.

  • Operation: connection, import, export, or activity.

  • Logical name of the Dynamics field.

  • Screenshot of the full message.

  • Enginy ID and, if you have it, Dynamics ID.

  • Whether User Mapping exists and which user was selected.

Do not send passwords, access tokens, or refresh tokens.

Did this answer your question?