Skip to content

Sage 50 US Customer XML

We recommend that the ExternalId field be populated by the unique id of the customer from the external system, Zynk uses this field to track customers already imported to prevent duplicates being created in Sage.

Tasks

XML

Any Sage fields not documented below are not supported with our imports, if there are additional fields you need contact us at [email protected].

Complete import file for creating a customer:-

<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <ExternalId>123</ExternalId>
    <Id>ALDRED</Id>
    <Name>Aldred Builders, Inc.</Name>
    <IsInactive>false</IsInactive>
    <AccountNumber />
    <Category>LAND</Category>
    <CustomFields>
      <CustomField>
        <Name>Sales Contact</Name>
        <Value />
      </CustomField>
      <CustomField>
        <Name>Lawn Care Srvc?</Name>
        <Value>Yes</Value>
      </CustomField>
      <CustomField>
        <Name>Monthly Service?</Name>
        <Value>Yes</Value>
      </CustomField>
      <CustomField>
        <Name>Qtrly Mailing?</Name>
        <Value>Yes</Value>
      </CustomField>
      <CustomField>
        <Name>Referral</Name>
        <Value>Internet</Value>
      </CustomField>
    </CustomFields>
    <ShipVia>None</ShipVia>
    <UseEmailToDeliverForms>false</UseEmailToDeliverForms>
    <ReplaceInventoryItemIDWithUPC>false</ReplaceInventoryItemIDWithUPC>
    <ReplaceInventoryItemIDWithPartNumber>false</ReplaceInventoryItemIDWithPartNumber>
    <PaymentMethod>Check</PaymentMethod>
    <CashAccountReference>10200-00</CashAccountReference>
    <Terms>
      <ChargeInterest>true</ChargeInterest>
      <CreditLimit>50000.00</CreditLimit>
      <DiscountDays>10</DiscountDays>
      <DiscountPercent>2.00</DiscountPercent>
      <DueDays>30</DueDays>
      <IsStandardTerms>false</IsStandardTerms>
      <PaymentTimeFrame>DueInNumberOfDays</PaymentTimeFrame>
      <UseDiscounts>true</UseDiscounts>
    </Terms>
    <IsProspect>false</IsProspect>
    <BillToContact>
      <Prefix />
      <FirstName>Tony</FirstName>
      <MiddleInitial />
      <LastName>Aldred</LastName>
      <Suffix />
      <CompanyName>Aldred Builders, Inc.</CompanyName>
      <Title />
      <Telephone1>770-555-0654</Telephone1>
      <Telephone2>770-555-0655</Telephone2>
      <Fax>770-555-0656</Fax>
      <Email>[email protected]</Email>
      <Gender>NotSpecified</Gender>
      <NameToUseOnForms>CompanyName</NameToUseOnForms>
      <Address>
        <Address1>412 Sever Rd</Address1>
        <Address2 />
        <City>Norcross</City>
        <State>GA</State>
        <Zip>30092</Zip>
        <Country />
        <SalesTaxCode>GAGWINN</SalesTaxCode>
      </Address>
      <Notes />
    </BillToContact>
    <ShipToContact>
      <Prefix />
      <FirstName>Tammy</FirstName>
      <MiddleInitial />
      <LastName>Aldred</LastName>
      <Suffix />
      <CompanyName>Aldred Builders, Inc.</CompanyName>
      <Title>Bookkeeper</Title>
      <Telephone1>770-555-0657</Telephone1>
      <Telephone2>770-555-0658</Telephone2>
      <Fax>770-555-0659</Fax>
      <Email>[email protected]</Email>
      <Gender>NotSpecified</Gender>
      <NameToUseOnForms>ContactName</NameToUseOnForms>
      <Address>
        <Address1>412 Sever Rd</Address1>
        <Address2 />
        <City>Norcross</City>
        <State>GA</State>
        <Zip>30092</Zip>
        <Country />
        <SalesTaxCode>GAGWINN</SalesTaxCode>
      </Address>
      <Notes />
    </ShipToContact>
    <CustomerSince>2011-03-15T00:00:00</CustomerSince>
    <SalesRepresentativeReference>DGROSS</SalesRepresentativeReference>
    <UsualSalesAccountReference>40000-00</UsualSalesAccountReference>
    <OpenPurchaseOrderNumber />
    <ResaleNumber />
    <PriceLevel>Price Level 1</PriceLevel>
    <CreditStatus>NotifyOverLimit</CreditStatus>
  </Customer>
</ArrayOfCustomer>

In each of the following sections most of the XML has been omitted to make the samples easier to read.  The sections have been broken up into the various sections of the customer record as viewed within Sage 50 US.

Main Customer Fields

The below will let you specify the main fields required for a customer record.  Note that depending on your configuration at the Task Settings level in Zynk you may not need to specify an Id field as you can create them automatically through Zynk as part of the import.

Sage Field XML Field Example Field Type Field Length Input
N/A ExternalId 123 string 255 Optional
Customer ID Id ALDRED string 20 Required when not using auto generate settings
Name Name Aldred Builders, Inc.  string 40 Required when using auto generate settings
Prospect IsProspect false bool - Optional
Inactive IsInactive false bool - Optional
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <ExternalId />
    <Id>ALDRED</Id>
    <Name>Aldred Builders, Inc.</Name>
    <IsProspect>false</IsProspect>
    <IsInactive>false</IsInactive>
  </Customer>
</ArrayOfCustomer>

General Fields

The below will let you specify the fields on the General tab in Sage.  Note the names of the custom fields depend on what you have called the fields within Sage, and must be provided within the CustomFields node.  Please see Bill To Contact section below for any fields relating to that contact.

Sage Field XML Field Example Field Type Field Length Input
Account number AccountNumber ALDRED string 25 Optional
Customer type Category LAND string 8 Optional
Custom Field Label CustomField/Name Referral string 26 Optional
Custom Field Value CustomField/Value Internet string 40 Optional
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AccountNumber>ALDRED</AccountNumber>
    <Category>LAND</Category>
    <CustomFields>
      <CustomField>
        <Name>Referral</Name>
        <Value>Internet</Value>
      </CustomField>
    </CustomFields>
  </Customer>
</ArrayOfCustomer>

Bill To Contact Fields

The below will let you specify the fields for the bill to contact in Sage.  Note the details of the bill to contact are what are shown on the General tab.

Sage Field XML Field Example Field Type Field Length Input
Title Prefix string 4 Optional
First FirstName Tony string 15 Optional
MI MiddleInitial string 1 Optional
Last LastName Aldred string 20 Optional
Suffix Suffix string 4 Optional
Company name CompanyName Aldred Builders, Inc.  string 39 Required
Job title Title Owner string 30 Optional
Telephone 1 Telephone1 770-555-0654  string   20 Optional  
Telephone 2 Telephone2 770-555-0655  string   20 Optional  
Fax Fax 770-555-0656  string   20 Optional  
E-mail Email [email protected] string  64 Optional
Gender Gender* Male enum - Optional
Ship to address name NameToUseOnForms* CompanyName  enum  -   Optional  
Address Line 1 Address/ Address1 412 Sever Rd  string  30 Optional
Address Line 2  Address/Address2  string 30 Optional
City   Address/City  Norcross  string 20 Optional
ST Address/State  GA  string 2 Optional
Zip Code Address/Zip  30092  string 12 Optional
Country Address/Country  string 15 Optional
Sales Tax* Address/SalesTaxCode  GAGWINN  string 8 Optional
  • Gender* - can be NotSpecified, Male or Female
  • NameToUseOnForms* - can be ContactName or CompanyName
  • Sales Tax* - can only be what you have setup in Sage under Maintain -> Sales Taxes
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <BillToContact>
      <Prefix />
      <FirstName>Tony</FirstName>
      <MiddleInitial />
      <LastName>Aldred</LastName>
      <Suffix />
      <CompanyName>Aldred Builders, Inc.</CompanyName>
      <Title />
      <Telephone1>770-555-0654</Telephone1>
      <Telephone2>770-555-0655</Telephone2>
      <Fax>770-555-0656</Fax>
      <Email>[email protected]</Email>
      <Gender>NotSpecified</Gender>
      <NameToUseOnForms>CompanyName</NameToUseOnForms>
      <Address>
        <Address1>412 Sever Rd</Address1>
        <Address2 />
        <City>Norcross</City>
        <State>GA</State>
        <Zip>30092</Zip>
        <Country />
        <SalesTaxCode>GAGWINN</SalesTaxCode>
      </Address>
      <Notes />
    </BillToContact>
  </Customer>
</ArrayOfCustomer>

Ship To Contact Fields

If specified, this will update the default ship to contact's information on the customer.
If the bill to contact is the default ship to contact then a new contact will be created and marked as the default ship to contact.

The ship to contact has the same fields as the bill to contact, these can be specified via the ShipToContact node in the XML.

<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <ShipToContact>
      <Prefix />
      <FirstName>Tammy</FirstName>
      <MiddleInitial />
      <LastName>Aldred</LastName>
      <Suffix />
      <CompanyName>Aldred Builders, Inc.</CompanyName>
      <Title>Bookkeeper</Title>
      <Telephone1>770-555-0657</Telephone1>
      <Telephone2>770-555-0658</Telephone2>
      <Fax>770-555-0659</Fax>
      <Email>[email protected]</Email>
      <Gender>NotSpecified</Gender>
      <NameToUseOnForms>ContactName</NameToUseOnForms>
      <Address>
        <Address1>412 Sever Rd</Address1>
        <Address2 />
        <City>Norcross</City>
        <State>GA</State>
        <Zip>30092</Zip>
        <Country />
        <SalesTaxCode>GAGWINN</SalesTaxCode>
      </Address>
      <Notes />
    </ShipToContact>
  </Customer>
</ArrayOfCustomer>

History Fields

The below will let you specify the fields on the History tab in Sage.  Note the majority of fields on this tab are read only, so will only be used in future exports of customer data.

Sage Field XML Field Example Field Type Field Length Input
Customer since CustomerSince 2011-03-15T00:00:00 datetime - Optional
xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <CustomerSince>2011-03-15T00:00:00</CustomerSince>
  </Customer>
</ArrayOfCustomer>

Sales Info Fields

The below will let you specify the fields on the Sales Info tab in Sage.

Sage Field XML Field Example Field Type Field Length Input
Sales rep* SalesRepresentativeReference DGROSS string 20 Optional
GL sales account* UsualSalesAccountReference 40000-00 string 15 Optional
Open PO number OpenPurchaseOrderNumber string 20 Optional
Ship via* ShipVia None string 20 Optional
Resale number ResaleNumber string 20 Optional
Pricing level* PriceLevel Price Level 1 string 14 Optional
Batch delivery method UseEmailToDeliverForms* false bool - Optional
Replace item ID with* ReplaceInventoryItemIDWithUPC false bool - Optional
ReplaceInventoryItemIDWithPartNumber false bool - Optional
  • Sales rep* - can only be what you have setup in Sage under Maintain Employees & Sales Reps.
  • GL sales account* - can only be what you have setup in Sage under Maintain Chart of Accounts.
  • Ship via* - can only be what you have setup in Inventory Item Defaults on the Taxes/Shipping tab
  • Pricing level* - can only be what you have setup on the Price Levels tab in Inventory Item Defaults
  • UseEmailToDeliverForms* - set to false to use Paper form, set to true to use E-mail
  • Replace item ID with*
  • To uncheck all options set both ReplaceInventoryItemIDWithUPC andReplaceInventoryItemIDWithPartNumber to false
  • To check option and set to UPC/SKU set ReplaceInventoryItemIDWithUPC to true
  • To check option and set to Part number set ReplaceInventoryItemIDWithPartNumber to true
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <SalesRepresentativeReference>DGROSS</SalesRepresentativeReference>
    <UsualSalesAccountReference>40000-00</UsualSalesAccountReference>
    <OpenPurchaseOrderNumber />
    <ShipVia>None</ShipVia>
    <ResaleNumber />
    <PriceLevel>Price Level 1</PriceLevel>
    <UseEmailToDeliverForms>false</UseEmailToDeliverForms>
    <ReplaceInventoryItemIDWithUPC>false</ReplaceInventoryItemIDWithUPC>
    <ReplaceInventoryItemIDWithPartNumber>false</ReplaceInventoryItemIDWithPartNumber>
  </Customer>
</ArrayOfCustomer>

Payment and Credit Fields

The below will let you specify the fields on the Payment & Credit tab in Sage.

Sage Field XML Field Example Field Type Field Length Input
Payment method PaymentMethod Check string 20 Optional
Cash account CashAccountReference 10200-00 string 15 Optional
Terms and Credit Option Terms/PaymentTimeFrame* DueInNumberOfDays enum - Optional
Net due / Due on Terms/DueDays* 30 int - Optional
Use discounts UseDiscounts true bool - Optional
Discount in day DiscountDays 10 int - Optional
Discount percent DiscountPercent 2.00 decimal - Optional
Charge finance charges ChargeInterest true bool - Optional
Credit limit CreditLimit 50000.00 decimal - Optional
Credit status CreditStatus* NotifyOverLimit  enum - Optional
  • Terms/PaymentTimeFrame* - can be COD, Prepaid, DueInNumberOfDays, DueOnDayOfNextMonth or DueAtEndOfNextMonth
  • Terms/DueDays* - Sage field is only shown when using DueInNumberOfDays or DueOnDayOfNextMonth options from above, and wording changes depending on which
  • CreditStatus* - can be NoLimit, NotifyOverLimit, Notify, HoldoverLimit or Hold
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCustomer>
  <Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <PaymentMethod>Check</PaymentMethod>
    <CashAccountReference>10200-00</CashAccountReference>
      <Terms>
      <PaymentTimeFrame>DueInNumberOfDays</PaymentTimeFrame>
      <DueDays>30</DueDays>
      <UseDiscounts>true</UseDiscounts>
      <DiscountDays>10</DiscountDays>
      <DiscountPercent>2.00</DiscountPercent>
      <ChargeInterest>true</ChargeInterest>
      <CreditLimit>50000.00</CreditLimit>
    </Terms>
    <CreditStatus>NotifyOverLimit</CreditStatus>
  </Customer>
</ArrayOfCustomer>