tomatophp/filament-ecommerce
Build a full ecommerce store inside FilamentPHP with Tomato CMS Builder. Manage products with variants, images, and multilingual content, plus orders, shipping, coupons, gift cards, referrals, and multi-company branches. Includes order logs, status actions, receipts, exports, and imports.
Order policy view ability. Teams must register a policy for TomatoPHP\FilamentEcommerce\Models\Order (Filament Shield can generate one) or order printing will stop working. This is a breaking operational change for existing installs.filament-ecommerce.print config (enabled, middleware, expires) adds control over print access, but teams should review middleware and expiry settings as part of upgrade."This package lets us launch a custom eCommerce store in weeks—not months—by leveraging our existing Filament admin panel. It’s like ‘Shopify for developers’: we keep full control over the codebase while avoiding licensing fees. For [X use case], it cuts development time by 60% and aligns with our PHP/Laravel stack. The MIT license means no vendor lock-in, and the Filament UI ensures consistency with our other tools. The latest v1.1.3 release adds security hardening for order access—signed print URLs and policy-based viewing—which reduces the risk of exposing order data as we scale. We can start small (MVP) and scale features as needed."
Key Outcomes:
"Filament Ecommerce provides a pre-built plugin for FilamentPHP that handles core eCommerce functionality: product catalogs, carts, orders, and customer management—all with a clean admin interface. It’s built on Laravel’s ecosystem (uses Spatie Media Library, Laravel Settings), so it integrates smoothly with our stack. The installation is straightforward (10 commands), and the codebase is modular enough to extend for custom logic (e.g., subscriptions, promotions).
v1.1.3 is a security-focused release for the Filament 3 line and is recommended for upgrade. Key changes: order print links are now temporary signed URLs and require the Order policy view ability—we must register a policy for TomatoPHP\FilamentEcommerce\Models\Order (Filament Shield can generate one) to keep printing working. A new filament-ecommerce.print config controls enabled, middleware, and expires. Cart amounts are now always computed from the product, which improves pricing integrity. Treat the policy registration as a required upgrade step, not an optional hardening task.
Tradeoffs: It’s not a full-fledged platform (e.g., no built-in payment gateways or shipping APIs), but we can plug those in via Laravel Cashier or custom services. The package is young (last release May 2025) but actively maintained—v1.1.3 shows security responsiveness—making it ideal for a greenfield project or a sidecar to our existing Filament admin."
Why Now?
"This package gives us a head start on the admin side of eCommerce (e.g., managing products, orders, customers) with Filament’s polished UI. However, the frontend store experience isn’t included—we’d need to build that separately (e.g., with Livewire or a custom frontend). The admin panels for inventory, orders, and settings are intuitive and customizable, so we can focus design efforts on the customer-facing storefront and unique workflows (e.g., vendor portals). v1.1.3 changes order printing to signed, policy-gated URLs; this is mostly backend behavior, but UX flows that rely on printing should be tested after upgrade to ensure authorized users still have a smooth path."
How can I help you explore Laravel packages today?