Integrated vendor master


Effective November 2020:

  • Common Data Service has been renamed to Microsoft Dataverse. For more information, see Power Automate Blog.
  • Some terminology in Microsoft Dataverse has been updated. For example, entity is now table and field is now column. For more information, see Terminology updates.

This topic will be updated soon to reflect the latest terminology.

The term vendor refers to a supplier organization, or a sole proprietor who supplies goods or services to a business. Although vendor is an established concept in Microsoft Dynamics 365 Supply Chain Management, no vendor concept exists in model-driven apps in Dynamics 365. However, you can overload the Account/Contact entity to store vendor information. The integrated vendor master introduces an explicit vendor concept in model-driven apps in Dynamics 365. You can either use the new vendor design or store vendor data in the Account/Contact entity. Dual-write supports both approaches.

In both approaches, the vendor data is integrated between Dynamics 365 Supply Chain Management, Dynamics 365 Sales, Dynamics 365 Field Service, and Power Apps portals. In Supply Chain Management, the data is available for workflows such as purchase requisitions and purchase orders.

Vendor data flow

If you don't want to store vendor data in the Account/Contact entity in Common Data Service, you can use the new vendor design.

Vendor data flow

If you want to continue to store vendor data in the Account/Contact entity, you can use the extended vendor design. To use the extended vendor design, you must configure the vendor workflows in the dual-write solution package. For more information, see Switch between vendor designs.

Extended vendor data flow


If you're using Power Apps portals for self-service vendors, the vendor information can flow directly to Finance and Operations apps.


Vendor data includes all information about the vendor, such as the vendor group, addresses, contact information, payment profile, and invoice profile. A collection of entity maps work together during vendor data interaction, as shown in the following table.

Finance and Operations apps Other Dynamics 365 apps Description
Vendor V2 Account Businesses that use the Account entity to store vendor information can continue to use it in the same way. They can also take advantage of the explicit vendor functionality that is coming because of Finance and Operations apps integration.
Vendor V2 Msdyn_vendors Businesses that use a custom solution for vendors can take advantage of the out-of-box vendor concept that is being introduced in Common Data Service because of Finance and Operations apps integration.
Vendor groups msdyn_vendorgroups This template synchronizes vendor group information.
Vendor payment method msdyn_vendorpaymentmethods This template synchronizes vendor payment method information.
CDS Contacts V2 contacts The contacts template synchronizes all primary, secondary, and tertiary contact information, for both customers and vendors.
Payment schedule lines msdyn_paymentschedulelines The payment schedule lines template synchronizes reference data for customers and vendors.
Payment schedule msdyn_paymentschedules The payment schedules template synchronizes payment schedule reference data, for both customers and vendors.
Payment day lines CDS V2 msdyn_paymentdaylines The payment day lines template synchronizes payment day lines reference data for customers and vendors.
Payment days CDS msdyn_paymentdays The payment days template synchronizes payment days reference data, for both customers and vendors.
Terms of payment msdyn_paymentterms The terms of payment template synchronizes payment terms reference data, for both customers and vendors.
Name affixes msdyn_nameaffixes The name affixes template synchronizes name affixes reference data, for both customers and vendors.

Mapping tables

Mapping types

There are several different mapping types. The following table explains the symbols used in the template tables.

Symbol Description
> One-way
>> One-way, and data is transformed in the process.
= Bidirectional
>< Bidirectional, and data is transformed in the process.
<< One-way, and data is transformed in the process.


The source filter and reverse source filter determine which rows are synchronized.

Default values

If a synchronized field does not exist in either the Finance and Operations table or the other Dynamics 365 table, then a default value is assigned in the synchronized table. In some cases, the default value is an integer that is a lookup to an attribute value in the Common Data Model. For example, in the Contacts table of the Common Data Model, the default value of address1_addresstypecode is 3. In the Common Data Model, for address1AddressTypeCode the value of 3 is Primary address.

Vendors V2 to msdyn_vendors

This template synchronizes data between Finance and Operations apps and Common Data Service.

Finance and Operations field Map type Customer engagement field Default value
VENDORACCOUNTNUMBER = msdyn_vendoraccountnumber
VENDORGROUPID = msdyn_vendorgroupid.msdyn_vendorgroup
VENDORPARTYTYPE >< msdyn_isperson
PERSONFIRSTNAME = msdyn_firstname
PERSONLASTNAME = msdyn_lastname
CREDITLIMIT = msdyn_vendorcreditlimit
ISFOREIGNENTITY >< msdyn_isforeignentity
ISONETIMEVENDOR >< msdyn_isonetimevendor
ADDRESSBUILDINGCOMPLIMENT = msdyn_addressbuildingcompliment
PERSONCHILDRENNAMES = msdyn_childrennames
ADDRESSCITY = msdyn_addresscity
ADDRESSCOUNTRYREGIONID = msdyn_addresscountryregionid
ADDRESSCOUNTRYREGIONISOCODE = msdyn_addresscountryregionisocode
ADDRESSCOUNTYID = msdyn_addresscountyid
CREDITRATING = msdyn_creditrating
ADDRESSDESCRIPTION = msdyn_addressdescription
ADDRESSDISTRICTNAME = msdyn_addressdistrictname
DUNSNUMBER = msdyn_dunsnumber
ETHNICORIGINID = msdyn_ethnicorigin
FORMATTEDPRIMARYADDRESS = msdyn_formattedprimaryaddress
PERSONHOBBIES = msdyn_hobbies
PERSONINITIALS = msdyn_initials
LANGUAGEID >< msdyn_language
PERSONLASTNAMEPREFIX = msdyn_lastnameprefix
PERSONMIDDLENAME = msdyn_middlename
ORGANIZATIONNUMBER = msdyn_organizationnumber
OURACCOUNTNUMBER = msdyn_ourvendoraccountnumber
PAYMENTID = msdyn_paymentid
PERSONPHONETICFIRSTNAME = msdyn_phoneticfirstname
PERSONPHONETICMIDDLENAME = msdyn_phoneticmiddlename
PERSONPHONETICLASTNAME = msdyn_phoneticlastname
ORGANIZATIONPHONETICNAME = msdyn_organizationphoneticname
ADDRESSPOSTBOX = msdyn_addresspostbox
PRIMARYURL = msdyn_primarycontacturl
PRIMARYEMAILADDRESS = msdyn_primaryemailaddress
PRIMARYEMAILADDRESSDESCRIPTION = msdyn_primaryemailaddressdescription
PRIMARYFACEBOOK = msdyn_primaryfacebook
PRIMARYFACEBOOKDESCRIPTION = msdyn_primaryfacebookdescription
PRIMARYFAXNUMBER = msdyn_primaryfaxnumber
PRIMARYFAXNUMBERDESCRIPTION = msdyn_primaryfaxnumberdescription
PRIMARYFAXNUMBEREXTENSION = msdyn_primaryfaxnumberextension
PRIMARYLINKEDIN = msdyn_primarylinkedin
PRIMARYLINKEDINDESCRIPTION = msdyn_primarylinkedindescription
PRIMARYPHONENUMBER = msdyn_pimaryphonenumber
PRIMARYPHONENUMBERDESCRIPTION = msdyn_primaryphonenumberdescription
PRIMARYPHONENUMBEREXTENSION = msdyn_primaryphonenumberextension
PRIMARYTELEX = msdyn_primarytelex
PRIMARYTELEXDESCRIPTION = msdyn_primarytelexdescription
PRIMARYTWITTER = msdyn_primarytwitter
PRIMARYTWITTERDESCRIPTION = msdyn_primarytwitterdescription
PRIMARYURLDESCRIPTION = msdyn_primaryurldescription
PERSONPROFESSIONALSUFFIX = msdyn_professionalsuffix
PERSONPROFESSIONALTITLE = msdyn_professionatitle
ADDRESSSTATEID = msdyn_addressstateid
ADDRESSSTREET = msdyn_addressstreet
ADDRESSSTREETNUMBER = msdyn_addressstreetnumber
VENDORKNOWNASNAME = msdyn_vendorknownasname
ADDRESSZIPCODE = msdyn_addresszipcode
DEFAULTPAYMENTDAYNAME = msdyn_defaultpaymentdayname.msdyn_name
DEFAULTPAYMENTSCHEDULENAME = msdyn_paymentschedule.msdyn_name
DEFAULTPAYMENTTERMSNAME = msdyn_paymentterms.msdyn_name
HASONLYTAKENBIDS >< msdyn_hasonlytakenbids
ISMINORITYOWNED >< msdyn_isminorityowned
ISVENDORLOCALLYOWNED >< msdyn_isvendorlocallyowned
ISSERVICEVETERANOWNED >< msdyn_isserviceveteranowned
ISOWNERDISABLED >< msdyn_ownerisdisabled
ISWOMANOWNER >< msdyn_womanowner
PERSONANNIVERSARYDAY = msdyn_personanniversaryday
PERSONANNIVERSARYYEAR = msdyn_anniversaryyear
PERSONBIRTHDAY = msdyn_birthday
PERSONBIRTHYEAR = msdyn_birthyear
ORGANIZATIONEMPLOYEEAMOUNT = msdyn_numberofemployees
VENDORHOLDRELEASEDATE = msdyn_vendoronholdreleasedate
VENDORPARTYNUMBER = msdyn_vendorpartynumber
ADDRESSLOCATIONID = msdyn_addresslocationid
PERSONANNIVERSARYMONTH = msdyn_vendorpersonanniversarymonth
PERSONBIRTHMONTH = msdyn_vendorpersonbirthmonth
PERSONMARITALSTATUS >< msdyn_maritalstatus
ADDRESSLATITUDE >> msdyn_addresslatitude
ADDRESSLONGITUDE >> msdyn_addresslongitude
ONHOLDSTATUS >< msdyn_onholdstatus
CURRENCYCODE = msdyn_currencycode.isocurrencycode
ISVENDORLOCATEDINHUBZONE >< msdyn_isvendorlocatedinhubzone
DEFAULTVENDORPAYMENTMETHODNAME = msdyn_vendorpaymentmethod.msdyn_name
INVOICEVENDORACCOUNTNUMBER = msdyn_invoicevendoraccountnumber.msdyn_vendoraccountnumber
PERSONGENDER >< msdyn_gender
AREPRICESINCLUDINGSALESTAX >< msdyn_priceincludessalestax
SALESTAXGROUPCODE = msdyn_taxgroup.msdyn_name
PRIMARYCONTACTPERSONID = msdyn_vendorprimarycontactperson.msdyn_contactpersonid

Vendor groups to msdyn_vendorgroups

This template synchronizes data between Finance and Operations apps and Common Data Service.

Finance and Operations field Map type Customer engagement field Default value
DEFAULTPAYMENTTERMNAME = msdyn_paymentterms.msdyn_name
DESCRIPTION = msdyn_description
VENDORGROUPID = msdyn_vendorgroup
CLEARINGPERIODPAYMENTTERMNAME = msdyn_clearingperiodpaymentpermname.msdyn_name

Vendor payment method to msdyn_vendorpaymentmethods

This template synchronizes data between Finance and Operations apps and Common Data Service.

Finance and Operations field Map type Customer engagement field Default value
NAME = msdyn_name
DESCRIPTION = msdyn_description
SUMBYPERIOD >< msdyn_sumbyperiod
DISCOUNTGRACEPERIODDAYS = msdyn_discountgraceperioddays
PAYMENTSTATUS >< msdyn_paymentstatus
ALLOWPAYMENTCOPIES >< msdyn_allowpaymentcopies
PAYMENTTYPE >< msdyn_paymenttype
LASTFILENUMBER = msdyn_lastfilenumber
LASTFILENUMBERTODAY = msdyn_lastfilenumbertoday
ACCOUNTTYPE >< msdyn_accounttype
BRIDGINGPOSTINGENABLED >< msdyn_bridgingposting
ENABLEPOSTDATEDCHECKCLEARINGPOSTING >< msdyn_postdatedcheckclearingposting
PROMISSORYNOTEDRAFTTYPE >< msdyn_promissorynotedrafttype
DIRECTDEBIT >< msdyn_directdebit