Download the PHP package sumer5020/laravel-zoho-books without Composer
On this page you can find all versions of the php package sumer5020/laravel-zoho-books. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download sumer5020/laravel-zoho-books
More information about sumer5020/laravel-zoho-books
Files in sumer5020/laravel-zoho-books
Package laravel-zoho-books
Short Description Powerful and streamlined Laravel package for seamless Zoho Books V3 integration
License MIT
Informations about the package laravel-zoho-books
Laravel Zoho Books
This Laravel package simplifies integration with Zoho Books Accounting System, streamlining API interactions for easier accounting management.
Requirements
Software | Version |
---|---|
php |
^8.2 |
Composer |
^2.4 |
Laravel |
^11.0 |
Features
- [x] Authentication end points
- [x] Contact end points
- [x] Contact Person end points
- [x] Estimate end points
- [x] Sales Order end points
Coming soon features ✨
- [ ] Bank Account end points - [ ] Bank Rule end points - [ ] Bank Transaction end points - [ ] Base Currency Adjustment end points - [ ] Bill end points - [ ] Chart Of Account end points - [ ] Credit Note end points - [ ] Currency end points - [ ] Customer Payment end points - [ ] Custom Module end points - [ ] Expense end points - [ ] Invoice end points - [ ] Item end points - [ ] Journal end points - [ ] Opening Balance end points - [ ] Project end points - [ ] Purchase Order end points - [ ] Recurring Bill end points - [ ] Recurring Expense end points - [ ] Recurring Invoice end points - [ ] Retainer Invoice end points - [ ] Task end points - [ ] Tax end points - [ ] Time Entry end points - [ ] User end points - [ ] Vendor Credit end points - [ ] Vendor Payment end points - [ ] Zoho Crm Integration end pointsInstallation
Install the package by using composer:
Publish the assets
Publish all assets
Publish the configuration only:
Publish the migrations only:
Add this into your .env
and add your details that come from https://accounts.zoho.com/developerconsole
After that Run php artisan zoho:init
command to initialize your credentials and insert token
, refresh_token
and expires_in
into zoho_tokens
table.
[!WARNING] We used
Self Client
to generate server-to-server access code. you must run the artisan command before the access code expired.[!NOTE] The
expires_in
is for thetoken
, Therefresh_token
is lifetime until you revoke it.[!NOTE] In order to reduce the number of database requests and improve the performance you need to cache this token credentials with expire time equals the token expire time.
Usage
Setup 🚀
After publish
Add the ZohoBooksFacade
in your controller or any class you need to use the package functionality on it
Authenticate and Set Up
-
Initialize Your Credentials
After running the
php artisan zoho:init
command, the access and refresh tokens will be stored in thezoho_tokens
table. You can retrieve these tokens when making API calls. -
Refresh access token
To refresh expired access token, use:
-
Revoke access token
To revoke the access token, use:
[!NOTE] Once you have the access token, you can use it to call various Zoho Books API endpoints. The package provides a clean interface for each entity.
Working with Contacts
-
Create a Contact
To create a new contact, use:
-
Update a Contact
To update an existing contact:
-
List Contacts
To list contacts with pagination:
-
Get a Specific Contact
To retrieve a specific contact's details:
-
Delete a Contact
To delete a contact:
Working with Contact Persons
-
Create a Contact Person
To create a new contact person, use:
-
Update a Contact Person
To update an existing contact person, use:
-
List Contacts Person
To list person, use with pagination:
-
Get a Specific Contact Person
To retrieve a specific contact person details, use:
-
Delete a Contact Person
To delete a contact person, use:
Working with Estimates
-
Create an Estimate
To create an estimate:
-
Update an Estimate
To update an existing estimate:
-
List Estimates
To list estimates:
-
Get Estimate Details
To get details of a specific estimate:
-
Delete an Estimate
To delete an estimate:
Working with Sales Orders
-
Create a Sales Order
To create a new sales order:
-
Update a Sales Order
To update an existing sales order:
-
List Sales Orders
To list sales orders:
-
Get a Specific Sales Order
To retrieve details of a sales order:
-
Delete a Sales Order
To delete a sales order:
Error Handling
When making API calls, exceptions may be thrown if something goes wrong. Make sure to handle exceptions properly:
Usage Table
Service | Method | Parameters | Parameter Content | Is Mandatory |
---|---|---|---|---|
Contacts | ZohoBooksFacade::contacts()->create() |
$token |
Access token for authorization | Yes |
$organizationId |
ID of the organization | Yes | ||
$contactData |
Instance of CreateContactDto |
Yes | ||
ZohoBooksFacade::contacts()->update() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$updateContactData |
Instance of UpdateContactDto |
Yes | ||
ZohoBooksFacade::contacts()->list() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$paginationDto |
Instance of PaginationDto |
No | ||
$contactFiltersDto |
Instance of ContactFiltersDto |
No | ||
ZohoBooksFacade::contacts()->get() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$contactId |
ID of the contact to retrieve | Yes | ||
ZohoBooksFacade::contacts()->delete() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$contactId |
ID of the contact to delete | Yes | ||
ContactPersons | ZohoBooksFacade::contactPersons()->create() |
$token |
Access token for authorization | Yes |
$organizationId |
ID of the organization | Yes | ||
$contactPersonData |
Instance of CreateContactPersonDto |
Yes | ||
ZohoBooksFacade::contactPersons()->update() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$updateContactPersonData |
Instance of UpdateContactPersonDto |
Yes | ||
ZohoBooksFacade::contactPersons()->list() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$contactId |
ID of the related contact | Yes | ||
$paginationDto |
Instance of PaginationDto |
No | ||
ZohoBooksFacade::contactPersons()->get() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$getContactPersonDto |
Instance of GetContactPersonDto |
Yes | ||
ZohoBooksFacade::contactPersons()->delete() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$contactPersonId |
ID of the contact person to delete | Yes | ||
Estimates | ZohoBooksFacade::Estimates()->create() |
$token |
Access token for authorization | Yes |
$organizationId |
ID of the organization | Yes | ||
$estimateData |
Instance of CreateEstimateDto |
Yes | ||
ZohoBooksFacade::Estimates()->update() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$updateEstimateData |
Instance of UpdateEstimateDto |
Yes | ||
ZohoBooksFacade::Estimates()->list() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$paginationDto |
Instance of PaginationDto |
Yes | ||
$estimateFiltersDto |
Instance of EstimateFiltersDto |
No | ||
ZohoBooksFacade::Estimates()->get() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$estimateId |
ID of the estimate to retrieve | Yes | ||
ZohoBooksFacade::Estimates()->delete() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$estimateId |
ID of the estimate to delete | Yes | ||
SalesOrders | ZohoBooksFacade::salesOrders()->create() |
$token |
Access token for authorization | Yes |
$organizationId |
ID of the organization | Yes | ||
$salesOrderData |
Instance of CreateSalesOrderDto |
Yes | ||
ZohoBooksFacade::salesOrders()->update() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$updateSalesOrderData |
Instance of UpdateSalesOrderDto |
Yes | ||
ZohoBooksFacade::salesOrders()->list() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$paginationDto |
Instance of PaginationDto |
Yes | ||
$salesOrderFiltersDto |
Instance of SalesOrderFiltersDto |
No | ||
ZohoBooksFacade::salesOrders()->get() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$salesOrderId |
ID of the sales order to retrieve | Yes | ||
ZohoBooksFacade::salesOrders()->delete() |
$token |
Access token for authorization | Yes | |
$organizationId |
ID of the organization | Yes | ||
$salesOrderId |
ID of the sales order to delete | Yes |
License
The MIT License (MIT). Please see MIT license File for more information.