Comprehensive Guide to Pay-As-You-Go¶
Product Logic & Debugging
Understanding PAYG¶
Pay-As-You-Go (PAYG) is a system where you pay for a product or service only when you use it, instead of paying a fixed amount upfront. It's like buying airtime for your phone — you pay for what you need, and when you run out, you top up again.
In electricity systems using PAYG, a customer buys power in small amounts (like daily or weekly) rather than paying a large bill at the end of the month. Once the purchased power runs out, they need to buy more to continue using the service.
PAYG is a flexible and budget-friendly payment model commonly used for mobile data, utilities, and software subscriptions.
Omnivoltaic PAYG¶
Omnivoltaic PAYG operates through generated PAYG codes that carry a credit value in days, allowing the product to function for a specified number of days until the credit expires and a new code is required for continued use.
The PAYG token is entered into the product using a keypad, which may be either:
- Integrated into the product, or
- Provided as a separate accessory, depending on the product model.
For our latest IoT-integrated products, the token can also be entered using the Android OVapp, offering a more convenient and digital way to activate the product.
PAYG Code Types¶
There are three types of PAYG codes used throughout the product lifecycle:
| # | Code Type | Purpose |
|---|---|---|
| 1 | Days Code | Unlock the product for a set number of days |
| 2 | Reset Code | Erase active credit and reset the balance |
| 3 | Free Code | Permanently unlock the product at end of plan |
1. Days Code¶
A Days Code is a unique 21-digit PAYG code used to unlock a product for a specific number of days.
Format: Starts with * and ends with #
Example:
*019 683 958 971 722 166 965#
How it works
If a 2-day PAYG code is entered, the device activates and runs for 2 days. The Days Code is the primary code used throughout the entire PAYG process.
Loading multiple codes:
Users can load multiple Days Codes one after another, in the order they were generated. The product accumulates the total days from all codes entered.
Order matters
Codes must always be entered from earliest to latest. Entering them out of order will cause errors.
2. Reset Code¶
A Reset Code is a unique 21-digit PAYG code used to erase any active credit on a product.
When to use it:
- Correcting a code that was entered by mistake
- Resetting remaining credit days
- Repossessing a product that still has active days, so it can be resold or reassigned with a fresh PAYG setup
What happens
The Reset Code clears all remaining days, bringing the credit balance back to 000 days.
Use sparingly — Critical Warning
- Only generate a Reset Code for the purposes above.
- Using Reset Codes unnecessarily causes the product to fall out of sync with the code generator, which can lead to malfunctions.
- Do not use more than 5 Reset Codes across the product's entire PAYG lifecycle.
3. Free Code¶
A Free Code is a unique 21-digit PAYG code used to permanently unlock a product.
When to use it: Generated at the end of a customer's payment plan. It marks the completion of the PAYG process and grants the user full ownership of the product — no further codes are needed.
Error Codes¶
E04 — Invalid or Mismatched Token¶
What it means: The 21-digit PAYG token is incorrect or not intended for the specific product.
Common causes:
- Manual entry error (one or more digits incorrectly entered)
- Token belongs to a different product
How Tokens Work
Each PAYG-enabled product has a unique PAYG ID, and tokens are specifically generated for that ID. If the wrong token is entered, the product will not accept it.
How to Resolve E04¶
Double-check that the PAYG ID on the product matches the one in the ERM/PAYG platform.
Use the keypad and enter the following query command:
21#
21, then press OK.
To check the latest PAYG token loaded on the product, enter the following command via the keypad:
22#
22, then press OK.
This returns a 16-character hexadecimal (HEX) code.
Converting HEX to Decimal
Use a HEX-DEC converter to get the decimal equivalent. The converted decimal value should match the one found in the code history for accurate tracking.
Compare the PAYG codes displayed on the product with those in the system.
- If any codes have been skipped in the code history, enter them one by one in the exact order they were generated.
- Following this sequence ensures that tokens load correctly without triggering an E04 error.
E02 — Incomplete Token¶
What it means: The PAYG token entered is incomplete, usually containing fewer than 21 digits.
How to resolve: Carefully re-enter the token, ensuring that all 21 digits are correctly input before attempting to load it again.
Summary Table¶
| Code Type | Purpose | Effect |
|---|---|---|
| Days Code | Unlock product for N days | Adds days to credit balance |
| Reset Code | Erase active credit | Resets balance to 000 days |
| Free Code | Permanently unlock product | Disables PAYG requirement |
| Error Code | Meaning | Resolution |
|---|---|---|
| E04 | Invalid or mismatched token | Verify PAYG ID and code sequence |
| E02 | Incomplete token (< 21 digits) | Re-enter the full 21-digit token |