A Jumpseller App is an application that interacts with one or more online stores that use Jumpseller. The App can be loaded through an iframe inside the Jumpseller Admin so that users can have easy access to it inside their online store administration.

A Jumpseller App can be from a simple application that just injects javascript code in the online store, like a chat widget or newsletter popup, to a full fledge application that for example synchronizes online orders and inventory with an external software.

You are free for choosing whatever language or web framework you want to develop your Jumpseller App, as well as where you want to host it. Jumpseller Apps use the Jumpseller OAuth2 endpoint for authentication and the Jumpseller API to interact with the online store.

Example apps that can be developed:

  • Facebook Pixel javascript code used for tracking your site's events loaded in the online store HTML

  • Getting products data and exporting them as a feed for Google Shopping


  1. Register your App
  2. Understanding scopes
  3. Authentication
    1. Basic Concepts
    2. The OAuth 2 Credentials
  4. Mandatory Routes
    1. The Root route
    2. The Callback route
  5. Tutorial: creating a simple Jumpseller app
    1. Getting started
    2. Testing your Jumpseller App
    3. Tunneling your Web Application
    4. Updating again your App URL
    5. Next steps

Register your App

Before starting, you need to register the App that you are going to develop on the Administration area for users to be able to authenticate on the App and for the App to be able to access the API.

On the Administration section of your online store you are able to register a new App on the Apps section. You can find the section on the left side main menu.

In the Apps section you can see the following three tabs:

  • Installed - allows you to see the list of Apps already installed on your store;

  • Gallery - shows the list of all available Apps for new installations;

  • Developers - you can manage all of your own Apps

Apps Action Bar

If you go to the Developers section, you will see on the right side of these tabs bar the button Add Application. Click on it and you will see the following form:

New Application Form

Let's understand better each field:

  • Author - name of the company or the person that is developing the app.

  • Name - name of your new App. Example: My New App.

  • Callback URL - absolute callback URL of your web App. Read section The Root route for more information.

  • Application URL - absolute (root) URL of your web App. Read section The Callback route for more information.

  • Image URL - absolute URL for your app's cover image. Supported formats: JPEG or PNG. Dimensions: 600x150 pixels.

  • Description - description of your App. Text Limit: 145 characters.

Fill up the form with your app's informations and click on the SAVE button. You will be redirected to the Developers tab where you can manage all your apps.

As you can note, all your apps have a TESTING tag. It means they are available JUST ON YOUR STORE, i.e., no other Merchant can install it yet.

Now your App is ready for installation. Go to your Developers tab and click the I WANT TO TEST button within your App's card to install your new App in your store.

App Card App Card Install Button

After installing and testing your app, when you want to make it public, i.e., available for all Merchants, please contact us with the URL of the App, the Name of the Author (company / person responsible for supporting the App) and the Email of the Author.

Understanding Scopes

Scopes are required settings to specify which part of the Merchant's store data your App would like to access. If your App wants to request products data, for instance, you must have the read_products scope, otherwise you are not going to be able to get these data by the Jumpseller API. The scopes are also important as part of the permission process by the Merchant who's installing your App, i.e., if the user sees that your App requests the product reading scope and he does not want to share it with no one, he can deny the authorization for your App and give up installing and using it. So, request just the necessary scopes for your App.

Check how to Request Authorization setting the scopes.

Available Scopes Description
read_orders, write_ordersAccess to Orders
read_products, write_productsAccess to Products
read_customers, write_customersAccess to Customers
read_promotions, write_promotionsAccess to Promotions
read_apps, write_appsAccess to Apps
read_settings, write_settingsAccess to Settings
read_categories, write_categoriesAccess to Categories
read_payment_methods, write_payment_methodsAccess to Payment Methods
read_checkout_custom_fields, write_checkout_custom_fieldsAccess to Checkout Custom Fields
read_countries, write_countriesAccess to Countries
read_custom_fields, write_custom_fieldsAccess to Custom Fields
read_customer_categories, write_customer_categoriesAccess to Customer Categories
read_hooks, write_hooksAccess to Hooks
read_store, write_storeAccess to Store


The first step was to register your new App in the store administration area but for now is just an eggshell because the web App does not exist yet. Keep reading this article to understand the basic concepts that will allow you to build your first Jumpseller App.

Basic Concepts

The first important concept to understand is about OAuth 2. When you registered your new App in Jumpseller Admin on the previous part for this article, in fact you were creating a new OAuth 2 application. That means your App needs to run throughout the Authorization Flow of OAuth 2.

Go to the OAuth 2 page to better understand how it works.

The OAuth 2 Credentials

In your Jumpseller Admin, go to the Apps section and click on the Developers tab:

Developers tab

There you can see listed the new App you've created. Click on the name or description of your App and you will be redirected to the edit page.

On the edit page you can see all informations you have inserted when you registered your App as well as two new fields: CLIENT ID and CLIENT SECRET.

Edit Form

Copy and save your App's id and secret anywhere. You are going to need it later for the OAuth 2 flow.

DO NOT share your app's client id and client secret with anyone.

Mandatory Routes

When developing your Jumpseller App, you are free to decide what kind of application you are going to build and which routes it will have.

But to work with Jumpseller is very important to have two of them: The root route and the callback route.

Let's get to know them better!

The Root route

The Route route is the entrance point of the App, is the controller that will render the page that will open, within an iframe, when the user opens the App in the Jumpseller store Admin Panel

Every Jumpseller App requires some input from the Merchant, i.e., before the user is being able to use it. The page rendered by this route will require the inputs needed for the initial App setup.

Our Olark App is a good example of it. In order to have the Olark's online chat in your store, you should signup in theirs website, copy and past your Olark ID on the App form and save it.

Olark App

So your root route is responsible for presenting this kind of required settings input page for the Merchant.

Make sure your App uses an SSL certificate. Non-HTTPs URLs cannot be loaded.

The Callback route

As you already know, the Jumpseller Apps use the Authorization Flow of OAuth 2. A redirect from the Jumpseller OAuth 2 service to your callback route is part of this flow.

The callback route is where you are going to be able to get your access token from the OAuth 2 service and use it to read and write to the online store API.

Visit the OAuth 2 page to better understand about the callback route and visit the API page for learning how to use the OAuth 2's access token when you want to access the online store API.

Tutorial: creating a simple Jumpseller app

As mentioned before, you are free to choose which programming languages or web framework you want to use to build your App.

For now, let's just create a really simple basic example to help you reinforce what was learned so far.

If you use Ruby, this Sinatra's App Skeleton is available for you to use.

Getting started

In your terminal, create a new directory wherever you want and cd it:

> mkdir my-new-app
> cd my-new-app

After, create a simple index.html file with a Hello, World! text:

> echo 'Hello, World!' > index.html

Now you can run a really simple web application with the Python SimpleHTTPServer class:

> python -m SimpleHTTPServer 8000

* You should have python installed on your computer

This example uses the port 8000 but you can change it if you want.

Open your favorite browser and visit the address http://localhost:8000. This simple web server is already running and you can see the Hello, World! message on your browser:

Web Server Running Hello, World!

Testing your Jumpseller App

You have your web server up and running in your local machine. Now it is time for testing it!

As you remember, when you registered your App in the Jumpseller Admin, you had to inform a callback and an application URL.

Follow the same steps for editing your App as you did in OAuth 2 Credentials and change your application URL to http://localhost:8000:

Application URL

Save it, go to the Installed tab, find your App and click on it.

You'll realize that you still can't see anything. That is because Jumpseller Admin can't access the web server in your local machine, at least not yet, while you use the localhost.

Let's fix that!

Tunneling your Web Application

A simple solution for making your local web application publicly available is tunneling it. There are lots of solutions for tunneling, but we will use ngrok in this tutorial.

First, let's install it. Open a new terminal tab or window and:

> brew install ngrok

Brew works only for Mac but there are lots of options to install ngrok according your OS: downloading it, brew, npm, apt-get, etc.

Once you have it installed, let's execute it:

> ngrok http 8000


As you can see, ngrok creates for you a public URL https://4fb48456.ngrok.io and manages the tunneling for your local web server, i.e., every request this public URL receives, ngrok handles the request to make it reach your local web server.

Access the https://4fb48456.ngrok.io address on your browser and you will see the same as in http://localhost:8000, the Hello, World! message.

Updating again your App URL

Now you can edit again your App in Jumpseller Admin and change the Application URL field to https://4fb48456.ngrok.io.

Save it and try to access your App again clicking on it within the Installed tab on the Apps section. The Hello, World! message is visible, i.e., the Jumpseller App was able to load your local web application inside its iframe.

Next steps

Congratulations! Your Jumpseller App is installed and loading your web application. Once your have it done, you can deploy it for any production hosting and change the Application URL (and Callback URL) to your production URL.

You can now improve your Jumpseller App with the Jumpseller API but for this you need to understand the authorization flow of OAuth 2 and how to get your access token for API requests.