Tutorial: Monetize Voting Contests via Points
Sooner or later you might want to earn on voting contests and convert virtual success into funds. There are a few approaches allowing to reach such result. In this tutorial, we will consider monetization via points provided by AlphaUserPoints/AltaUserPoints extension (AUP).
If you want to use another way and offer users to vote or submit entries during a specified period of time, you need to organize pricing plans via membership extension. The following tutorial will help you:
Well, before we start, let’s talk about the technical background.
AlphaUserPoints is a reward system providing a powerful user points, medals and ranking application allowing users to accumulate points for performing certain actions on the website such as posting articles, inviting new users, invite a friend to read an article, etc. and set limits on some actions. Originally, it was developed by Bernard Gilly.
In 2016 AlphaUserPoints' author stopped development of the product. However, the extension got new life:
- AltaUserPoints - a fork of original AlphaUserPoints 2.0.4 maintaining by Nordmograph (represented by Adrien Roussel).
Both products are originally based on the same source code and still have an insignificant difference, but now are developed by independent authors. We will use AUP abbreviation to describe both products. There are two versions of AUP plugin for NorrCompetition which are compatible with both AUP products, so the choice which AUP extension to be used is upon you.
AUP gives us an ability to use points and set limitations on some actions. The point can be assigned for an action performed by the user. We can subtract points for different actions (e.g. vote or entry submission). A user should buy points which they can spend performing different actions. It opens us a great capability to use the points system for monetization. First of all, please examine a list of AUP rules for NorrCompetition to be used. There are a lot of rules, but in this tutorial, we will consider a few ones:
- Action: Vote for entry
- Description: Assign points to the user for a vote
- Points: -1.00
- Action: Submit Entry form
- Description: Assign points to the user for submission of contest entry
- Points: -100.00
- Action: Voter to Contestant
- Description: Assign points to the contestant (entry submitter) for a vote for their entry
- Points: 1.00
We can subtract points for voting and for submitting the entry and add 1 points to the contestant if their entry got a vote.
Users should buy points to perform the action if they want to vote for entry (minimal points and price) or to participate by submitting own entry (maximum points, higher price). In the same time, the contestant can get extra points if their entry gets votes and spend these points without a necessity to buy them.
For instance, you can set a default price for the default number of points to buy. Let it be $25 for 100 points. The price can differ for your country/region and depends on site strategy. If there are dozens of entries, you can reduce the price for a score calling the user to an action.
According to the rules above, the user can submit 1 entry or vote for 100 entries. During each action, the points will be recalculated. When the balance will be 0.00 points, the user have to buy more points. For site administrator, it is profitable to stimulate users to buy points. Users can perform actions, the site administrator will get funds.
Of course, you are welcome to use all range of available rules and think on a more attractive model of monetization, so this is just an example.
Now it is time to install and configure all necessary extensions.
A list of extensions to use:
- AlphaUserPoints or AltaUserPoints
- AUP plugin for NorrCompetition
- Payment integration for AUP
To get AUP working with NorrCompetition you need to enable an option in Component Options. Go to Administrator Panel > NorrCompetition > Options > Contest tab. Then find AUP Integration option in the bottom and set it to Yes. By the way, you can override this option in contest settings (e.g. if you need to set it to No for specific contests).
After installing the AUP component, you should configure it and install new rules which will integrate NorrCompetiton and AUP.
An extensive documentation about this add-on can be found here: AUP plugin for NorrCompetition. You will find a description of all available rules and to-do steps helping to install and configure this product.
The model described in this tutorial is based on points to be converted into funds, so the user must buy points first and we should take care which payment method should be used to accept payments. There are a few ways:
- Use e-commerce extension to sell AUP points
- Use AUP payment component to sell points
You should choose what is the best according to your site structure and ideology. But bear in mind that e-commerce site is an independent solution and if it is always better to minimize using of 3rd party extensions and save your time on keeping these extensions up to date. Using of e-commerce extension should be on the situation, e.g. if you want to accept payments using a local payment system and this payment method is supported by the e-commerce extension.
Here is the list of available add-ons for AltaUserPoints which you can use to accept payments:
As we can see, the AltaUserPoints has 2 components allowing to buy points via PayPal and Cryptocurrencies. If you want to accept payments using any other payment service (like Stripe, 2Checkout and etc.) you should see on the side of e-commerce components that have an awesome number of payment plugins.
As you could see above, there are different payment methods available to use. We will consider the usage of the first one: Buy Points With Paypal. This product is simple in configuration and has no dashboard. After the installation, you should go to Menus and create a new menu item Buy points with Paypal. All settings are located here.
There are typical settings for payment service:
- Test mode - Yes / No.
- Paypal Account email
- Product/Service name
- Default country - depending of your choice the default language will be set for checkout page.
- Button style - here you can change button image.
And below you will find some special settings:
- Range points start list: the minimal points which will be available for the price.
- Range points end list: the maximum points you can buy for one time.
- Incremental interval: it is used for intermediate values in the list.
- Amount per increment: basic price for buying minimal points. It will be summed up.
- Tax: set tax rate.
According to our pricing model described in this tutorial, we will set Range points start list to 100 points, Range points end list to 1000 points and Amount per increment to 25 USD.
Buy Points with PayPal - menu item settings
Buy AltaUserPoints points with PayPal - front-end
Good luck with the monetization!