Skip to content


Tyler King edited this page Apr 22, 2019 · 14 revisions

Please refer to the Changelog doc as well..

6.x.x => 7.0.0

Two new config values are required in config/shopify-app.php:

    | Shopify API Version
    | This option is for the app's API version string.
    | Use "YYYY-MM" or "unstable". Refer to Shopify's documentation
    | on API versioning for the current stable version.

    'api_version' => env('SHOPIFY_API_VERSION', null),

    | Shopify API Grant Mode
    | This option is for the grant mode when authenticating.
    | Default is "offline", "per-user" is available as well.
    | Note: Install will always be in offline mode.

    'api_grant_mode' => env('SHOPIFY_API_GRANT_MODE', 'offline'),

5.x.x, 5.3.x => 6

Follow optional guide for 5.2.x => 5.3.0 if applicable.

This release introduces a new major version bump to the underlying Shopify API library, Basic-Shopify-API. This package was bumped as well in case some of you are are handling errors with API calls through try/catch. The difference is, the underlying package now internally catches 4XX-500 errors for you and provides the error and messaging in the response object, so your catch block will not fire for these issues.

5.2.x => 5.3.0

For issue #177, this adds the ability to specify a queue name each job should go to (webhooks, scripttags, and after_authenticate).

By default, you do not need to do anything to upgrade, Laravel will fallback to the default queue if no name is given.

However, if you wish to specify, you can re-publish the config for this package or manually modify your config/shopify-app.php to add the following:

    'job_queues' => [
        'webhooks'           => env('WEBHOOKS_JOB_QUEUE', null),
        'scripttags'         => env('SCRIPTTAGS_JOB_QUEUE', null),
        'after_authenticate' => env('AFTER_AUTHENTICATE_JOB_QUEUE', null),

4.1.x => 5.0.0

If you have not extended the package in anyway, you should be fine. Else, please see Changelog, upgrade your code and test to ensure it works. This is a major version release.

v4.0.x => v4.1.0

Three new entries for config/shopify-app.php, you can use artisan to vendor:publish the config or add the new entries:

'api_rate_limiting_enabled' => env('SHOPIFY_API_RATE_LIMITING_ENABLED', false),
'api_rate_limit_cycle' => env('SHOPIFY_API_RATE_LIMIT_CYCLE', null),
'api_rate_limit_cycle_buffer' => env('SHOPIFY_API_RATE_LIMIT_CYCLE_BUFFER', null),

v3.1.x => v4.0.0

Breaking changes. Can not guarentee full workability.

  1. Run the migrations, which will:
    • Add plan_id to shops table
    • Add freemium to shops table
    • Add plan_id to charges table
    • Create a plans table

php artisan vendor:publish --tag=migrations and php artisan migrate

  1. Remove all billing environment values from your env file or config/shopify-app.php execept for:

    • billing_enabled
    • billing_redirect
  2. Add to config/shopify-app.php:

    • billing_freemium_enabled with true or false
  3. Create a plan or migrate the existing one in your old config, to the database, with on_install set to true, see [wiki entry|Creating-a-Billable-App#creating-plans] for exact information

  4. Set all shops' plan_id in the database to the ID of the plan created in step 4

v3.1.x => v3.2.0

  1. Run the migrations to change the shops table and add namespace column:

php artisan vendor:publish --tag=migrations and php artisan migrate

v3.x.x => v3.1.0

  1. Remove the facade entry for this package in config/app.php under the facades array (now handled by auto-discovery).

  2. Remove the provider entry for this package in config/app.php under the providers array (now handled by auto-discovery).

  3. Run the migrations to change the charges table's charge_id column from int to bigint via:

php artisan vendor:publish --tag=migrations and php artisan migrate

v2.x.x => v3.0.0

Breaking changes.

  1. Run migrations which will remove charge_id from the Shop table and create a charges table:

php artisan vendor:publish --tag=migrations and php artisan migrate

  1. Review the installation guide of the wiki (theres a new section on enabling an optional app/uninstalled webhook job).

That's it. There's currently no script to convert the old charge_id into the charges table for the shops. You can view our wiki on creating a charge under the billing section and manually write a migration script in the meantime.

v1.x.x => v2.0.0

No internal code upgrades are required.

Simply upgrade the version in your composer file.

To enable billing feature on existing installs of this package:

Open app/Http/Kernel.php find routeMiddleware array. Add a new line with:

'billable' => \OhMyBrew\ShopifyApp\Middleware\Billable::class,

Just under, auth.proxy, auth.webhook, etc.

You can’t perform that action at this time.