BigCommerce
Big Commerce is an e-commerce platform offering sales order, inventory, and customer management.
Overview
Acctivate can be integrated with your BigCommmerce store using our pre-configured BigCommerce web store templates. We offer a BigCommerce v1 and BigCommerce v2 template. BigCommerce v1 is supported, but considered legacy; therefore the information below applies to BigCommerce v2.
The template is easy to setup and includes various configuration options relating to the import and export of data between Acctivate and BigCommerce. Likewise, data mapping changes can be made allowing for complete control over the data flow from BigCommerce to Acctivate.
The BigCommerce template allows for importing and exporting the following information:
Import
- Sales Orders
- Customers
Export
- Inventory availability
- Shipment information
Setup
Acctivate integrates with the Big Commerce v2 API using a pre-configured integration template which can be modified as needed.
Prior to creating a template, access to the v2 API must be enabled:
- In the BigCommerce store admin panel, go to Advanced Settings → API Accounts.
- Click Create API Account → Create V2/V3 API Token
- Name: Acctivate
- OAuth Scopes
- Customers: read-only
- Orders: modify
- Products: modify
- Click Save.
The browser should automatically download a .txt file with credentials. Open it in Notepad or some other text editor. You will use the values in this file on the Source screen of the template.
Add a Template
- Go to File → Import Sales Orders and click Create to create a new 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 Bigcommerce V2.
- The Store URL should be set to the "API Path" from the credential file, without the "v3/" at the end. E.g., https://api.bigcommerce.com/stores/XYZ/
- Enter the "Client ID" from the credential file into the Username / Client field.
- Enter the "Access Token from the credential file into the API / Access Token field.
- Click Next.
Options
The options screen allows you to adjust various import and export options.
Template Option | Value | Definition |
---|---|---|
Authenticate with OAuth | Yes/No | This option must be set to Yes. |
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. |
Client Secret | ||
Comma-separated Warehouse IDs for inventory export | WH ID | Applies to products that have the Available on web option enabled. Leave blank to export availability for all warehouses, or specify Warehouse IDs to export. For multiple warehouses, separate each ID with a comma. The total availability will be sent to BigCommerce. |
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 BigCommerce 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 BigCommerce 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. |
Export carrier when exporting shipments | Yes/No | Allows the carrier information to be sent back with shipping information from order. BigCommerce supports the "tracking_carrier" (carrier) values found in their Tracking Carrier Values list. |
Export inv qty by stocking unit not sales unit | Yes/No | Applies to products that have the Available on web option enabled. 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 | Applies to products that have the Available on web option enabled. When set to Yes, the product's Available quantity is sent back to BigCommerce. If enabled, it is suggested you also review the Comma-separated Warehouse IDs for inventory export and Export inventory by alternate product ID options. For more information on the inventory availability export, refer to the Additional Setup and Considerations section of this guide. |
Export inventory by alternate product ID | Yes/No | Applies to products that have the Available on web option enabled. 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. Note: If the product has a web store specific Alternate Product ID (i.e., an Alternate Product ID linked to this template on the Alt ID's tab of the Enter Product window), then this option will be ignored and the web store specific Alt Product ID will be used for the inventory availability export (the Product ID and Primary Alt Product ID will not be exported). |
Export shipments | Yes/No | If set to Yes, Acctivate will export shipment information to BigCommerce during the web store sync once items are associated with the tracking number. Note: In order to export shipments, the detail_order_address_id field must be mapped to the Reference 2 field of the Acctivate Order (found on the Mapping page of the template). This mapping is the default and should not be unmapped. |
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. |
Export shipped item qtys | Yes/No | If this option is set to Yes and the "Export shipments" option is also enabled, Acctivate will export tracking numbers and the product's shipped quantities (based on the "Default ship qty" option). If the "Default ship qty" is based on the Invoiced qty and you haven't created an invoice yet, Acctivate would attempt to send the shipments tracking numbers, but there will be no shipment details available to send and BigCommerce v2 does not allow adding tracking numbers to an order without shipment details. Instead, change this option to No and rather than exporting tracking numbers to the web store, Acctivate will update the order to have a "Shipped" status on the web store. |
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 BigCommerce customer account information. In some cases, a customer may create an account your BigCommerce 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 BigCommerce. When set to No, Acctivate will not import orders, but will (optionally) import customers. |
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. |
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. |
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 | 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. |
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 from BigCommerce, the BigCommerce 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 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 a BigCommerce 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 BigCommerce SKU.
Note
BigCommerce does not allow updating inventory by SKU, instead, inventory must be updated using the BigCommerce internal ID for the product. During a web store sync, Acctivate downloads a list of BigCommerce SKUs that have changed since the last sync. The SKU's associated IDs (for the main product and any variants) are stored in a database table, tbImportSku. During the inventory export portion of the sync, Acctivate uses that table to associate the Acctivate ID (see bullet point above) with a BigCommerce internal ID(s). The associated internal ID and product availability is then what is used to update BigCommerce.
Note
If a Product ID or Big Commerce specific Alternate ID (or the product's primary Alternate ID when the option Export inventory by alternate product ID is enabled) is changed in Acctivate, then the SKU in Big Commerce must be updated to match in order for inventory to sync properly. However, the web store inventory sync will attempt to find the correct availability using the Acctivate Product ID's internal unique identifier (GUIDProduct).
- 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.
BigCommerce requires items to be associated with a tracking number. If shipments are packaged using Acctivate's Packaging Manager, then "Shipped" packages will have their tracking numbers and products exported during the next web store sync. If tracking numbers are imported in from a Shipping Workstation, then items will be associated with the first package when an invoice is created and the invoiced items and first tracking number will be exported.
The Ref 2 field on the Additional Info tab of the Enter Sales Order window will store the BigCommerce Address ID. This value must remain in Ref 2 for shipments to export properly to BigCommerce.
Usage
Refer to the Web Store section of the documentation for information on how to begin a sync with BigCommerce.