PHP code example of lifeonscreen / laravel-quickbooks
1. Go to this page and download the library: Download lifeonscreen/laravel-quickbooks library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
lifeonscreen / laravel-quickbooks example snippets
namespace App\QuickBooks;
use LifeOnScreen\LaravelQuickBooks\QuickBooksTokenHandler;
class TokenHandler extends QuickBooksTokenHandler
{
public function set($key, $value)
{
option([$key => $value]);
}
public function get($key)
{
return option($key);
}
}
public function boot()
{
$this->app->bind(
\LifeOnScreen\LaravelQuickBooks\QuickBooksTokenHandlerInterface::class,
\App\QuickBooks\TokenHandler::class
);
}
namespace App\Http\Controllers;
use LifeOnScreen\LaravelQuickBooks\QuickBooksAuthenticator;
use Cookie;
class QuickBooksController extends Controller
{
public function connect()
{
return redirect(QuickBooksAuthenticator::getAuthorizationUrl())
->withCookies(Cookie::getQueuedCookies());
}
public function refreshTokens()
{
if (QuickBooksAuthenticator::processHook()) {
return 'Tokens successfully refreshed.';
}
return 'There were some problems refreshing tokens.';
}
}
namespace App\Models\Company;
use LifeOnScreen\LaravelQuickBooks\QuickBooksEntity;
use LifeOnScreen\LaravelQuickBooks\Resources\Customer;
class Company extends QuickBooksEntity
{
/**
* Database column name
* This is optional default value is 'quickbooks_id'
* @var string
*/
protected $quickBooksIdColumn = 'quickbooks_id';
/**
* Use one of LifeOnScreen\LaravelQuickBooks\Resources classes
* @var array
*/
protected $quickBooksResource = Customer::class;
/**
* @return array
*/
protected function getQuickBooksArray(): array
{
return [
'CompanyName' => 'Example name',
'DisplayName' => 'Example display name',
//...
];
}
}
/**
* @return string
* @throws \Exception
*/
public function syncExample()
{
$company = Company::find(1);
if ($company->syncToQuickBooks()){
return 'Success';
}
return $company->getLastQuickBooksError();
}