Dynamics 365 Business Central Custom Data XML
The XML format documented here is used for the import of records into Dynamics 365 Business Central.
We recommend that the ExternalId field be populated with the unique ID of the records from the external system, Zynk uses this field to track records already imported to prevent duplicates being created in Dynamics 365 Business Central.
Tasks
XML
Any fields not documented below are not supported with our imports / exports. Examples of where in the XML the fields should appear are shown in the samples below.
Sample Customer File:
<?xml version="1.0" encoding="utf-8"?>
<CustomRecords xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CustomRecord>
<Id>54f4fd40-34bc-ed11-9a88-6045bd0cf997</Id>
<ExternalId>5230</ExternalId>
<ODataETag>W/"JzQ0O3NPT21NalFNYnlTdm9iSzBlRkdVZlltOFRQeXJZSUpzRTQxMHYxeGlJMlE9MTswMDsn"</ODataETag>
<Field Name="vendorNo" Type="String">10000</Field>
<Field Name="name" Type="String">ECA</Field>
<Field Name="employees" Type="Integer">10</Field>
<Field Name="totalSpend" Type="Float">1450.85</Field>
<Field Name="created" Type="Date">2026-05-01T09:00:00</Field>
<Field Name="onlineReceipts" Type="Boolean">true</Field>
<Field Name="contactName" />
</CustomRecord>
</CustomRecords>
In each of the following sections most of the XML has been omitted to make the samples easier to read. The whole structure of the Customers schema is used below as a reference of where fields should be in the object model.
Matching
The following information is used to match each record against Dynamics 365 Business Central, to check if the record already exists or not. The task can also be configured to match on specific fields, see here for more details.
| Dynamics Field | XML Field | Type | Input | Notes |
|---|---|---|---|---|
| ID | Id | Guid | Optional | Matches existing records by ID. |
| - | ExternalId | string | Optional | Stored in Zynk's internal DB, and can be used for matching. |
<?xml version="1.0" encoding="utf-8"?>
<CustomRecords xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CustomRecord>
<Id>54f4fd40-34bc-ed11-9a88-6045bd0cf997</Id>
<ExternalId>5230</ExternalId>
</CustomRecord>
</CustomRecords>
Field
The Field element allows you to specify the value you want to set for a field in Dynamics 365 Business Central. Currently, we only support setting fields that take a single value of one of the following types: String, Integer, Float, Date or Boolean.
| XML Field | Type | Input | Notes |
|---|---|---|---|
| @Name | string | Required | The API name of the field |
| @Type | enum | Optional | The data type of the field. Can be String, Integer, Float, Date or Boolean. Defaults to String if not specified. |
| . | string | Optional | The value of the field. To set a field to null, make the Field element self-enclosed. |
<?xml version="1.0" encoding="utf-8"?>
<CustomRecords xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CustomRecord>
<Field Name="vendorNo" Type="String">10000</Field>
<Field Name="name" Type="String">ECA</Field>
<Field Name="employees" Type="Integer">10</Field>
<Field Name="totalSpend" Type="Float">1450.85</Field>
<Field Name="created" Type="Date">2026-05-01T09:00:00</Field>
<Field Name="onlineReceipts" Type="Boolean">true</Field>
<Field Name="contactName" />
</CustomRecord>
</CustomRecords>
Miscellaneous
The following information is not visible within Dynamics 365 Business Central.
| Dynamics Field | XML Field | Type | Input | Notes |
|---|---|---|---|---|
| - | ODataETag | string | Optional | Specify the last value to prevent updates if the record has since been modified |
<?xml version="1.0" encoding="utf-8"?>
<CustomRecords xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CustomRecord>
<ODataETag>W/"JzQ0O3NPT21NalFNYnlTdm9iSzBlRkdVZlltOFRQeXJZSUpzRTQxMHYxeGlJMlE9MTswMDsn"</ODataETag>
</CustomRecord>
</CustomRecords>