Integrating Ubercart with Order Fulfillment Applications

Posts: 3
Joined: 01/24/2008

For an upcoming project we are seriously considering integrating Ubercart with a separate order fulfillment system (with ERP, accounting, CRM etc.). The package that we're looking at is PostBooks (aka OpenMFG) and is open source. The advantage of using this system vs. fulfilling orders via Ubercart is that our workflow is sped up by the following functionality:

* Printing of Pick lists (what to pick from inventory for the order)
* Printing of packing lists
* Printing of UPS/FedEx/USPS shipping labels (rather than having to manually go to their web pages, all with different user interfaces and address books)
* Setting Inventory low-water marks and alerts
* Tracking inventory purchases
* Detailed reporting

I'd like to open up a discussion with others in the Ubercart community (especially lead developers) to help us think through the integration. I know that a similar system had already been built (http://www.ubercart.org/contrib/991). I have numerous questions that need investigating:

* What are the potential pitfalls in integrating with a system such as PostBooks?
* What is lost by not going with an Ubercart-only system?
* Are there technical hurdles that will make any part of the
integration difficult? (note - we have experienced Drupal devs. on staff to tackle building this).
* Are others interested in developing this functionality as well?

I'm subscribing to this thread and will follow up as (or if!) people reply.

Thanks.
Rick

Posts: 5378
Joined: 08/07/2007
AdministratorHead Code Monkey - I eat bugs.

Welcome aboard, Rick. A couple general responses first and one specific one... If you've got a multi-system setup that does exactly what you need, then I'd say go for it. The only real "pitfall" would be in forgetting to update orders in Ubercart once they've been processed so that customers never realize their order was received and any on site workflow stuff doesn't get fired off. So really, I'd say any sort of integration can work if you have a good enough system and the sales team works with it.

We use QuickBooks right now for our accounting, and we have a separate homebrew inventory system. Granted, a lot of the rationale behind Ubercart was we needed to consolidate our systems. Doing some contract work a couple months ago someone asked me to look into PostBooks integration, and my thought at the time was that it would be extremely difficult in the absence of any solid importing process. With QuickBooks we can connect to our company file through a web service, so I whipped up a web app that takes care of the integration. With PostBooks, the best I found was a manual CSV importer, and I was never really even able to test it. Part of the problem was I didn't have a local copy to toy with, and I'm also unfamiliar with PostgreSQL. But the bottleneck still seemed at the time to be no good way to get the data in. For your purposes, you might start with the EDI module I wrote to export data into CSVs, but I don't have any good ideas on getting it into your PostBooks company file.

If you do come up with something, though, I'd love to hear about it. Eye-wink

Posts: 3
Joined: 01/30/2008

This is an interesting topic. I think every store owner needs some solution for, as a minimum, generating shippers without double entry and getting tracking numbers back into uc so customers can check order status online. It would be interesting to see if someone already has an end-to end solution in place.

Ryan - Please elaborate on "With QuickBooks we can connect to our company file through a web service"

Which version of Quickbooks do you use? Desktop or Online Edition? Do you fulfill orders inside Quickbooks and then post the info such as tracking numbers and fulfillment date back into the uc database? How do you automate printing of the shippers?

Posts: 5378
Joined: 08/07/2007
AdministratorHead Code Monkey - I eat bugs.

MrHDTV wrote:
Ryan - Please elaborate on "With QuickBooks we can connect to our company file through a web service"

Which version of Quickbooks do you use? Desktop or Online Edition? Do you fulfill orders inside Quickbooks and then post the info such as tracking numbers and fulfillment date back into the uc database? How do you automate printing of the shippers?

It's a desktop edition with the QuickBooks Web Connector. Shameless plug for myself... you can read about it in this interview article. Made geek of the month for figuring it all out. Eye-wink

Posts: 3
Joined: 01/30/2008

Thanks, that was helpful. If I understand correctly, the Web Connector is a Windows app that resides on multiple users' desktops. Those same users have access to a shared QB Company file (on a server I presume). All sales transactions are entered into ubercart directly, and then can be exported on demand by adding the invoice number, etc. to the Web Connector queue. Soon afterwards, the QB Company file is updated with the new transactions. Your clever database activity logging prevents the same invoice from being exported twice. Is this correct?

How do you get shipment tracking information back into ubercart? Does Web Connector do this as well?

Do you know if the Web Connector would work with QuickBooks Online Edition? OE looks like a better solution than a shared company file IMHO.

Posts: 5378
Joined: 08/07/2007
AdministratorHead Code Monkey - I eat bugs.

Yep, we're doing pretty much exactly what you presumed. Sorry for not outlining that in my post. The only caveat is we haven't done this for Ubercart yet... that's the next stage in our Ubercart development. Right now the system only works for our old osCommerce site. Also, we really only use QuickBooks for accounting purposes. All the order fulfillment, including setting up shipments and tracking stock, happens through various homebrew apps connected to our osC store. A big draw for making our own cart was to consolidate our various applications into one fantastic e-commerce suite. It just turned out to be a longer task than we expected. Eye-wink

I don't know anything about the Online Edition of QB. That may be an option for us in the future so we can get rid of Windows and move onto a Linux server for sales. We may just try to find some alternate accounting solution, too.

Posts: 3
Joined: 01/30/2008

I think it is an important discriminator for the "back-end" solution to be robust, extensible, online, and open source. I have heard too many horror stories of companies in their growth phase that have outgrown QuickBooks, and quickly need to transition to more of an enterprise accounting package. Unfortunately, that transition often takes a year or more, particularly if they are using Great Plains or SAP, and their growth is significantly hampered.

Quickbooks Online Edition is a step in the right direction, but you may want to consider the PostBooks solution mentioned at the beginning of this thread as it is open source, multi-platform, client/server, and upgradable to the vendor supported OpenMFG version. Ubercart plus PostBooks would be a killer combination and a strong reason for eCommerce merchants to select Ubercart over the competition.

Posts: 3
Joined: 01/24/2008

Ryan - Thank you for your answer to my PostBooks and order fulfillment question previously. I hate to bug you about this, but do you have any rough timeline for Quickbooks integration with Ubercart? I know that the focus right now is 1.0 stable. Will this come before or after the Drupal 6 port?

BTW, you're all doing great work here. We're potentially working on an Ubercart project over the next few months and will contribute back wherever it makes sense to. If there is a Quickbooks system available we will be using it and will help test and debug. Cheers.

Posts: 3
Joined: 01/24/2008

In a related question, how many hours do you believe it would take to port your osCommerce work over to Drupal? Feel free to email, PM or skype (rickvug) me if you would like to discuss this off list.

Thanks.