License Activation
License Activation - PintarRPH Web
This guide explains how licensing works for PintarRPH Web. If you previously used the desktop version, note that the web experience is significantly simpler -- there is no local activation screen, no hardware binding, and no device fingerprinting. Your license is tied directly to your User Portal account.
Key Differences from Desktop
| Desktop | Web |
|---|---|
| Local activation screen with license key entry | Login with User Portal credentials |
| Device fingerprinting (CPU, RAM, disk serial) | No hardware binding -- access from any device |
| Local JWT token stored on disk | Session managed server-side (Redis) |
| Worker token flow (JWT + HMAC for doc worker) | Transparent to web users |
| 72-hour heartbeat cycle | Subscription checked on every login |
How to Obtain a License Key
- Register an account at rsautomation.my. You will need a valid email address for verification.
- Browse available plans from the portal dashboard. Plans differ by curriculum access (SR, SM, or BUNDLE) and feature set.
- Purchase via ToyyibPay. Submit your order with any applicable voucher or referral codes, then complete payment through FPX or card via ToyyibPay.
- Receive your license. Once payment is confirmed, your license key appears in your portal dashboard and is also sent to your registered email.
- Log in to PintarRPH Web at pintarrph.com using the same account credentials. Your subscription is automatically detected.
License Terms
- 1 user per license. Each license is issued to a single teacher account and is non-transferable.
- 1-year validity. The license period begins from the date of first activation (not the date of purchase).
- Curriculum-specific access. Your license type determines which curriculum you can generate plans for.
License Types
| Type | Curriculum Access | Year Levels | Description |
|---|---|---|---|
| SR | KSSR (Sekolah Rendah) | Tahun 1 -- 6 | Primary school curriculum only |
| SM | KSSM (Sekolah Menengah) | Tingkatan 1 -- 5 | Secondary school curriculum only |
| BUNDLE | KSSR + KSSM | Tahun 1 -- 6 and Tingkatan 1 -- 5 | Both curricula with in-app switcher |
BUNDLE license holders can switch between SR and SM curricula at any time using the curriculum switcher in the web interface.
License Lifecycle
PENDING --> VALIDATED --> ACTIVE --> EXPIRED / REVOKED
| Status | Meaning |
|---|---|
| PENDING | Order submitted but payment not yet confirmed |
| VALIDATED | Payment confirmed, license key generated and ready for use |
| ACTIVE | License has been activated (first login) and is within validity period |
| EXPIRED | The 1-year validity period has ended |
| REVOKED | License revoked by administrator (e.g., policy violation) |
How It Works for Web Users
The web licensing flow is straightforward:
- Log in at pintarrph.com with your User Portal credentials (same as rsautomation.my).
- Subscription check. The system verifies your account has an active license with a valid plan.
- Access granted. If your subscription is active, you gain full access to all features allowed by your license type.
- Session managed server-side. Your authentication session is stored in Redis on the server. There is nothing to manage locally.
You do not need to enter a license key anywhere in the web app. The system links your portal account to your license automatically.
Protected Features
The following features require an active license (ACTIVE status within validity period):
- RPT generation (annual teaching plans)
- RPH generation (daily lesson plans)
- Word document export (DOCX)
- SK/SP extraction
- Enhanced textbook extraction
- JSU generation (exam blueprints)
- Soalan generation (exam papers)
- Markah Ujian (exam score recording)
- Laporan Pentaksiran / PPT (assessment reports)
- Student Roster and PBD recording
Features available without an active license:
- Logging in and viewing the dashboard
- Viewing previously generated plans
- Managing your teaching schedule
- Updating your teacher profile
Subscription Status
You can check your current subscription status from the Settings page in PintarRPH Web. The subscription panel displays:
- License type (SR / SM / BUNDLE)
- Current status (ACTIVE, EXPIRED, etc.)
- Expiry date
- Allowed curriculum types
Troubleshooting
Login failed
- Verify you are using the same email and password registered at rsautomation.my.
- Check that your email has been verified. Look for the verification email in your inbox (and spam folder).
- Reset your password from the portal if needed.
Subscription inactive
- Log in to rsautomation.my and check if your order payment has been completed.
- If payment was made but the license has not appeared, contact support -- the payment callback may need manual verification.
- Ensure you are logging in to PintarRPH Web with the same account that holds the license.
Expired license
- License validity is 1 year from first activation.
- To renew, purchase a new license from the User Portal. Renewal can be done before or after expiry.
- Existing generated plans remain viewable even after license expiry.
Cannot access RPT/RPH generation
- Confirm your subscription is ACTIVE (check Settings page).
- If you have a BUNDLE license, ensure you have selected the correct curriculum type.
- Try logging out and logging back in to refresh your session.
Security Design
| Layer | Implementation |
|---|---|
| Authentication | JWT-based sessions stored in Redis (server-side only) |
| Session Storage | Redis 7 with server-managed expiry |
| Transport | All traffic encrypted via Cloudflare Tunnel (TLS/HTTPS) |
| Credential Security | Passwords hashed with Django's PBKDF2 |
| Rate Limiting | Login attempts are rate-limited to prevent brute force |
| No Local Storage | No tokens, keys, or credentials stored in the browser beyond a session cookie |
Related Documentation
- Fair Usage Policy -- daily generation limits and usage guidelines
- User Portal: rsautomation.my
- PintarRPH Web: pintarrph.com
Last Updated: May 2026
Platform: Web
PintarRPH Desktop Version: 2.48.3