QuickBooks Web connector – Schematic Data Flow

In the previous blog “Smooth Transitions: Importing Data Seamlessly into QuickBooks Desktop” we saw how one can achieve integrations with QuickBooks via SDK and Web Connector respectively. 

What is QuickBooks Web Connector? 
  • Your current web app user shows interest in your application and agrees to proceed with setting up communication between web service and company data 
  • Web app prompts user to download .qwc file 
  • Web app shares password corresponding to .qwc file 
  • User open QBWC and configure the qwc file, enters the password shared by your web app 
  • QBWC initiates the communication with web service 
  • Web service authenticates the request with credentials (user id and password) 
  • Communication channel between web service and QBWC is setup for further data communication 
QuickBooks Web  Connector
  1. QBWC calls clientVersion which triggers communication. Web service will receive info like QuickBooks and QBWC version. Web service will have an opportunity to stop the communication here (if there are version conflicts) 
  2. QBWC calls authenticate() method. This implementation of authenticate method by web service is meant to authenticate user as it receives credentials in the SOAP request. authenticate() method can return token or invalid user response. 
  3. QBWC now calls sendRequestXML() to enquire with web service of what action service needs to perform on the company data. The response to this request decides set of action on QuickBooks desktop. 
  4. If the response to sendRequestXML in step#3 is empty, QBWC now calls getLastError which gives web service opportunity to report an error. 
  5. If getLastError responds with “Interactive mode”, QBWC calls getInteractiveURL() method and opens the URL in the response in browser.  
  6. If response to sendRequestXML() in Step 3 is valid qbXML, the request is sent to QuickBooks. Response from QuickBooks desktop is delegated to method ReceiveResponseXML() method. 
  7. If sendRequestXML() responds anything between 0 to 99, Steps 3 and 6 are repeated, while if it returns 100, closeConnection() method is called. 
QuickBooks Web  Connector

Mahendra Batra


Mahendra Batra

Mahendra is a Computer Science graduate and has been working with global clients since 15+ years. He has exposure in requirement gathering, analysis & design, development, testing and production support of a project life cycle. He takes care of understanding business requirements, translating them in to SRS, process models etc and subsequently aligns these requirements with technical implementation. He emphasizes on following best practices and tools for product execution and management. He can be reached at [email protected]