PHPackages                             shawnreid/laravel-quickbooks - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. shawnreid/laravel-quickbooks

ActiveLibrary[API Development](/categories/api)

shawnreid/laravel-quickbooks
============================

Quickbooks wrapper for Laravel

v1.0.0(3y ago)6191MITPHPPHP ^8.1

Since Jan 15Pushed 3y ago1 watchersCompare

[ Source](https://github.com/shawnreid/laravel-quickbooks)[ Packagist](https://packagist.org/packages/shawnreid/laravel-quickbooks)[ Docs](https://github.com/shawnreid/laravel-quickbooks)[ RSS](/packages/shawnreid-laravel-quickbooks/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (1)Dependencies (10)Versions (2)Used By (0)

Quickbooks SDK Wrapper For Laravel
==================================

[](#quickbooks-sdk-wrapper-for-laravel)

[![Latest Version on Packagist](https://camo.githubusercontent.com/17a051b276655d1431a3827cad23b2e74f59c06f9e5358c52300781e4cff422d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f736861776e726569642f6c61726176656c2d717569636b626f6f6b732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/shawnreid/laravel-quickbooks)[![Total Downloads](https://camo.githubusercontent.com/3865d971807ee4f0a31deb903e9575b8a082b87f1bb0f2ae3a1c2c1759a8b896/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f736861776e726569642f6c61726176656c2d717569636b626f6f6b732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/shawnreid/laravel-quickbooks)[![GitHub Actions](https://github.com/shawnreid/laravel-quickbooks/actions/workflows/main.yml/badge.svg)](https://github.com/shawnreid/laravel-quickbooks/actions/workflows/main.yml/badge.svg)[![PHP Stan](https://camo.githubusercontent.com/f60d96f7c2579690ab6dfa8918f777fe93a02a92301c661eb38a85861a92b780/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d6c6576656c253230382d627269676874677265656e2e7376673f7374796c653d666c6174)](https://camo.githubusercontent.com/f60d96f7c2579690ab6dfa8918f777fe93a02a92301c661eb38a85861a92b780/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d6c6576656c253230382d627269676874677265656e2e7376673f7374796c653d666c6174)[![codecov](https://camo.githubusercontent.com/20f3d51110b410e09f6295937f17d011f26e14f1ce9c5ac92d6d47ef9798f2bc/68747470733a2f2f636f6465636f762e696f2f6769746875622f736861776e726569642f6c61726176656c2d717569636b626f6f6b732d636c69656e742f6272616e63682f6d61737465722f67726170682f62616467652e7376673f746f6b656e3d31585947383638415839)](https://codecov.io/github/shawnreid/laravel-quickbooks-client)

Laravel Quickbooks is a token manager and wrapper for the [QuickBooks PHP SDK](https://github.com/intuit/QuickBooks-V3-PHP-SDK). See [Quickbooks API Reference](https://developer.intuit.com/app/developer/qbo/docs/get-started) for more details on how to interact with the API.

Requirements
------------

[](#requirements)

VersionPHP^8.1Laravel^9.0Installation
------------

[](#installation)

You can install the package via composer:

```
composer require shawnreid/laravel-quickbooks
```

Publish assets

```
php artisan vendor:publish --provider="Shawnreid\LaravelQuickbooks\Providers\QuickbooksProvider"
```

Create database table `quickbooks_tokens`

```
php artisan migrate
```

Configuration
-------------

[](#configuration)

1. Before starting you will need a QuickBooks developer account to [setup a sandbox environment](https://developer.intuit.com/app/developer/qbo/docs/develop/sandboxes). You will also need a tool such as [ngrok](https://ngrok.com) to expose your local dev environment.
2. Quickbooks requires a Redirect URI be provided for OAuth2 authentication. You must set this to: `https:///quickbooks/token`
3. Add the appropriate values to your `.env`

    ```
    QUICKBOOKS_CLIENT_ID=
    QUICKBOOKS_CLIENT_SECRET=
    QUICKBOOKS_API_URL=
    QUICKBOOKS_DEBUG=
    ```
4. By default this package will attach to the `User` Model. If you wish to use another model this can be configured in `configs/laravel-quickbooks.php`. A trait will need to be included in the model you wish to use.

    Example:

    ```
    use Shawnreid\LaravelQuickbooks\Quickbooks;

    class User extends Authenticatable
    {
       use Quickbooks;
    ```
5. The token manager middleware by default is set to `auth`. Depending on your needs you will likely want to change this. This can be configured in `configs/laravel-quickbooks.php`

Connecting to Quickbooks
------------------------

[](#connecting-to-quickbooks)

This package provides a simple interface for managing quickbooks OAuth2 connections.

1. Navigate to `https:///quickbooks`
2. Select model you want to attach connection to and click `Create Connection`. If configured properly you will be redirected to a QuickBooks authentication page.

You may also revoke tokens or refresh tokens from this interface. Note that anytime an API call is made to QuickBooks this package will automatically refresh the token.

Usage
-----

[](#usage)

This package provides syntatic sugar to wrap QuickBooks PHP SDK. Please see [QuickBooks Sample CRUD App](https://github.com/IntuitDeveloper/SampleApp-CRUD-PHP/tree/master/CRUD_Examples) for additional examples.

### Examples

[](#examples)

```
$user = User::find(1);

$user

    // resolve data service
    ->quickbooks()

    // resolve invoice entity
    ->invoice()

    // create invoice
    ->create(
         body: [...]
     )

$user

    // resolve data service
    ->quickbooks()

    // resolve customer entity
    ->customer()

    // update customer
    ->update(
         id: 'id'
         body: [...]
     )

$user

    // resolve data service
    ->quickbooks()

    // resolve bill entity
    ->bill()

    // delete bill
    ->delete(
         id: 'id'
    )

$user

    // resolve data service
    ->quickbooks()

    // resolve vendor entity
     ->vendor()

     // find vendor
     ->find(
         id: 'id'
     )

$user

    // resolve data service
    ->quickbooks()

    // Custom SQL query
    // https://developer.intuit.com/app/developer/qbo/docs/learn/explore-the-quickbooks-online-api/data-queries
    ->query('SELECT * FROM Invoice')
```

### Supported Entities

[](#supported-entities)

```
$user->quickbooks()->account();
$user->quickbooks()->bill();
$user->quickbooks()->billPayment();
$user->quickbooks()->customer();
$user->quickbooks()->estimate();
$user->quickbooks()->invoice();
$user->quickbooks()->item();
$user->quickbooks()->journalEntry();
$user->quickbooks()->payment();
$user->quickbooks()->timeActivity();
$user->quickbooks()->vendor();
$user->quickbooks()->vendorCredit();
$user->quickbooks()->companyCurrency();
$user->quickbooks()->creditMemo();
$user->quickbooks()->department();
$user->quickbooks()->deposit();
$user->quickbooks()->employee();
$user->quickbooks()->purchase();
$user->quickbooks()->purchaseOrder();
$user->quickbooks()->refundReceipt();
$user->quickbooks()->salesReceipt();
$user->quickbooks()->taxAgency();
$user->quickbooks()->taxRate();
$user->quickbooks()->taxService();
$user->quickbooks()->transfer();
```

### Supported CRUD Operations

[](#supported-crud-operations)

```
$user->quickbooks()->invoice()->create([...]);
$user->quickbooks()->invoice()->update('id', [...]);
$user->quickbooks()->invoice()->delete('id');
$user->quickbooks()->invoice()->find('id');
```

### Testing

[](#testing)

```
composer test
```

### Changelog

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Credits
-------

[](#credits)

- [Shawn Reid](https://github.com/shawnreid)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

26

—

LowBetter than 41% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1265d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3fbb998c2e4f76e9dd8a3be3f9e843b350a97ec56e344b6510d8b4df45823880?d=identicon)[shawnreid](/maintainers/shawnreid)

---

Top Contributors

[![shawnreid](https://avatars.githubusercontent.com/u/58261727?v=4)](https://github.com/shawnreid "shawnreid (20 commits)")

---

Tags

laravel-quickbooksshawnreid

###  Code Quality

TestsPHPUnit

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/shawnreid-laravel-quickbooks/health.svg)

```
[![Health](https://phpackages.com/badges/shawnreid-laravel-quickbooks/health.svg)](https://phpackages.com/packages/shawnreid-laravel-quickbooks)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M345](/packages/psalm-plugin-laravel)[laravel/cashier

Laravel Cashier provides an expressive, fluent interface to Stripe's subscription billing services.

2.6k29.9M146](/packages/laravel-cashier)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k15.1M131](/packages/laravel-pulse)[api-platform/laravel

API Platform support for Laravel

58171.5k14](/packages/api-platform-laravel)[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1235.9k20](/packages/fleetbase-core-api)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5021.9k](/packages/simplestats-io-laravel-client)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
