Technical Requirements
Datso extensions run inside Joomla, so the Joomla site must be healthy before any product-specific workflow is tested. The requirements below are intentionally operational: they cover the conditions that usually affect installation, routing, media handling, checkout, protected downloads, API access, and mail delivery.
Platform
- Joomla 6.1 or newer is the target baseline for the current DatsoLumina and DatsoHub work.
- PHP 8.3 or newer is recommended. The current site is able to run through Plesk PHP handlers.
- MySQL or MariaDB must support
utf8mb4, transactions, indexes, and JSON functions where legacy migrations use JSON data. - HTTPS is required for checkout, account areas, license checks, API usage, and any customer-facing authenticated workflow.
Required PHP extensions
mysqlior equivalent Joomla database support.jsonfor structured settings, API payloads, and migration data.mbstringfor safe text handling.opensslfor secure requests, payment provider communication, tokens, and webhook verification.curlfor remote API calls, Stripe, update checks, and integration requests.fileinfofor package and upload validation.- Image processing support where DatsoGallery media workflows require thumbnail or preview generation.
Writable paths and storage
- Joomla
cache,administrator/cache, andtmpmust be writable. - Media folders must be writable where components publish assets or uploaded files.
- DatsoHub protected package storage must not be publicly browsable.
- Backups must include both database tables and protected package/media storage.
Server and routing
- SEF URLs should be tested after every menu change.
- Language routing must be verified on multilingual sites before exposing customer account pages.
- Web server rules must not block Stripe callbacks, DatsoHub API routes, or protected download tasks.
- Joomla cache and namespace maps should be rebuilt after manually copying a component instead of installing it through the Joomla installer.
Mail, queue, and external services
- Mail delivery must be tested with real sender settings before enabling ticket and payment notifications.
- Stripe test mode and live mode credentials must never be mixed.
- Webhook secrets must be configured per environment.
- For push notifications, APNS team ID, key ID, bundle ID, private key, and environment must match the deployed app target.