Weave Code
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
Laravel Chart Of Accounts

Laravel Chart Of Accounts Laravel Package

alimarchal/laravel-chart-of-accounts

Production-ready chart of accounts and double-entry accounting for Laravel. One-command install, works with Jetstream (Blade/Livewire) and Breeze (Inertia/React). Includes versioned REST API, RBAC, and core financial reports.

View on GitHub
Deep Wiki
Context7

At a glance

Frequently asked questions about Laravel Chart Of Accounts
How do I install this package in a Laravel 11 project with Jetstream and Livewire?
Run `composer require alimarchal/laravel-chart-of-accounts`, then set `ACCOUNTING_UI_DRIVER=blade` in your `.env` file before running migrations. The package includes Livewire components out-of-the-box for Jetstream, so no additional frontend setup is needed beyond the standard Laravel installation.
Does this package support multi-currency accounting with automatic exchange rate handling?
Yes, the package includes built-in multi-currency support using the Money facade. Exchange rates can be configured manually or integrated with third-party services like `laravel-money`. All journal entries and reports respect currency conversions, and the system enforces balance consistency across currencies.
Can I use this with Inertia.js and React for a modern frontend?
Absolutely. The package supports Inertia/React natively. Set `ACCOUNTING_UI_DRIVER=inertia` in your `.env` file, and it will generate the necessary API endpoints and React components. The included REST API is versioned and works seamlessly with Inertia’s data fetching.
What Laravel versions are officially supported, and is there backward compatibility?
The package supports Laravel 10, 11, 12, and 13. It requires PHP 8.2+. While the core functionality is designed to be backward-compatible, test thoroughly in your environment, especially if migrating from Laravel 9 or earlier, as some Eloquent and service container behaviors may differ.
How does bank reconciliation work, and can it handle high-frequency transactions?
Bank reconciliation is handled via the `ReconcileBankStatement` action, which matches transactions between your accounting records and bank statements. For high-frequency transactions, the package uses database transactions and optimistic locking to prevent race conditions. However, for real-time bank feeds, consider implementing a queue worker to process reconciliations asynchronously.
Are there built-in financial reports, or do I need to create them manually?
The package includes 10+ pre-built financial reports, such as trial balances, income statements, and balance sheets. These reports are generated via Eloquent queries and can be customized or extended. You can also build custom reports using the package’s query builder methods for `JournalEntry` and `Account`.
How do I customize the account types or add domain-specific rules?
The core `Account` and `JournalEntry` models are extensible. You can add custom attributes, validation rules, or business logic via model observers, accessors, or service providers. The package also supports custom actions, so you can create domain-specific operations (e.g., `ApplyTaxRule`, `ValidateCustomAccountType`) without modifying the core code.
Does this package include audit trails or support for regulatory compliance?
Yes, the package enforces double-entry accounting at the database level, ensuring no imbalances. For audit trails, you can enable Laravel’s built-in `audit_log` package or extend the `JournalEntry` model to log changes. The package also supports soft deletes and events (e.g., `JournalEntryCreated`) for triggering downstream processes like audit logging.
What are the performance considerations for large datasets or high transaction volumes?
The package is optimized for performance with indexed migrations and batch operations. For large datasets, ensure your `journal_entries` table has proper indexes on `date`, `account_id`, and `currency`. For high-frequency transactions, use database transactions and consider queueing reconciliation tasks. Test with your expected load to validate response times for reports.
Are there alternatives to this package, and how does it compare?
Alternatives include `spatie/laravel-accounting` (simpler, less feature-rich) and `accounting/laravel-accounting` (more enterprise-focused but heavier). This package stands out for its frontend agnosticism (Inertia/React/Blade), built-in multi-currency support, and comprehensive reporting. If you need GAAP/IFRS compliance or advanced tax features, you may need to extend it or pair it with a specialized library.
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.
codraw/framework-extra-bundle
codraw/messenger
codraw/security
codraw/mailer
codraw/contracts
codraw/profiling
codraw/dependency-injection
codraw/tester
codraw/core
nexmo/api-specification
capell-app/block-library
axium/identity
cetria/laravel-dummy-models
cetria/reflection-helper
agropredict/sso-auth-bundle
evolvestudio/spam-protection
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony