Other Web Stores (Native)
If your web store is not currently supported by Acctivate (see the Integrations section in the table of contents for the list of supported web stores), your web developer can implement Acctivate's native XML schema and "Native" web store template.
Overview
The Native web store template requires a web developer to implement a web service that uses Acctivate's native XML schema.
XML schema exists for the following imports and exports:
Import
- Sales Orders
- Customers
Export
- Inventory availability
- Shipment information
- Order Status
Once the web service has been implemented, the Native web store template can be configured.
Setup
This is a web service implementation for developers wishing to modify a proprietary or unsupported web store server to work with the Acctivate web store sync.
Before a web store administrator can sync their web store, they must create a web store configuration in Acctivate, and enter a few pieces of information. They must provide a URL, Username, and Password which are needed to construct GET and POST requests to the web server.
Note
The example URLs indicate PHP, but any languages are supported that can accept and process XML requests.
Example of a web store configuration:
URL: https://www.example.com/api.php
Username: admin
Password: abc123
Last order number downloaded: 10
This information is then used to generate a web request by Web Store Sync to download orders.
For example, the constructed Request URL for Sales Order 1052305 would be:
GET https://www.example.com/api.php?Request=QueryOrder&WebOrderNumber=1052305&Username=admin&Password=abc123
The XML Response from the above Sales Order Request (i.e. QueryOrder) is parsed to create new Acctivate Sales Orders, including the ID for the Customer Record in the Web Store database. The Customer data will be retrieved with a secondary Customer Request.
Acctivate web service Requests
Acctivate processes XML returned by a web service with XPath-style parsing. Element sequence does not matter, and an omitted element is treated the same as an empty element. Tags are case-sensitive. Empty space outside of value elements is ignored.
All queries must return valid XML. If a web service returns non-XML (e.g. HTML or plain text), it is assumed that there was a communication failure and the web store sync process is canceled.
A web service should parse XML posted to it and ignore any elements it does not recognize. New elements may be added inside <Request>
tag as updates to this specification are made, however the sequence of existing tags will remain the same for backwards compatibility.
Elements in the <Request>
tag marked as N/A in the comments are fields specific to Acctivate whose values are not likely to be available from the web store. The web store administrator may set default values for those fields in the web store template in Acctivate.
Values returned by the web service may be mapped and converted to Acctivate values. For example, a common conversion would be for the Method of Payment field from web-store specific values to their equivalents in Acctivate.
Sales Orders
Sales Order Request
GET http(s)://www.example.com/api.php?Request=QueryOrder&WebOrderNumber=1052305&Username=admin&Password=abc123
Sales Orders are downloaded consecutively until a query returns no order data. Therefore, order numbers should be integers and should be created by the web store consecutively without any skipped orders. Any orders that shouldn’t be imported because they have been invalidated, canceled, or deleted should be marked as Deleted (more info below).
Tax Categories are codes for tax rates specific to a customer location (e.g. DAL, FW for Dallas and Fort Worth, respectively). Tax Codes are product specific. In the U.S. edition of Acctivate, the default tax codes available are Tax and Non.
Sales Order Response
The Sales Order Response should contain only the Single Sales Order requested for the <WebOrderNumber>
. Acctivate will maintain the Last Web Order Number in the Acctivate Web Store template and continue requesting orders until no more sales orders are found.
An example Sales Order Response is listed below. Please download the full Sales Order Response schema for all fields and detailed comments.
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
<Order>
<WebOrderNumber>1052305</WebOrderNumber>
<OrderDate>2015-09-14</OrderDate>
<Type>O</Type>
<OrderStatus>S</OrderStatus>
<WebCustomerID>2531235</WebCustomerID>
<ShipToDescription>Downtown</ShipToDescription>
<ShipToAttention>Bill Jones</ShipToAttention>
<ShipToAddress1>Abercrombie and Smith</ShipToAddress1>
<ShipToAddress2>123 Main Street</ShipToAddress2>
<ShipToCity>Fort Worth</ShipToCity>
<ShipToState>TX</ShipToState>
<ShipToZip>76102</ShipToZip>
<ShipToCountry>US</ShipToCountry>
<SoldToName>Abercrombie</SoldToName>
<SoldToAddress1>Abercrombie and Smith</SoldToAddress1>
<SoldToAddress2>450 North Main St</SoldToAddress2>
<SoldToCity>Fort Worth</SoldToCity>
<SoldToState>TX</SoldToState>
<SoldToZip>76102</SoldToZip>
<SoldToCountry>US</SoldToCountry>
<ContactFirstName>Kristi</ContactFirstName>
<ContactLastName>Abercrombie</ContactLastName>
<ContactName>Kristi Abercrombie</ContactName>
<ContactEMailAddress>kristi@abersmith.example.com</ContactEMailAddress>
<ContactPhoneNumber>817-555-6579</ContactPhoneNumber>
<ContactFax>817-555-4253</ContactFax>
<ShippingInstructions>Deliver to Bill at front entrance</ShippingInstructions>
<SpecialInstructions>Pack binders separately from paper</SpecialInstructions>
<PendingShippingCharges>25.95</PendingShippingCharges>
<TaxCode>Tax</TaxCode>
<TaxCategoryID>FW</TaxCategoryID>
<ShipVia>Ground</ShipVia>
<Carrier>UPS</Carrier>
<CarrierService>Ground</CarrierService>
<MethodOfPayment>Credit Card</MethodOfPayment>
<CheckOrCreditCardNumber>4111111111111111</CheckOrCreditCardNumber>
<CreditCardExpirationDate>05/2013</CreditCardExpirationDate>
<CreditCardExpirationMonth>5</CreditCardExpirationMonth>
<CreditCardExpirationYear>13</CreditCardExpirationYear>
<CreditCardName>Kristi Abercrombie</CreditCardName>
<CreditCardAddress>450 North Main</CreditCardAddress>
<CreditCardPostalCode>76102</CreditCardPostalCode>
<AmtPaid>100.43</AmtPaid>
<TotalAmount>100.43</TotalAmount>
<DiscountAndCharges>
<Discount>
<Amount>10.00</Amount>
</Discount>
<Charge>
<Amount>5.00</Amount>
</Charge>
</DiscountAndCharges>
<OrderLines>
<OrderLine>
<LineID>1</LineID>
<VendorProductID>B10</VendorProductID>
<DisplayQtyOrdered>20</DisplayQtyOrdered>
<DisplayUnit>Ea</DisplayUnit>
<BasePrice>2.87</BasePrice>
<SpecialInstructions>Please remove inserts from binders</SpecialInstructions>
</OrderLine>
<OrderLine>
<LineID>2</LineID>
<VendorProductID>CP2003</VendorProductID>
<DisplayQtyOrdered>5</DisplayQtyOrdered>
<DisplayUnit>Ea</DisplayUnit>
<BasePrice>3.95</BasePrice>
</OrderLine>
</OrderLines>
</Order>
</Result>
Response if Sales Order was Deleted or Canceled
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
<Order>
<WebOrderNumber>1052305</WebOrderNumber>
<!-- ... Other fields are ignored ... -->
<Deleted>True</Deleted>
</Order>
</Result>
Respond with Status = Success only if no sales order was found for the given Order Number. This will end the Web Store Sync progress successfully and the Last Web Order Number will be updated for this Web Store in the Acctivate database.
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
</Result>
Note
Acctivate will assume an unexpected failure has occurred if no Status is included in the Sales Order Response.
The Acctivate Web Store Sync can display a message if an Invalid Request or an unexpected error has occurred. The Last Web Order Number will not be updated in this case.
Any Status other than “Success” will be displayed in the Web Store Sync user interface. The Status message should include information required to troubleshoot the problem(s). A full exception log including the request and response will be available in the Acctivate Log directory on the Acctivate server.
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Invalid request / Out of memory / etc</Status>
</Result>
Customers
Customer Request
The Acctivate Web Store Sync will optionally download information for new customers found in the Sales Order Response. The Web Customer ID is provided in the QueryCustomer request.
GET http(s)://www.example.com/api.php?Request=QueryCustomer&WebCustomerID=2531235&Username=admin&Password=abc123
Customer Response
A new customer record will be created in Acctivate with the provided information in the Response. These customer records will also be synchronized to QuickBooks. Therefore, we recommend using the Customer Name or Email Address as the primary Customer ID/Name since QuickBooks doesn’t support a separate Customer ID and Name.
Customers in Acctivate have a single billing address and multiple shipping address records. All addresses are structured in the four-line address block format also found in QuickBooks. The first address line (e.g., <Address>
) is typically the customer’s business or contact name.
Address Field | Example 1 | Example 2 | Example 3 |
---|---|---|---|
<Address> |
Abercrombie and Smith | Abercrombie and Smith | Kristi Abercrombie |
<Address2> |
450 North Main St | Kristi Abercrombie | 450 Main St |
<Address3> |
Third Floor | 450 North Main St | Third Floor |
<Address4> |
Third Floor | ||
<City> |
Fort Worth | Fort Worth | Fort Worth |
<State> |
TX | TX | TX |
<Zip> |
76102 | 76102 | 76102 |
<Country> |
US | US | US |
Acctivate requires that one shipping address be defined as the Preferred Shipping Address. Set the <ShipTo>
/<Default>
value to true or <Customer>
/<DefaultShipToLocationID>
to a specific LocationID if multiple shipping addresses are provided.
Another approach is to map all addresses to the <ShipTo>
elements. If one of the addresses is a billing address, set <Customer>
/<DefaultSoldToLocationID>
to the appropriate LocationID and leave the customer billing address fields (<Address>
, <Address2>
, etc) in the <Customer>
element empty.
An example Customer Response is listed below. Please download the full Customer Response schema for all fields.
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
<Customer>
<WebCustomerID>2531235</WebCustomerID>
<CompanyName>Abercrombie and Smith</CompanyName>
<Name>Abercrombie</Name>
<Address>Abercrombie and Smith</Address>
<Address2>450 North Main St</Address2>
<City>Fort Worth</City>
<State>TX</State>
<Zip>76102</Zip>
<Country>US</Country>
<Phone>817-555-6579</Phone>
<PhoneDesc>Main Phone</PhoneDesc>
<Fax>817-555-4253</Fax>
<Email>kristi@abersmith.example.com</Email>
<EmailDesc>Kristi Abercrombie</EmailDesc>
<AltPhone>817-555-2244</AltPhone>
<AltPhoneDesc>Kristi's personal</AltPhoneDesc>
<FirstName>Kristi</FirstName>
<LastName>Abercrombie</LastName>
<SalespersonId>JDJ</SalespersonId>
<TaxCode>Tax</TaxCode>
<CustomerType>Customer</CustomerType>
<TermsCode>Net 30</TermsCode>
<DateOpened>2012-02-01</DateOpened>
<Login>Abercrombie</Login>
<Password>Kristi</Password>
<ShipTos>
<ShipTo>
<LocationID>Downtown</LocationID>
<LocationName>Downtown Office</LocationName>
<Address1>Abercrombie and Smith</Address1>
<Address2>123 Main Street</Address2>
<City>Fort Worth</City>
<State>TX</State>
<Zip>76102</Zip>
<Country>US</Country>
<Status>True</Status>
<Default>True</Default>
<SpecialInstructions>All packages MUST be marked with PO Number</SpecialInstructions>
<ShippingInstructions>Deliver to loading dock on 2nd Street</ShippingInstructions>
</ShipTo>
<ShipTo>
<LocationID>Main</LocationID>
<LocationName>Main Office</LocationName>
<Address1>Abercrombie and Smith</Address1>
<Address2>1023 Exchange</Address2>
<City>Fort Worth</City>
<State>TX</State>
<Zip>76000</Zip>
<Country>US</Country>
<Status>True</Status>
<Default>False</Default>
<Comment></Comment>
</ShipTo>
</ShipTos>
<Contacts>
<Contact>
<ContactID>Bill</ContactID>
<FullName>Bill Jackson</FullName>
<Title>CFO</Title>
<Phone>888-555-1215</Phone>
<Email>bill@abersmith.example.com</Email>
</Contact>
<Contact>
<ContactID>Fred</ContactID>
<FullName>Fred Abercrombie</FullName>
<Title>Sales Manager</Title>
<Phone>888-555-1212</Phone>
</Contact>
</Contacts>
</Customer>
</Result>
Response if no customer was found:
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
</Result>
Inventory
Update Inventory Request
Web Store Sync sends inventory qtys for all products in Acctivate. Unknown product ids should be ignored and the status should still return Success in that case.
POST http(s)://www.example.com/api.php?Request=UpdateInventory&Username=admin&Password=abc123
Example Inventory Request for Product B10, based on a quantity available of 50 Ea.
<?xml version="1.0" encoding="utf-8"?>
<Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Inventory>
<Product>
<VendorProductID>B10</VendorProductID>
<QtyAvailable>50</QtyAvailable>
</Product>
<!-- ... Additional Products ... -->
</Inventory>
</Request>
Update Inventory Response
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
</Result>
Tracking Numbers
Update Tracking Numbers Request
Tracking number update should replace all tracking numbers in the web store with the numbers in the Update Inventory request for each order.
POST http(s)://www.example.com/api.php?Request=UpdateTrackingNumbers&Username=admin&Password=abc123
Example Request to update Status and add Tracking Numbers for Web Order 1052305:
<?xml version="1.0" encoding="utf-8"?>
<Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<TrackingNumbers>
<Order>
<WebOrderNumber>1052305</WebOrderNumber>
<Package>
<TrackingNumber>1Z9999999999999998</TrackingNumber>
<Carrier>UPS</Carrier>
<CarrierService>Ground</CarrierService>
<Items>
<Item>
<LineID>1</LineID> <!-- LineID from order detail -->
<Qty>4</Qty> <!-- In stocking units -->
</Item>
<Item>
<LineID>2</LineID>
<Qty>6</Qty>
</Item>
<!-- Additional Items -->
</Items>
</Package>
<!-- Additional Packages -->
</Order>
<!-- Additional Orders -->
</TrackingNumbers>
</Request>
Update Tracking Numbers Response
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
</Result>
Note
Please note that <Carrier>
and <CarrierService>
values are user-defined. However, the Carrier Service list typically matches the standards for each carrier. The Carrier Service list is maintained in Acctivate Configuration Management in the Sales Orders section.
Additional Options
Configuration Request
Additional configuration can be enabled by responding to the QueryConfiguration request.
The QueryConfiguration request is only enabled if the Webservice supports extended API template option is set to Yes.
If the "Webservice supports extended API" template option is set to No only the QueryOrder, QueryCustomer, UpdateInventory, and UpdateTrackingNumbers requests are enabled.
GET: http(s)://www.example.com/api.php?Request=QueryConfiguration&Username=abc&Password=123
Configuration Response
Requests can be disabled by having the web store send only a list of requests it supports.
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
<Requests>
<Request>QueryConfiguration</Request>
<Request>QueryOrder</Request>
<Request>QueryOrders</Request>
<Request>QueryOrdersByDateRange</Request> <!--For use instead of QueryOrdersByNumberRange-->
<Request>QueryOrdersByNumberRange</Request>
<Request>QueryCustomer</Request>
<Request>QueryCustomers</Request>
<Request>UpdateInventory</Request>
<Request>UpdateTrackingNumbers</Request>
<Request>UpdateOrderStatus</Request>
</Requests>
</Result>
Update Order Status Request
POST http(s)://www.example.com/api.php?Request=UpdateOrderStatus&Username=admin&Password=abc123
Example Request to update Order Status and for Web Order 1052305:
<?xml version="1.0" encoding="utf-8"?>
<Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Orders>
<Order>
<WebOrderNumber>1052305</WebOrderNumber>
<Deleted>False</Deleted>
<OrderStatus>K</OrderStatus> <!-- S,K,C,X status codes (Scheduled, Backorder, Completed, Canceled) -->
<OrderWorkFlowStatus></OrderWorkFlowStatus> <!-- S,K,C,X status codes (Scheduled, Backorder, Completed, Canceled) -->
<CreditStatus>Over Limit</CreditStatus> <!-- Over Limit, Overdue, Credit Hold -->
</Order>
</Orders>
</Request>
Update Order Status Response
<?xml version="1.0" encoding="utf-8"?>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.acctivate.com/xmlschema/">
<Status>Success</Status>
</Result>
Native Template
To sync Acctivate and your web store, you'll need to setup the Native web store template by doing the following:
- In Acctivate, go to File → Import Sales Orders
- Click Create to create a new template.
Each screen of the template is outlined below.
Add a Template
- In the Add Template screen, enter the following information:
- ID: Enter the web store ID. This name must be unique and it's recommended that there are no spaces . It is limited to 15 characters. This name can be displayed in the Order Manager as the Origin ID.
- Name: This is the user friendly name that will appear in the Web Store Sync window. This can be up to 50 characters and may contain spaces.
- Notes: Optionally, enter any Notes. Notes entered here are only visible when editing this web store template.
- Type: Select the Type of Web Store.
- Click Next.
Source
- On the Source screen, use the drop-down in the upper right and select Native.
- Enter the Service URL.
- Enter the Username for the web service.
- Enter the Passwordfor the web service.
- Click Next
Options
The Options screen allows you to adjust various import and export options. A description of the available options are listed below, however the default options are recommended for most cases.
If you want to sync orders from a certain time point, set the Timestamp of the last web order imported option.
Click Next to proceed.
Template Option | Value | Definition |
---|---|---|
Automatically retry importing skipped orders | Yes/No | If the Skip orders with warnings web store option is enabled, skipped orders will be added to the Web Orders tab of the Business Alerts window. If this option is set to Yes, Acctivate will try to import the skipped orders after completing the import of new orders. If set to No, Acctivate will not attempt to resync the skipped orders as part of the web store sync. Instead, you must resync the orders from the Business Alerts window. |
Comma-separated Warehouse IDs for inventory export | WH ID | List the specific Warehouse ID you wish to use for exporting item availability. If exporting multiple warehouses, separate each ID by a comma. The availability of the warehouses included will be summed up and sent to the Native web service. |
Create customers for guests | Yes/No | When set to Yes, Acctivate will create a customer for "guest" customers (customers who have checked out without setting up a customer account for your web store) by using the customer information included in the Sales Order. When set to No, if Acctivate cannot match to an existing customer, the customer will be left blank on the sales order. Regardless of the option selection, Acctivate will always attempt to match to an existing customer first. |
Create reminders for warnings (Business Alerts) | Yes/No | When set to Yes, if orders are imported with warnings (e.g., the Skip orders with warnings is not enabled), Acctivate will create a note with the warnings and assign it to the user who performed the sync. Notes can be viewed in the Reminders tab of the Business Alerts window. |
Date/Time format | yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z' |
Acctivate will use this date/time format instead of the syncing computer's date/time format when parsing the web store date/times. If this option value is blank, Acctivate will use the syncing computer's date/time format. |
Default ship qty 1)Invoiced 2)Ordered 3)Scheduled | 1, 2, 3 |
When using the Invoiced qty, kit products will have their shipped quantity exported based on the total number of kits that can be made from the packaged/shipped components. If no shipment detail lines exist, e.g. Packaging Manager was not used, the invoiced qty will be sent. |
Default tax code on detail disc/charge to parent's | Yes/No | If an item has a discount or additional charge, the discount or charge will be imported as it's own order line. When this option is set to Yes, that discount/charge line will use the tax code that is assigned to the related "parent" product. If set to No, the discount/charge will default to the tax code assigned to it. |
Encryption key for decrypting CC numbers | Text | If credit card numbers being passed from your web store store to Acctivate, the encryption key used by your web service will need to be entered in this option field so that Acctivate can decrypt the credit card numbers. |
Export carrier when exporting shipments | Yes/No | Allows the carrier information to be sent back with shipping information from order |
Export inv qty by stocking unit not sales unit | Yes/No | When set to No, a product's Available quantity will be converted to the product's default sales unit and exported (when the "Export inventory" option is set to Yes). If set to Yes, the product's Available quantity will be exported in stocking units. |
Export inventory | Yes/No | When set to Yes, the product's Available quantity is sent back to your web store. For more information on the inventory availability export, refer to the Web Store Item Availability documentation. |
Export inventory by alternate product ID | Yes/No | When set to No, Acctivate will export inventory availability by the Acctivate Product ID. When set to Yes, the inventory availability will be exported using the product's Primary Alt Product ID. If the product has a web store specific Alternate Product ID (e.g., an Alternate Product ID associated with this template on the Alt ID's tab of the Enter Product window), that Alt Product ID will be exported regardless of this template option. |
Export order status changes | Not implemented. | |
Export shipments | Yes/No | If set to Yes, Acctivate will export shipment information to your web store during the web store sync. |
Export shipments having empty packages | Yes/No | At the time of invoicing, Acctivate will determine the quantities shipped based on the items packaged in Packaging Manager, or the invoiced quantities (see Default ship qty option). If the items are not packaged in Packaging Manager, Acctivate will be unable to determine the products and quantities per package, therefore all the items and quantities will be associated with the first package in a shipment. When this option is set to Yes, only packages with items and quantities will be exported. When this option is set to No, no packages will be exported if there are one or more packages in a shipment that aren't associated with items. If you package shipments outside of Acctivate and then import in multiple package tracking numbers for a single order, it is recommended that this option be set to Yes in order for the first package to export properly. |
Import bundles at default price and adjust | Yes/No | When set to Yes, the prices for products in a bundle will come from Acctivate, and an additional line for each bundle will automatically be added to the order to balance the price of the bundle from the web store with the prices in Acctivate. If set to No, the bundle price from the web store is used and no adjusting line is needed. |
Import customers | Yes/No | When this option is set to No, Acctivate only imports orders and then creates customers from the sales order information. With this option set to Yes, customer information will be imported separately from Orders and customers will be created based on the Native customer account information. In some cases, a customer may create an account your Native store, but not create an order, so it's possible for customers to be created without a related order. |
Import orders | Yes/No | When set to Yes, Acctivate will import sales orders from your web store. When set to No, Acctivate will not import orders, but will (optionally) import customers. |
Last web order number imported | Your Web Order Number | This is the last web order number that has been imported in. Acctivate will download the next order number and beyond. |
Locale for Date formats | en-US and more. |
Dates are formatted based on the locale defined here. Represented as the ISO 639-1 code followed by the ISO 3166-1 Alpha-2 code, e.g., en-US , en-GB , en-CA , etc. |
Show advanced configuration settings | Yes/No | Generally used by the Acctivate Support team. Setting this option to Yes will unlock more advanced template options as well as allow the adding and editing of the Source Values. |
URL is for webservice instead of storefront | Yes/No | Typically, this option should remain it's default setting (No). When set to No, the store front URL entered on the Source screen will be formatted to match the web store's web service URL (this formatting is not seen in the template, but rather occurs during the API calls made by Acctivate). If the URL entered on the Source screen is the web service URL, then set this option to Yes to prevent additional formatting of the URL. |
Verbose logging | Yes/No | |
webservice supports extended API | Yes/No | When set to Yes, the QueryConfiguration request will be enabled. |
Source Values
This screen is only accessible when the Show advanced configuration settings option is set to Yes.
This screen allows for advanced mappings and is primarily used by the Acctivate Support team. See the Source Values configuration page for more information on the information and options found here.
To proceed, click Next.
Mapping
This screen includes the customer and sales order mappings.
The Customer Document mapping only applies when the Import customers option is enabled, otherwise, a customer record is created based on the Order Document.
When a Web store field is mapped to an Acctivate field, the web store's value will be imported into the Acctivate field. If a Default value is mapped, then Acctivate will use the Default value for all orders created. If both are mapped, the mapped field will take priority over the default value.
Conversion can be managed on this screen by clicking on the Acctivate field and then clicking Show Conversions at the bottom of the window. Enter the From value (the web store value) and enter the To value as the value it should be converted to.
See the Mapping configuration documentation for more information.
To proceed, click Next.
Import
The Import screen will allow you to begin the import by clicking Import Orders. Otherwise, close the window and confirm that you want to save the template when prompted.
Additional Setup and Considerations
Creating Customers in a QuickBooks Online company
QuickBooks Online requires non-taxable customers to have an exemption reason provided. Read our KB article on mapping options for non-taxable customers in QuickBooks Online companies.
Matching Products
When importing in sales orders, the SKU will be matched to an Acctivate product according to the following hierarchy:
- Web store specific Alternate Product ID
- Product ID
- Alternate Product IDs unrelated to this web store template
- UPC
- Customer Product ID for the Customer on the sales order.
Exporting Inventory
In order to export inventory availability, perform the following:
- In Acctivate, the Product must be have the Available on web option enabled.
- The Export inventory option must be set to Yes.
- Optionally, you can export inventory for specific warehouses. See the Comma-separated Warehouse IDs for inventory export option.
Additional information about exporting inventory:
- When a web store specific Alternate Product ID exists, that Alt ID will be used to match to the web store SKU. If no web store specific Alternate Product ID exists, then the Acctivate Product ID will be used unless the option Export inventory by alternate product ID is enabled; in which case the Alt Product ID would be used to match to a web store SKU.
- When you run the first sync, no inventory availability will be exported. When you run the second sync (and subsequent syncs) only products with inventory transactions since the last sync will be included in the export. For that reason, when going live with your web store template it's recommended that you import or manually update your web store to match Acctivate's availability.
- Products that are marked as Available on Web are included in the ProductAvailabilityByTemplate data view. This data view includes the last transaction date, voided date, and updated date for certain transaction types. The most recent of these three dates for a product/warehouse combination (stored as the LastModifiedDate) is used to consider which products should be included in the web store inventory export. After a web store inventory export, the latest LastModifiedDate will be stored as a web store database option named LastTransactionDate. The next web store inventory sync will take the LastTransactionDate date and subtract one day from it, then compare this new date to the LastModifiedDate value. Any products with a LastModifiedDate date since the LastTransactionDate (minus one day) will be included in the export if it exists in the web store.
Exporting Shipments
If multiple tracking numbers are imported into Acctivate for a web order that was packaged outside of Acctivate, then you may only have one or no packages export to your web store depending on the Export shipments having empty packages option.
Usage
Refer to the Web Store section of the documentation for information on how to begin a sync with with your web store using the Native template.
To import a specific sales order, you can use the More Options button on the Web Store Sync window to enter an order number, or you can enter multiple order ID's separated by a comma.