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
Laravel Shopify

Laravel Shopify Laravel Package

kyon147/laravel-shopify

A maintained full-featured Laravel package for Shopify app development, with OAuth, webhooks, billing, and support for expiring offline access tokens. Works with Laravel 8+ and installs via Composer.

View on GitHub
Deep Wiki
Context7

Kyon147 Laravel Shopify is a maintained, full-featured fork of the deprecated original Laravel Shopify App, built to simplify Shopify app development in Laravel 8 and up—similar to shopify_app for Rails. It handles installation, authentication, webhooks, and billing so you can focus on your app's logic.

  • OAuth & session tokens with support for expiring offline access tokens (required for new public apps from April 2026)
  • Webhook registration and processing out of the box
  • Billing support via Shopify's charge APIs
  • Publishable config, migrations, and a familiar Artisan-driven setup
  • Fully tested, with an extensive wiki for installation and usage
Frequently asked questions about Laravel Shopify
What Laravel versions does kyon147/laravel-shopify support?
This package supports Laravel 8 and above. It is not compatible with Laravel 7 or earlier. Always check the package’s changelog or GitHub releases for version-specific updates.
How do I install and set up kyon147/laravel-shopify?
Run `composer require kyon147/laravel-shopify`, then publish the config file with `php artisan vendor:publish --tag=shopify-config`. Follow the wiki for detailed installation steps, including migrations and environment setup.
Does this package handle Shopify’s expiring offline access tokens?
Yes, the package supports expiring offline tokens by default. Enable them in `.env` with `SHOPIFY_EXPIRING_OFFLINE_TOKENS=true` and ensure your `shops` table includes the required columns via migrations.
How do I refresh expiring tokens automatically?
Use the `shopify:refresh-offline-tokens` Artisan command, optionally targeting a queue (e.g., `--queue=shopify`). Schedule it via cron or Laravel’s task scheduler to avoid token expiry during critical operations.
Will this package work with my custom OAuth routes or views?
The package includes security fixes like escaped redirect URLs, which may break custom OAuth views not using its default templates. Audit your routes and ensure they comply with the package’s security updates.
Do I need a queue system for token refreshes?
Yes, batch token refreshes require a queue worker (e.g., Redis, database). If you don’t have queue infrastructure, consider running the command manually or disabling batch refreshes in the config.
How do I monitor token refresh failures?
Use Laravel’s failed job monitoring (e.g., Horizon) to track refresh failures. Set up alerts for failed jobs or log errors manually if using a custom queue setup.
Is this package compatible with Shopify’s Billing API?
Yes, the package includes fixes for Billing API routes (e.g., PR #498). Ensure your custom billing views or routes align with the package’s security updates, such as escaped redirect URLs.
What are the risks of using queue-targeted token refreshes?
Misconfigured queue workers may cause silent failures. Always test queue targeting (e.g., `--queue=shopify`) and monitor worker performance, especially for high-volume apps with 100+ shops.
Are there alternatives to kyon147/laravel-shopify for Laravel-Shopify integration?
Alternatives include the official Shopify API PHP library or community packages like `laravel-shopify-app`. However, this package offers Laravel-specific features like Artisan commands, queue support, and proactive token management tailored for app development.
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