Shopify is an e-commerce platform offering sales order, inventory, and customer management.
Acctivate can be integrated with your Shopify store using our pre-configured Shopify web store template.
The template is easy to setup and includes various configuration options relating to the import and export of data between Acctivate and Shopify. Likewise, data mapping changes can be made allowing for complete control over the data flow from Shopify to Acctivate.
The Shopify template allows for importing and exporting the following information:
- Sales Orders
- Inventory availability
- Shipment information
To setup the integration with Acctivate and Shopify, you'll need to create a new 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.
- On the Source screen, use the drop-down in the upper right and select Shopify.
- Enter the store front URL (example: https://example.myshopify.com/). (Note: using a URL other than the "myshopify.com" URL may result in information not exporting correctly).
- Click the Connect button on this screen.
- A web browser will open. Login to your Shopify account.
- On the page that says "You are about to Install Acctivate", click the "Install unlisted app" button.
- You will be instructed to return to Acctivate to complete the integration process.
- Click Next
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.
|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 Shopify.|
|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 Shopify 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.|
||Acctivate will use this date/time format instead of the syncing computer's date/time format when parsing Shopify 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||Only option 1 (Invoiced) is supported by Shopify. Acctivate will send invoiced quantities back to Shopify as the "Shipped" qty. If the quantity packed in Packaging Manager varies from the invoiced quantity, the packed quantity will be used.|
|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.|
|Export carrier when exporting shipments||Yes/No||Allows the carrier information to be sent back with shipping information from order|
|Export empty packages||Yes/No||Only the option No is supported by Shopify. Shipments may be imported into Acctivate from a shipping workstation software such as ShipStation, UPS WorldShip, FedEx ShipManager, etc. Until the orders are invoiced, the shipments have no items associated with them. When this option is set to No, Acctivate will not export shipments to the web store until the orders are invoiced, resulting in the items being associated with the shipment.|
|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 Shopify. This does not update the web store product list or pricing.|
|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 this template's Alternate Product ID (e.g., the Alternate Product ID associated with this template on the Alt ID's tab of the Enter Product window) or the product's Primary Alt Product ID.|
|Export shipments||Yes/No||If set to Yes, Acctivate will export shipment information to Shopify during the web store sync.|
|Have stores send shipment notifications||Yes/No||When set to Yes, Shopify will send a shipment notification to the customer once an Acctivate shipment has been exported to Shopify.|
|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 Shopify customer account information. In some cases, a customer may create an account your Shopify 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 Shopify. When set to No, Acctivate will not import orders, but will (optionally) import customers.|
|Import payment transaction list (req xtra mapping)||Yes/No||It's recommended this is set to Yes. When set to Yes, payment transaction information is imported with the order. May require changes to the mapping.|
|Locale for Date formats||
||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.,
|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.|
|Timestamp of the last web order imported||Timestamp||Each sync will start at this value. After a sync is completed, this timestamp will update to reflect the creation timestamp of the last order imported so that the next sync looks for orders created since the last sync.|
|Timezone of the server||Common values include
||If blank, it's assumed the time zone of the Shopify server is the same as the time zone of the Acctivate install running the web store sync. Common time zone values are listed in the values column; for more information contact Acctivate Support.|
|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.|
|Use HTTP Basic Auth instead of OAuth||Yes/No||Legacy. This option should be set to No.|
|Verbose logging||Yes/No||When set to Yes, Acctivate will create logs of each the web store requests and responses, as well as data transformations for each sync. When set to No, only the sync messages log is saved. Logs can be located in the Web Store log folder. It's recommended that this option is set to No unless you are troubleshooting.|
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.
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.
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.
Refer to the Web Store section of the documentation for information on how to begin a sync with Shopify.
To import a specific sales order, you can use the More Options button on the Web Store Sync window to enter a Shopify Order ID, or you can enter multiple Shopify ID's separated by a comma. The Shopify Order ID is the internal order ID and not the order number. The Shopify Order ID can be found by logging into your Shopify store and selecting the order. The URL for the order will contain the Shopify Order ID.
If there is one active location configured for a Shopify store, then shipment exported to Shopify will reference that location ID. If there is more than one active location configured for a Shopify store then Shopify Order Fulfillments will be downloaded for each order after sales orders are imported. Then, when exporting shipments, the fulfillment's location ID will be included in the shipment exported to Shopify.
Customer requests to view or redact data
Shopify, mandates that all applications that integrate with their API are General Data Protection Regulation (GDPR) compliant. To satisfy this requirement, Acctivate is required to process a Shopify customer's request to view their information or have their personal information redacted.
After importing sales orders and exporting inventory and shipping information to Shopify, Acctivate will check to see if any Shopify users have requested that their personal data be deleted. If any such requests exist, Acctivate will redact the customer's information. See web store redaction for more information.
If a Shopify customer has requested to view their personal information, a Customer Note will automatically be created during the Shopify sync. This note will read "Customer requested to receive a copy of their data."
For more information on the redaction criteria and fields to be redacted, see our web store redaction KB article.