How to integrate Easypromos with any user registration system

Miquel Bonfill
Miquel Bonfill
If you have a loyalty program, a private area for users, or an App, it doesn’t make much sense to ask users for their information to participate in a promotion. Easypromos offers two solutions to identify users without them having to register again: API Autologin and Oauth2. Keep on reading to get an overall picture of the integration possibilities of your user registration system with Easypromos.

Most companies and brands have applications or private areas with their own user registration system. It’s increasingly normal for organizations to have CIAM (Customer Identity and Access Management) technologies that provide a secure platform to store, manage, and control digital identities. CIAM allows users to log into a company’s website and applications with a single username and password and provides centralized management of users’ profiles.

SSO (Single Sign On) is an associated characteristic of CIAM that allows users to log into different systems with a single username and password. This means that once users have logged into one site, they will be able to access other sites without having to introduce their login.

Once users are registered in your system, there is no value in asking them to register to be able to participate in a promotion. This is why Easypromos offers two options to integrate with any user registration system, whether it is a CIAM with SSO, or a custom made user registration system.

  1. API Autologin: Applicable when the entire participation in the campaign is limited within the company’s application. By “company’s application” we refer to loyalty program systems, member’s clubs, mobile phone apps, training apps, or even a company’s intranet.
  2. Oauth2: Applicable when the participation takes place outside the native application but users have to be identified through the company’s user registration system. For instance, a campaign is shared on social media (e.g. Instagram Stories) and when users click on it the campaign’s microsite opens. When users participate, they are redirected to the company’s login and user registration screen.

 

An introduction to user participation flow

Participation flow is made up by two main processes:

  1. User identification and registration process
  2. Participation process

The user identification and registration process is the flow that users go through when registering for a promotion. An example of this process could consist of a registration form where users introduce their personal information and accept the terms and conditions and privacy policy of the promotion.

The participation process consists of the action or actions that users have to perform to complete their participation. Some examples of this could be: playing a game, spinning a prize wheel, introducing a code, filling out a survey, or simply clicking on a button.

With Easypromos, the organizer can decide when users go through the identification process: before or after participating.

The following options are available:

  • Registered user mode: Users have to register before participating. E.g. users register first and then spin the wheel.
  • Visitor Mode: Users participate anonymously and if they win a prize they will have to register to claim it.
  • Anonymous Mode: Users participate without registration.

The following image details the participation flow for the registered used mode:

How to integrate Easypromos with any user registration system

The user identification and registration process allows users to log in and access the participation process. To access the participation stage, users must first identify themselves (login process) through the process previously set for the campaign.

  • Users that had previously registered will have their session restored and will be redirected to the participation process (game, prize wheel, quiz, etc.).
  • If users are registering for the first time, they will be redirected to the campaign’s registration system. They will then have to agree to the terms and conditions. The registration system can be adapted to request additional information from users.

Esypromos will provide the following identification systems by default (login process):

  • Email Login (email validation optional)
  • Social Login: Facebook, Google, TikTok, Twitch, Linkedin
  • Login with a code
  • Telephone login (with SMS validation)

If a company has its own user registration system, Easypromos’ login processes are not necessary. Ideally, users that are already registered with the company shouldn’t have to register again through Easypromos to participate in a promotion. In these cases, one of the following integration options should be considered:

  1. API Autologin Integration
  2. Oauth2 protocol integration

 

API Autologin Integration

It’s the recommended integration to incorporate Easypromos into native apps or loyalty programs. In this integration, users use the ID credentials for the native app to access and participate in the promotion. Access to the promotion can be granted through a banner within the app or a menu. The promotion then opens in a webview within the app where the game loads. The user experience is completely transparent and does not feel like the user is interacting with another system.

At a technical level, the integration works like this: when users click on the banner to play, the native app will call the Easypromos Autologin API and will send the users’ information authenticated by a Bearer Token via HTTP POST. The minimum required user information is the user’s Unique Identifier (UID). The user identification and registration process will be carried out through the Autologin API call within the game and in reply, it will send an access token for the participating user. The native app will then receive this token and will load the participation screen in the webview using the user’s access token.

This is the general working overview of the Autologin API integration in a mobile application:

How to integrate Easypromos with any user registration system

Additionally to the UID, the participants’s username (to have a user reference in the Easypromos campaign manager), email address (in case the organizer wants the game to send emails to participants, e.g. to thank them for their participation), and user segmentation can also be sent. If the app has user segments, these can be sent through the API. The game or promotion can carry out actions depending on the user segmentation. E.g. a game that is only available to a specific user segment, giving additional participation chances in a giveaway to specific user segments, or giving away prizes in a Spin the Wheel or Scratch & Win promotions depending on the user segmentation.

The campaign control panel and the CSV/Excel reports, as well as the users’ information sent through the API and webhooks will include at least the users’ UID and the additional information provided to the API.

The technical specifications of the Autologin API follow the OpenAPI 3.1 standards for easy integration for developers.

Reference: documents and technical specifications for the Autologin API

 

Oauth2 Integration

An Easypromos campaign can also be integrated with the Oauth2 protocol. This is the necessary option if the promotional campaign will take place outside the application with the user registration system. For example, when a campaign is shared on social media.

Let’s take the case of a campaign that is shared on Instagram Stories. Users click on it and are redirected to the campaign’s microsite, which can have a URL customized with the client’s domain.

When users get to the microsite and try to participate, they will be redirected to the client’s authentication system, where users will have to identify themselves. If the authentication is done correctly, users will again be redirected to the game’s microsite for them to play and participate.

At a technical level, the client must have a system that implements the authentication and authorization system through the Oauth2 protocol. The Easypromos identification and registration system is prepared to work as an Oauth2 client.

When users try to play, the first step that Easypromos will take is to send a request to the client’s authorization system. The client’s authorization system will then show the login screen to the user. If the user is correctly identified, the client will send ID confirmation to the Easypromos’ URL with the ID code. With this ID code, Easypromos will then request an Access Token to the client’s authorization service. Easypromos will identify the request through a ClientID and ClientSecret previously provided to Easypromos by the client. Once the Token is received, a call to the client’s API is placed to retrieve the necessary user information and therefore register them for the promotion.

Easypromos supports user segmentation so if the client has different kinds of registered users, a participants’ segmentation can be carried out to customize the user experience depending on the user segmentation. This functionality is particularly useful in loyalty programs that include different client levels. E.g. gold, silver, or Bronze.

In conclusion, if your company has a user registration system, you can use Easypromos to incorporate engagement actions without having to develop them from scratch and with a fully integrated user experience. Feel free to contact our support and sales team, we will be happy to help you figure out the best integration strategy, show you a working DEMO, and share best practices to successfully integrate Easypromos with your platform.