QuickBooks integration to Power Ecommerce

Understanding QuickBooks.

  1. Account Names
  2. Customer Names
  3. Item Names

QuickBooks uses unique "names" to identify accounts, customers, and items. Although account, customer, and item numbers can optionally be deployed in QuickBooks, it is not the number that determines whether an account, customer, or item is unique; it is the name.

While the result of using names versus numbers in QuickBooks as a standalone system may be identical because the system prevents duplicates by using the text string as an identifier of "uniqueness" as opposed to a numerical string, the vagary comes into play when integrating with other systems that more commonly use a string of numbers as identifiers of "uniqueness" and not text strings.

Consider this in the context of integrating two independent platforms, one using numbers as unique identifiers and the other using text strings (names) as the unique identifier.

Being the back-end of the integrated system, QuickBooks is not the "originator" of a new transaction created in an e-commerce system such as Power E-commerce. When an order is placed in the "front-end" of the integrated system, it adopts the "unique" identifier (usually a number) of that front-end system. While the front-end unique identifiers will be associated with a company name and any item names ordered, the potential for a discrepancy between the text string in the front end (e-commerce) and the text string in the back end (QuickBooks) is introduced. (See Data Synchronization sub-heading below for more details)

Integration Software Features:

  1. Automatically transfer sales transactions from Power Ecommerce to QuickBooks.
  2. Supports transfer as:
    1. Sales Estimates
    2. Sales Receipts
    3. Sales Orders
    4. Invoices
  3. Support transfer of discounts, shipping charges, & sales tax as determined in the Power Ecommerce system.
  4. Support transfer of vendor purchase orders from Power Ecommerce to QuickBooks.
  5. Support custom forms in QuickBooks.
  6. Support transaction ID prefixes to overcome the potential for conflicts between QuickBooks and Power Ecommerce.

Populating and/or selecting the required option from 25 field settings is all that's needed to set up a QuickBooks Online integration.

An additional step to deploy the QuickBooks Web Connector is necessary for integrating with QuickBooks Desktop versions.



During the software development, the priority was to integrate the systems by providing a solution that eliminates the necessity for duplicate data entry currently experienced by many users of legacy e-commerce platforms in the office products and equipment channels.

A typical office products dealer may offer 50,000 or more products in its online catalog. The dealers' aggregate customer base will be unlikely ever to purchase 100% of these items, so it would be a waste of time to set them all up in a back office system such as QuickBooks, irrespective that such a large volume of items exceeds the threshold limits of certain QuickBooks versions anyway. However, there is no way the dealer can know in advance when a new order will be received for an item that has never been sold previously and is, therefore, not already set up in QuickBooks.

Likewise, a new customer may register at the dealers' e-commerce site and place an order. The dealer may or may not know in advance that this will happen.

The priority for both of these circumstances is to use a system that ensures no administrative delays are incurred by the need for manually setting up new items and new customer records in QuickBooks before an order can be processed.

The software is designed to take care of this. Whether it be a new or existing customer buying new or existing items, the customer and item records will be automatically transferred into the QuickBooks platform. The integration software reads the customer and item records in QuickBooks, automatically creating new ones if they don't already exist. This system ensures no delays with order processing and eliminates duplicate keying that would otherwise be required to process a new customer or new items.

Data Synchronization

It is important to understand that the integration software "reads" the QuickBooks customer list, the vendor list, and the item list as it prepares to transmit customer sales orders and vendor purchase orders from the "front office" e-commerce system to QuickBooks. If it finds an existing record, it knows not to create a new one.

There are three types of records affected:

1. The Customer Record

If the "front office" and "back-office" customer records are not synchronized, new customers will be created when not required.

2. The Vendor Record

The same is true for the vendors. For every item offered for resale by a dealer, there must be a vendor associated with the product. If the vendor is named differently in the front-end system to the back-end, then the integration software will create a new vendor - just as it would in creating a new customer. Vendor purchase orders can be created and transmitted from the Power E-commerce system to individual suppliers, and each PO created can be automatically transmitted to QuickBooks using the integration software.

3. The Item Record

Finally, the same is true for items. However, this introduces a much more significant and potentially unsolvable problem. Think of a QuickBooks user with 3,000 items already established, and then think of the front-end system with 50,000 or more products. Think of the protocol that Dealer A may have used for an item naming convention versus Dealer B. They are almost certainly going to be different. Think of the item naming conventions amongst 25 or more manufacturers and distributors who supply those 50,000 products. Again, almost certainly, there will not be a consistent naming convention. So, the item ordered in the system's front-end will almost certainly NOT have the same item name as a potentially pre-existing item in the clients' back-end (QuickBooks) system. This means the item as it's named in the front end will be created in the clients' QuickBooks instance. 

It is possible to overcome this issue, but it requires a significant amount of cross-referencing activity to do so. If the QuickBooks client exports their item list and cross-references to the e-commerce catalog item list, the pre-existing QuickBooks items can be loaded to a client-managed field in the front-end system. This is a field that is not overwritten during catalog updates and would serve to ensure the integration software recognizes pre-existing items in the back-office QuickBooks instance. Individual dealers must decide for themselves if the investment required for this cross-referencing activity is worth making.

Day-to-day operations:  

One of the first questions we are invariably asked is how long does it take for a sales order or purchase order to download? The answer is that it varies. The default setting is for the software to look for changes every five minutes, so the maximum before any activity could be 5 minutes and the minimum as little as a few seconds. After initiating a new transaction download, other variables come into play.

1. First, the software looks to see if the customer already exists in your QuickBooks. If it doesn't, then it must be created.

2. Next, it looks at the items on the order and looks to see if they already exist in your QuickBooks. If not, it (or they) must be created.

When this work is done, the order can download to QuickBooks.

A similar series of steps must also occur for a vendor purchase order. The software looks to see if the vendor already exists; if not, it must be created.

Typically, you should expect a sales order or purchase order to be downloaded into your QuickBooks within 15 minutes of the transaction being created.

Can I control the timing of a transaction download to QuickBooks?

Yes on Sales Orders and no on Purchase Orders

Users may wish to delay the transaction transfer from the eCommerce portal to QuickBooks for the following reasons:

1. For a credit card transaction, it is possible (for whatever reason) that the card may not be authorized by your payment processor. For example, the customer could have made a keying error on the card number, expiry date, authorization code, etc. An error on one of these fields will result in the card not being automatically approved. There is also a possibility it could be a fraudulent transaction. Utilizing the setting to delay transaction transfer until after the credit card is approved overcomes the potential issue of an unwanted sale being transferred to QuickBooks, where it would subsequently need to be deleted.

For these reasons, clients may prefer not to download a sales order until the card has been authorized - whether that be automatically or through manual intervention.

2. For a Net Terms transaction, the dealer can automatically transfer the order to QuickBooks or elect to delay the transfer until the order has been checked and manually set to "In Progress" in the Power Ecommerce system. At this point, it will then be transferred.

3. Vendor Purchase Orders are transferred immediately after they are created. There are no triggers in the Power Ecommerce system that can be used to delay sending the PO to QuickBooks.

Leave your comment