public void Exercise_13_2_Add_New_Customer() { //Create a Customer Account resource var customerAccountResource = new Mozu.Api.Resources.Commerce.Customer.CustomerAccountResource(_apiContext); var existingAcct = customerAccountResource.GetAccountsAsync(filter: "EmailAddress eq '*****@*****.**'").Result; if (existingAcct == null || existingAcct.TotalCount == 0) { //Create a new Account Info and Authorization Info contract var customerAccountAndAuthInfo = new Mozu.Api.Contracts.Customer.CustomerAccountAndAuthInfo() { Account = new Mozu.Api.Contracts.Customer.CustomerAccount() { AcceptsMarketing = false, CompanyOrOrganization = "Serenity Corp.", EmailAddress = "*****@*****.**", ExternalId = "A0001", FirstName = "Malcolm", LastName = "Reynolds", IsActive = true, IsAnonymous = false, LocaleCode = "en-US", TaxExempt = false, IsLocked = false, UserName = "******", }, Password = "******", IsImport = true }; var newAccount = customerAccountResource.AddAccountAndLoginAsync(customerAccountAndAuthInfo).Result; var contactMal = new Mozu.Api.Contracts.Customer.CustomerContact() { Email = "*****@*****.**", FirstName = "Malcolm", LastNameOrSurname = "Reynolds", Label = "Capt.", PhoneNumbers = new Mozu.Api.Contracts.Core.Phone() { Mobile = "555-555-0001" }, Address = new Mozu.Api.Contracts.Core.Address() { Address1 = "03-K64 Firefly Transport", AddressType = "Residential", CityOrTown = "Austin", CountryCode = "US", PostalOrZipCode = "78759", StateOrProvince = "TX" }, Types = new System.Collections.Generic.List<Mozu.Api.Contracts.Customer.ContactType>() { new Mozu.Api.Contracts.Customer.ContactType() { IsPrimary = true, Name = "Billing" } } }; var contactInara = new Mozu.Api.Contracts.Customer.CustomerContact() { Email = "*****@*****.**", FirstName = "Inara", LastNameOrSurname = "Serra", Label = "Ms.", PhoneNumbers = new Mozu.Api.Contracts.Core.Phone() { Mobile = "555-555-0002" }, Address = new Mozu.Api.Contracts.Core.Address() { Address1 = "03-K64 Firefly Transport -- Shuttle", AddressType = "Residential", CityOrTown = "Austin", CountryCode = "US", PostalOrZipCode = "78759", StateOrProvince = "TX" }, Types = new System.Collections.Generic.List<Mozu.Api.Contracts.Customer.ContactType>() { new Mozu.Api.Contracts.Customer.ContactType() { IsPrimary = false, Name = "Billing" } } }; //Create a Customer Contact resource var contactResource = new Mozu.Api.Resources.Commerce.Customer.Accounts.CustomerContactResource(_apiContext); //Add new contact var newContactMal = contactResource.AddAccountContactAsync(contactMal, newAccount.CustomerAccount.Id).Result; //Add additional contact var newContactInara = contactResource.AddAccountContactAsync(contactInara, newAccount.CustomerAccount.Id).Result; } //Create a Customer Credit resource var creditResource = new Mozu.Api.Resources.Commerce.Customer.CreditResource(_apiContext); //Create a Credit object var credit = new Mozu.Api.Contracts.Customer.Credit.Credit() { ActivationDate = DateTime.Now, Code = Guid.NewGuid().ToString("N"), CreditType = "GiftCard", CurrencyCode = "USD", CurrentBalance = 1000, CustomerId = 1002, InitialBalance = 1000 }; //Add credit var newCredit = creditResource.AddCreditAsync(credit).Result; }
public void Exercise_13_2_Add_New_Customer() { //Create a Customer Account resource var customerAccountResource = new Mozu.Api.Resources.Commerce.Customer.CustomerAccountResource(_apiContext); var existingAcct = customerAccountResource.GetAccountsAsync(filter: "EmailAddress eq '*****@*****.**'").Result; if (existingAcct == null || existingAcct.TotalCount == 0) { //Create a new Account Info and Authorization Info contract var customerAccountAndAuthInfo = new Mozu.Api.Contracts.Customer.CustomerAccountAndAuthInfo() { Account = new Mozu.Api.Contracts.Customer.CustomerAccount() { AcceptsMarketing = false, CompanyOrOrganization = "Serenity Corp.", EmailAddress = "*****@*****.**", ExternalId = "A0001", FirstName = "Malcolm", LastName = "Reynolds", IsActive = true, IsAnonymous = false, LocaleCode = "en-US", TaxExempt = false, IsLocked = false, UserName = "******", }, Password = "******", IsImport = true }; var newAccount = customerAccountResource.AddAccountAndLoginAsync(customerAccountAndAuthInfo).Result; var contactMal = new Mozu.Api.Contracts.Customer.CustomerContact() { Email = "*****@*****.**", FirstName = "Malcolm", LastNameOrSurname = "Reynolds", Label = "Capt.", PhoneNumbers = new Mozu.Api.Contracts.Core.Phone() { Mobile = "555-555-0001" }, Address = new Mozu.Api.Contracts.Core.Address() { Address1 = "03-K64 Firefly Transport", AddressType = "Residential", CityOrTown = "Austin", CountryCode = "US", PostalOrZipCode = "78759", StateOrProvince = "TX" }, Types = new System.Collections.Generic.List <Mozu.Api.Contracts.Customer.ContactType>() { new Mozu.Api.Contracts.Customer.ContactType() { IsPrimary = true, Name = "Billing" } } }; var contactInara = new Mozu.Api.Contracts.Customer.CustomerContact() { Email = "*****@*****.**", FirstName = "Inara", LastNameOrSurname = "Serra", Label = "Ms.", PhoneNumbers = new Mozu.Api.Contracts.Core.Phone() { Mobile = "555-555-0002" }, Address = new Mozu.Api.Contracts.Core.Address() { Address1 = "03-K64 Firefly Transport -- Shuttle", AddressType = "Residential", CityOrTown = "Austin", CountryCode = "US", PostalOrZipCode = "78759", StateOrProvince = "TX" }, Types = new System.Collections.Generic.List <Mozu.Api.Contracts.Customer.ContactType>() { new Mozu.Api.Contracts.Customer.ContactType() { IsPrimary = false, Name = "Billing" } } }; //Create a Customer Contact resource var contactResource = new Mozu.Api.Resources.Commerce.Customer.Accounts.CustomerContactResource(_apiContext); //Add new contact var newContactMal = contactResource.AddAccountContactAsync(contactMal, newAccount.CustomerAccount.Id).Result; //Add additional contact var newContactInara = contactResource.AddAccountContactAsync(contactInara, newAccount.CustomerAccount.Id).Result; } //Create a Customer Credit resource var creditResource = new Mozu.Api.Resources.Commerce.Customer.CreditResource(_apiContext); //Create a Credit object var credit = new Mozu.Api.Contracts.Customer.Credit.Credit() { ActivationDate = DateTime.Now, Code = Guid.NewGuid().ToString("N"), CreditType = "GiftCard", CurrencyCode = "USD", CurrentBalance = 1000, CustomerId = 1002, InitialBalance = 1000 }; //Add credit var newCredit = creditResource.AddCreditAsync(credit).Result; }