- Is Shopwire compatible with Laravel 10+ or only Laravel 9?
- Shopwire is officially tested for Laravel 9. While it may work with Laravel 10+, no guarantees exist due to Livewire 3.x dependencies and unmaintained status. Test thoroughly in a staging environment before upgrading.
- How do I integrate Shopwire with Stripe or PayPal instead of Mollie?
- Shopwire defaults to Mollie but lacks built-in payment gateway support. You’ll need to extend the `PaymentService` class or override the webhook logic. Pair it with packages like `laravel-cashier` for Stripe/PayPal integration.
- What happens if my Product model already extends another trait or uses Spatie MediaLibrary?
- Shopwire requires the `ShopwireProduct` trait, which may conflict with existing traits or Spatie’s `HasMedia`. Either refactor your model to avoid conflicts or configure a custom model in `config/shopwire.php` to bypass the trait.
- Can I use Shopwire for a high-traffic site, or is it only for small projects?
- Shopwire lacks scalability documentation, benchmarks, or Redis support for cart persistence. For high traffic, consider alternatives like `bagisto` or implement custom caching (e.g., Redis for cart data) at your own risk.
- How do I handle inventory management with Shopwire?
- Shopwire assumes external inventory checks (e.g., database-level stock validation). You’ll need to manually integrate stock logic into your `Product` model or checkout flow, possibly using observers or model events.
- What if I need multi-currency or shipping address validation?
- Shopwire doesn’t support multi-currency or advanced shipping logic out of the box. Extend the `Order` model or checkout validation rules, or integrate with third-party services like `laravel-shipping` for complex needs.
- Is there a way to test Shopwire without a live payment gateway?
- Yes, use Mollie’s test mode (default in Shopwire) or mock the `PaymentService` in unit tests. Override the service provider to inject a fake payment handler for isolated testing of cart/checkout flows.
- How do I customize the Livewire cart drawer or checkout steps?
- Shopwire provides Livewire components (`CartDrawer`, `CheckoutSteps`) that can be extended or overridden. Copy the views from `resources/views/vendor/shopwire` to your project and modify them as needed.
- What are the alternatives to Shopwire for Laravel Livewire carts?
- Consider `laravel-shoppingcart` (more mature, no Livewire), `bagisto` (full e-commerce suite), or `webkul/shop` for enterprise needs. For Livewire-specific solutions, check `torro/laravel-shopping-cart` or build a custom package.
- How do I migrate from Shopwire to another package if needed?
- Export cart/order data via Shopwire’s Eloquent models (`CartItem`, `Order`) and import it into your new system. Document the schema differences (e.g., `shopwire_orders` vs. alternative tables) to streamline the transition.