Thank you for being part of our growing community of learners and developers.
— The Scriptzhub Team
Version 3.33.0
March 8, 2026
New
Agent API — Connect AI Agents, and Automation Tools
Your loyalty platform now has a dedicated machine-to-machine API. The Agent API lets external systems operate your loyalty engine directly — awarding points, redeeming rewards, managing members — without touching the dashboard.
Three key types, three access levels:
- Partner keys (rl_agent_) — Full POS integration. Award points on purchase, redeem rewards at checkout, manage cards, vouchers, stamp cards, tiers, staff, and clubs. Everything the staff app does, plus management CRUD.
- Admin keys (rl_admin_) — Platform operations. List and manage partners, view platform-wide members, access analytics. Built for monitoring and automation workflows.
- Member keys (rl_member_) — Personal data access. Check balances, browse rewards, view transaction history, discover and follow cards. Built for AI assistants that act on behalf of customers.
Designed for automated systems:
- Granular scopes — Each key gets exactly the permissions it needs: read, write:transactions, write:cards, and more. Least-privilege by design.
- Per-key rate limiting — Configure requests per minute for each key. Rate limit headers (X-RateLimit-Remaining) included in every response.
- Structured error envelopes — Machine-readable error codes with retry strategies (no_retry, backoff, fix_request, contact_support) so AI agents know how to recover.
- Audit trail — Every API call is logged with endpoint, method, status code, and IP address. Visible in your partner activity log.
- Tenant isolation — Partners can only access their own data. Cross-partner access is impossible by design.
Key management from your dashboard:
- Create keys with scope selection and optional expiration from the partner, admin, or member dashboard
- Keys are shown once at creation and never recoverable (bcrypt-hashed storage)
- Revoke keys instantly — all future requests are rejected immediately
- Configurable key limits per partner (default: 5)
Beta — opt-in activation:
The Agent API ships with your existing license but is disabled by default. To enable it, set FEATURE_AGENT_API=true in your environment file. Administrators must also enable the "Agent API" permission for each partner who needs access.
Improved
Database Compatibility
Optimized column sizes in the transactions and analytics tables for better compatibility with non-default MySQL storage engines. No data migration required — existing installations are unaffected.
Version 2.7.2 - 2025-10-10
- Update FAQ to reflect new points transfer feature
- Ensure correct type casting for options and value
- Cast config values to int for Carbon type safety to prevent error on certain environments
Version 1.33.1 - 2024-05-04
Version 1.33.0 - 2024-05-03
- Handle possible null values in card meta retrieval
Version 1.32.0 - 2024-03-13
- Make rounding of points optional in loyalty card rules, enabling new earning strategies
Version 1.31.1 - 2024-02-12
- Increase loyalty card currency digits to 7 for better currency compatibility
- Add info box advising use of phone's camera for QR scanning issues
- Update check icon to enhanced version
- Update README for PHP version requirement to 8.2.0
Version 1.31.0 - 2024-02-01
- Remove initial element handling in relation syncing
- Add .gitignore for ezyang/htmlpurifier library
PHP 8.2 is required as of this update
Version 1.30.0 - 2023-12-12
- Updated PHP dependencies to their latest versions
- Updated JavaScript and CSS libraries to their latest versions
- Added UUID-based IDs trait for testing latency issues
- Update .htaccess to redirect /public/ URLs and clean up access paths
Version 1.29.0 - 2023-10-23
- Add expiration date filter to active rewards queries
- Integrate member transactions overview into admin dashboard
Version 1.28.0 - 2023-09-21
- Updated JavaScript and CSS libraries to their latest versions
- Add I18nMiddleware to API middleware for i18n support
- API scheme reference update
- Update 401 response refs for admin, member, and partner to UnauthenticatedResponse
- Update getMemberBalance response format and corresponding OpenAPI doc
Version 1.27.0 - 2023-09-20
- Major API documentation improvements
- Refactor API docblocks and documentation for clarity and consistency
Version 1.26.1 - 2023-09-13 (2)
- Update API documentation
- Add API endpoints for admin to list, get, and update partners
- Implement admin authentication functionalities in API
- API add feature to update authorized partner details
- Update API User is not active response message
- Modify auth middleware to return Unauthorized message instead of redirect
- Add hiddenForPublic attribute to Admin model
- Extend check for available languages to prevent 500 error
- Remove logout method from API middleware to prevent error
- Set name for Identifier column in member export
- Enhance Snowflake ID generation with concurrency handling and retry mechanism
Version 1.26.0 - 2023-09-13 (1)
- Display expired/used transactions at member card
- Fix backend reward balance check
Version 1.25.0 - 2023-09-07
- Fixed reward claim issue when balance matches cost
- Add bottom margin to mobile side navigation
- Update admin, partner and staff auth controller to validate intended URL segment
- Move form element tooltips outside labels for mobile compatibility
- Refine rewards list styling
- Add existence check for reward before processing transaction reversal
- Built project assets using npm run build
- Update readme
Version 1.24.0 - 2023-09-06
- Refactor analytics and implement points reversal logic
- Remove 'src' attribute from image to prevent ERR_UNKNOWN_URL_SCHEME when claiming reward
Version 1.23.1 - 2023-09-05
- Add feature for partners to delete last transaction added by staff for a member
- Add rel="nofollow" and target="_blank" to card contact buttons
Version 1.23.0 - 2023-09-04
- Remove dot (.) from registration email to avoid password confusion
- Remove console.log debug statements
Version 1.22.3 - 2023-09-02 (2)
- Set Active or Deactivated for cards in analytics overview
- Update translation files
- Style tweaks for analytics and hide View on website link for inactive cards
- Add Club label to analytics overview and make design tweaks
- Update default loyalty card design colors and background image
- Add default value option to DataService for new images
Version 1.22.2 - 2023-09-02 (1)
- Improve analytics overview and details UI clarity
- Fix missing Edit Card link in card analytics and tweak UI
- Add icons to Icon Component
Version 1.22.1 - 2023-09-01 (4)
- Analytics UI update
Version 1.22.0 - 2023-09-01 (3)
- Ensure analytic dates are always interpreted in local time zone
Version 1.21.1 - 2023-09-01 (2)
- Revamped Analytics: Enhanced charting, UI and data
- Fix correct day of week mapping for SQLite in analytics functions
- Added arrow icons to Icon Component
- Handle non-existent file path in Reward getAspectRatio function
Version 1.21.0 - 2023-09-01 (1)
- Fix correct day of week in analytics queries and remove array index remapping
- Prevent modification of created_at when setting expires_at for adding points
Version 1.20.0 - 2023-08-29 (2)
- Fix 500 errors caused by updated multi-select element
- Update share button from Twitter to X
- Make updated_by column optional in DataService and implement in user profiles
Version 1.19.0 - 2023-08-29 (1)
- Updated NPM packages to the latest versions
- Updated composer packages to the latest versions
Version 1.18.2 - 2023-08-27 (3)
- Refactor database migrations
- Add config option to toggle Snowflake IDs for a particular installation
- Replace kra8/laravel-snowflake with custom snowflake trait
Version 1.18.1 - 2023-08-27 (2)
- Optimized migrations and models to use small Snowflake IDs, preventing larger ID casting issues
Version 1.18.0 - 2023-08-27 (1)
- Convert email to lowercase in ResetPasswordRequest
- Convert email to lowercase in RegistrationRequest and LoginRequest
- Convert email formatted columns to lowercase in DataDefinition
- Implement HasShortflakePrimary for shorter URLs, optimized compatibility, and enhanced QR performance
- Add SNOWFLAKE_EPOCH env variable during installation for fresher IDs
- Fix incorrect staff dashboard link redirecting to partner dashboard
