sylvester/quickbooks

quickbooks desktop integration with laravel app

1.9.0 2023-06-14 12:00 UTC

This package is auto-updated.

Last update: 2025-06-14 16:27:29 UTC


README

Following the instructions below accordingly in other to integrate and use this package in your laravel project.

Installation

Require the QuickBooks PHP DevKit (QuickBooks integration support)

composer require "consolibyte/quickbooks:dev-master"

Then require this package using :

composer require sylvester/quickbooks

Next add the below to your .env :

 QB_DSN=
 QB_USERNAME=quickbooks
 QB_PASSWORD=password
 QB_TIMEZONE=America/New_York
 QB_LOGLEVEL=QUICKBOOKS_LOG_DEVELOP
 QB_MEMLIMIT=512M
 QB_SOAPSERVER=QUICKBOOKS_SOAPSERVER_BUILTIN
 QB_QUICKBOOKS_CONFIG_LAST=last
 QB_QUICKBOOKS_CONFIG_CURR=curr
 QB_QUICKBOOKS_MAX_RETURNED=100
 QB_PRIORITY_ITEM=0
 QB_QUICKBOOKS_MAILTO=support@onehealthng.com

NOTE: Your database connection in your .env needs to be set.

ADD the following be to your Config/app under providers:

 Sylvester\Quickbooks\Providers\QuickbookdProvider::class

After that then run the following below:

php artisan vendor:publish --tag=config

Then visit your the url below to see if it works.

https://yourappurl/qbd-webconnector/qbwc

USAGE

Follow the the below application to use the package in your project .

1. ADDING A NEW INVENTORY

In other to add a new inventory to quickbooks using this package your example controller will look like below:

   <?php

   namespace App\Http\Controllers;

   use Illuminate\Http\Request;
   
   // require the package 
   use Sylvester\Quickbooks\Quickbooksd;

   class Additemcontroller extends Controller
    {
          
         // make this a protected variable
         
        protected $QBD;

         //implement a construct
         public function __construct()
         {  
         $this->QBD  = new Quickbooksd;
	
         $this->QBD->connect();
	
       }


       //saving item to database function

       public function saveitem(Request $request){


        // below you queue the  id of each item so that quickbooks webconnector can pick it up.
        
        $this->QBD->enqueue(QUICKBOOKS_ADD_INVENTORYITEM, $request->input('id'));
     

       }
     }

2. ADDING A NEW CUSTOMER

In other to add a new customer to quickbooks using this package your example controller will look like below:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

// require the package 
use Sylvester\Quickbooks\Quickbooksd;

class Customercontroller extends Controller
{

// make this a protected variable
protected $QBD;

//implement a construct
public function __construct()
{  
    $this->QBD  = new Quickbooksd;
	
    $this->QBD->connect();
	
}



//saving customer to database function
 
public function savecustomer(Request $request){

 // below you queue the  id of each customer  so that quickbooks webconnector can pick it up.
 
 
 $this->QBD->enqueue(QUICKBOOKS_ADD_CUSTOMER, $request->input('id'));


}


}

3. ADDING A NEW SALES

In other to add a new sales to quickbooks using this package your example controller will look like below:

 <?php

 namespace App\Http\Controllers;

 use Illuminate\Http\Request;
 
 // require the package 
 use Sylvester\Quickbooks\Quickbooksd;

 class Salescontroller extends Controller
 {

 // make this a protected variable
 protected $QBD;


  //implement a construct
  public function __construct()
 {  
    $this->QBD  = new Quickbooksd;
	
    $this->QBD->connect();
	
  }

    /saving sales to database function
    
   public function savesales(Request $request){


    // below you queue the  id of each orders from the orders table not batch_id so that quickbooks webconnector can pick it up.
 
    $this->QBD->enqueue(QUICKBOOKS_ADD_SALESORDER, $request->input('id'));


     }
     }