> For the complete documentation index, see [llms.txt](https://docs.norrnext.com/norrcompetition/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.norrnext.com/norrcompetition/points-system/topup-balance.md).

# Top-Up Balance & E-commerce

When running point-monetized contests, users need a seamless way to purchase additional points or top up their balance when points run low.

NorrCompetition includes automated Gate notifications and Top-Up URL redirects, which seamlessly pair with e-commerce store integrations to automate point sales through popular shopping cart extensions.

***

### Insufficient Points Handling (Gate Checks)

Whenever a user attempts an action that costs points (such as voting or submitting an entry) without having enough points in their balance:

1. The system blocks the action before any data is saved.
2. An error notice is displayed on the frontend, showing the required points versus current user balance.
3. If a **Top-Up URL** is configured, a direct call-to-action link (*"Top up balance"*) is automatically attached to the notice.

![Frontend notification displaying insufficient point balance with Top-Up URL link](/files/gG30cPfPVP9Df5xG8y3q)

***

### Setting Up the Top-Up URL

To configure the top-up link:

1. Navigate to **Administrator Panel -> Components -> NorrCompetition -> Options** from the Joomla sidebar menu.
2. Switch to the **Points** tab.
3. Locate the **Top-Up URL** field.
4. Select the menu item corresponding to your points purchase page, pricing table, or store catalog.
5. Click **Save & Close**.

{% hint style="info" %}
You can assign different Top-Up URLs for different content languages on multilingual Joomla websites.
{% endhint %}

***

### E-commerce Store Integrations

NorrCompetition connects with popular e-commerce platforms via dedicated integration plugins to sell point packages directly to your users:

* **Available Integrations:**
  * [J2Commerce Integration](#j2commerce-app-integration)
  * [Phoca Cart Integration](#phoca-cart-integration)

***

### J2Commerce App Integration

NorrCompetition provides a dedicated integration app for **J2Commerce** (`plg_j2commerce_app_ncpoints`), allowing you to sell point packages directly through your store catalog. Points are automatically credited to the customer's balance once their order reaches the specified trigger status.

{% hint style="warning" %}
This plugin requires J2Commerce 6.5.1 or later
{% endhint %}

#### Step 1: Install the Plugin

Install the `plg_j2commerce_app_ncpoints` package via **System -> Install -> Extensions**. The plugin is enabled automatically upon installation.

#### Step 2: Configure Order Trigger & Point Rules

1. Go to **J2Commerce -> Apps -> NorrCompetition Points**.
2. **Order Trigger Status:** Select the order status (e.g., `Confirmed` or `Completed`) upon which points will be credited to the buyer's balance.
3. **Product Points Rules:** Click **Add** to map store products to point amounts:
   * **Product:** Select a product from your J2Commerce store catalog (e.g., *"100 Contest Points Package"*).
   * **Points:** Enter the number of points credited to the user's balance upon purchasing this product (e.g., `100`).
4. Click **Save & Close**.

#### Step 3: Connect Store Page to Top-Up URL

In **NorrCompetition Options -> Points**, set the **Top-Up URL** parameter to your J2Commerce store points category or product page menu item.

When voters run out of points, clicking **Top up balance** in the frontend notification redirects them directly to your J2Commerce points store page, where purchasing a package automatically credits their NorrCompetition balance upon order confirmation.

***

### Phoca Cart Integration

NorrCompetition provides a dedicated system integration plugin for **Phoca Cart** (`plg_system_phocacartncpoints`), allowing you to sell point packages directly through your Phoca Cart store catalog. Points are automatically credited to the customer's balance once their order reaches the specified target status.

{% hint style="warning" %}
This plugin requires Phoca Cart 6.1.6 or later
{% endhint %}

#### Step 1: Install the Plugin

Install the `plg_system_phocacartncpoints` package via **System -> Install -> Extensions**. The plugin is enabled automatically upon installation.

#### Step 2: Configure Target Order Status & Point Rules

1. Go to **Plugins** (`System -> Manage -> Plugins`) and open **System - Phoca Cart NorrCompetition Points**.
2. **Target Order Status:** Select the order status (e.g., `Completed`) upon which points will be credited to the buyer's balance.
3. **Product Points Rules:** Click **Add** to map store products to point amounts:
   * **Product:** Select a product from your Phoca Cart store catalog (e.g., *"100 Contest Points Package"*).
   * **Points:** Enter the number of points credited to the user's balance upon purchasing this product (e.g., `100`).
4. Click **Save & Close**.

#### Step 3: Connect Store Page to Top-Up URL

In **NorrCompetition Options -> Points**, set the **Top-Up URL** parameter to your Phoca Cart store points category or product page menu item.

When voters run out of points, clicking **Top up balance** in the frontend notification redirects them directly to your Phoca Cart points store page, where purchasing a package automatically credits their NorrCompetition balance upon order confirmation.
