Magento Setup

How to set up OneSignal Web Push notifications on Magento sites

🚧

Non-HTTPS domains are no longer supported

Sites hosted on HTTP are no longer supported. As a result of this change, we are pausing support for this platform indefinitely. Sites that continue to use the os.tc domain will no longer be able to prompt for push notifications; however, existing subscriptions will continue to receive notifications.

This guide will walk you through how to set up web push on Magento. If you do not use Magento, or wish to write custom code, please go to Web Push Quickstart.

At any time to get back to setup, go to App Settings and click Configure for the Google Chrome platform (instructions for Safari are here).


Step 1. Choose Integration

OneSignal supports sending web push notifications from a variety of different web technologies. Select Magento to continue:

Step 2. Site Setup

Once you've selected Magento as your integration, you must fill out information about your site.

Enter Site URL

Most users just enter their base site URL for this field (e.g. yoursite.com).

If your site is accessible from both www & non-www links (e.g. example.com AND www.example.com), please only enter the URL that you wish to send push notifications from. We recommend redirect traffic from one to the other (e.g. users that visit example.com are redirected to www.example.com), so that all your traffic only goes to one.

Auto Resubscribe

Recommended: This feature is only for HTTPS sites and if you do not select "My site is not fully HTTPS". This allows users to automatically resubscribe upon returning to the site without being prompted if they clear their browser cache or if you are transferring to OneSignal from another push provider.

Default Notification Icon URL

Enter a link to an icon file that is at least 80x80 pixels. Recommended size is 192x192. The file must be .png, .jpg, or .gif.

Choose a Label

If Magento hosts your site

Magento-hosted implementations must use a label to send push notifications. Select My site is not fully HTTPS and choose a unique label (e.g. mylabel), which will be displayed as mylabel.os.tc.

If you self-host Magento

If your site uses Magento technology but is hosted on a hosting provider that is not Magento, you will need to determine if your site fully supports HTTPS.

Web Push works best with sites that fully support HTTPS, and we recommend using HTTPS for Web Push when possible. To determine if your site fully supports HTTPS, look for the following:

  • Your site URL must begin with https://, and display a green lock icon on the browser's address bar
  • Your site must redirect all http:// requests to https:// requests. In other words, users accessing the site via HTTP will be redirected to the HTTPS version.

If your site does not fully support HTTPS, you should select 'My site is not fully HTTPS':

Once you've selected this, you will need to choose a unique label to be displayed in your notifications. For example, the below image shows notifications are coming from mylabel.os.tc:

Warning: You can only change your label if you have less than 100 web users. Once you have 100+ web users, this setting is disabled.

FAQ

How does OneSignal work differently with HTTP sites?

What if my site is in a subfolder?

Why does my site require a label?

Why can't I change my label?

Step 3. Permission Prompt Setup

To send push notifications to users, you first must ask them for permission using a Prompt. You must have at least one Prompt on your site for web push to work. Click Add a Prompt to open the permission prompt selector.

Permission Prompt Editor

In the Permission Prompt Editor, you can select which prompts you wish to use, and style them as you like. Once you have edited the prompt to your liking, click Save.

Subscription Bell - a small icon at the corner of your page that users can interact with to subscribe

Slide Prompt - a small modal that comes from the center of the page and asks if users are interested in signing up.

HTTP Pop-Up Prompt (HTTP-only) - a pop-up window that appears after other prompts that is required for HTTP sites.

Custom Prompts - create your own links or buttons as prompts.

Step 4. Welcome Notification

Optional: Welcome notifications an optional way to thank users after subscribing to your site. Users will see a welcome notification as soon as they subscribe. You can edit or disable them here.

Step 5. Advanced Options

Optional: Most sites will not have to edit anything in Advanced options. See Web Push Advanced Options to learn more about each option.

👍

Site Configured

Once you've completed steps 1-5, click 'Save' to save your configuration.

Next, you'll need to add OneSignal to your site by following steps 6 and 7.

Step 6. Upload OneSignal SDK

🚧

Ignore if Magento hosts your site

This option will not be available if you selected 'My Site is Not Fully HTTPS'. Skip to the next step.

If you self-host Magento

Next, you'll need to add the OneSignal SDK files to your site. To do so,

  1. Download the OneSignal SDK files. (You can also download the files here).

  2. Unzip the OneSignal SDK files. It should contain:

  • https://yoursite.com/OneSignalSDKWorker.js
  1. Upload the OneSignal SDK files to the top-level root of your site directory, making them publicly accessible.

FAQ

How do I upload files?

There are three ways you can upload files to your site:

Option A: FTP
  • Use an FTP Server like FileZilla to upload the files to your root directory
  • Here is a great step-by-step guide.
Option B: Control Panel
  • Use your hosting provider's control panel like cPanel to upload files.
Option C: Contact your hosting provider
  • Most hosting providers will be more than happy to assist you in uploading files to your site.
  • Just send them the zip file above and ask them to unzip it in your site's root directory.

How can I tell if I've uploaded the file correctly?

Once you've uploaded the OneSignal SDK file, the following URLs should be publicly accessible (replace yoursite.com with your site's domain):

  • https://yoursite.com/OneSignalSDKWorker.js

Can I host the OneSignal SDK myself?

Can these files be served from a subfolder of my site?

Step 7. Add Code to Site

If Magento hosts your site, this will be called Step 6.

To enable OneSignal on your Magento site, you will need to copy the code from Web Push Settings.

Next, paste the code into your site's <head>.

FAQ

Troubleshooting: adding code in the right location

👍

You're Done!

Next step: Send your first push notification via the OneSignal Dashboard