/// <summary> /// Initiates a link between an external identity and an existing customer. /// </summary> /// <param name="emailAddressOfExistingCustomer">The email address of existing customer.</param> /// <param name="emailTemplateId">The email template identifier.</param> /// <param name="emailTemplateProperties">The email template properties.</param> /// <returns> /// A task. /// </returns> public virtual async Task <LinkToExistingCustomerResult> InitiateLinkExternalIdToExistingCustomer(string emailAddressOfExistingCustomer, string emailTemplateId, IEnumerable <NameValuePair> emailTemplateProperties) { string activationToken = System.Guid.NewGuid().ToString(); IStoreOperationsManager storeOperationsManager = Utilities.GetManagerFactory(this.EcommerceContext).GetManager <IStoreOperationsManager>(); LinkToExistingCustomerResult linkResult = await storeOperationsManager.InitiateLinkToExistingCustomer(emailAddressOfExistingCustomer, activationToken, emailTemplateId, emailTemplateProperties); return(linkResult); }