Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Zoho Laravel Package

asciisd/zoho

A Laravel package for integrating Zoho Books into PHP applications, offering a fluent API wrapper, OAuth token handling, configuration, and convenient access to Zoho Books resources from your Laravel app.

View on GitHub
Deep Wiki
Context7

Zoho package for Laravel

Frequently asked questions about Zoho
How do I install asciisd/zoho in a Laravel application?
Install it with composer require asciisd/zoho, then publish the package's config file and migration using php artisan vendor:publish. Run php artisan migrate to create the token table, and add your Zoho client ID, client secret, and redirect URI to your .env file. You must first register an application in the Zoho API console to obtain those credentials.
Which Laravel and PHP versions does asciisd/zoho support?
The package follows the conventional Laravel package anatomy, but its last release was March 2022, placing it in the Laravel 8 and 9 era on PHP 8.0 or 8.1. Installing it on Laravel 10 or 11 with PHP 8.2 or 8.3 will likely require a compatibility patch or --ignore-platform-reqs, which is a maintenance trap. Check composer.json constraints before committing to it on a current framework version.
How does asciisd/zoho store and refresh Zoho OAuth tokens?
Tokens are persisted through a bundled token model and migration, which stores access and refresh tokens in your database. That design implies per-user OAuth, which is correct for user-context actions but operationally heavier than a single service token. The package handles OAuth negotiation and refresh, but it documents no locking around concurrent refreshes.
Is asciisd/zoho for Zoho Books or Zoho CRM?
The README describes a Laravel integration for Zoho Books, exposing a fluent client over Zoho's REST API together with a Zoho facade. It is a thin synchronous transport layer that handles OAuth, token persistence, and request/response translation rather than a sync engine. Field mapping, queuing, webhook ingestion, and conflict resolution all sit above the package in your own code.
Does asciisd/zoho support regional Zoho API domains like .eu, .in, .com.au, and .jp?
Zoho runs separate data centers with different API hosts, and routing a non-US tenant to the wrong domain usually surfaces as opaque 401 errors. Before relying on it, verify whether the publishable config exposes an API domain or base URL setting you can override. If it does not, you will need to patch the client or extend the config yourself.
How do I test Laravel code that uses the Zoho facade?
Because the package binds through the container and exposes a facade, you can swap the resolved client for a mock in your test suite. If the underlying calls are routed through Laravel's HTTP client, Http::fake() will intercept them without hitting Zoho. Otherwise, wrap the facade behind your own interface so tests and local development never make live API calls.
Is asciisd/zoho actively maintained and safe for production?
The package has roughly 41 stars, effectively one maintainer, and its most recent release dates to March 2022. That means no guaranteed compatibility cadence and no documented security-response process. Treat it as a starting point you may need to fork and patch rather than a vendor-supported dependency in a long-lived application.
How does asciisd/zoho handle token refresh when several queue workers run concurrently?
Parallel refreshes of the same token are a classic race condition that can invalidate the refresh token, and the package documents no locking mechanism. Guard refreshes with a cache lock or route all refreshes through a single dedicated job. Persist the new token before other workers read it so they pick up the refreshed value instead of triggering their own refresh.
Does asciisd/zoho handle API rate limits, retries, and bulk endpoints?
There is no evidence in the package of rate-limit awareness, retry or backoff logic, or idempotency handling, all of which Zoho's credit-based throttling makes mandatory at real volume. Plan to implement backoff, retries, and idempotency keys above the package. Also confirm whether COQL search, bulk endpoints, and attachment handling are covered before designing your integration around them.
What are the alternatives to asciisd/zoho for integrating Zoho with Laravel?
Alternatives include wrapping Zoho's official PHP SDK in your own Laravel service, writing a small client on top of Laravel's HTTP client, or forking asciisd/zoho to add current framework support and data-center configuration. For a Laravel 11 or PHP 8.3 codebase, a thin in-house client is often less total work than patching a stale package. The facade-based design means you can swap the transport later without rewriting call sites.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections