Enhance WHMCS integration with mTLS support and product mapping features. Added mTLS configuration options, updated API endpoints for mTLS status and fingerprint registration, and implemented product validation API. Updated database schema and documentation accordingly.
This commit is contained in:
31
docs/integrations/whmcs/product-mappings.md
Normal file
31
docs/integrations/whmcs/product-mappings.md
Normal file
@@ -0,0 +1,31 @@
|
||||
# WHMCS product mappings
|
||||
|
||||
Map WHMCS products (`servertype=hexagamecloud`) to GameCloud plan slugs without relying on product config option text fields alone.
|
||||
|
||||
## Addon UI
|
||||
|
||||
**Addons → HexaHost GameCloud → Mappings**
|
||||
|
||||
1. Select a WHMCS product
|
||||
2. Choose a GameCloud plan from the live catalog (`GET /catalog/plans`)
|
||||
3. Set default Minecraft version and software family
|
||||
4. Save — validated via `POST /catalog/validate-plan`
|
||||
|
||||
Mappings are stored in `mod_hexagamecloud_product_mappings`.
|
||||
|
||||
## Server module behavior
|
||||
|
||||
On `CreateAccount` and `ChangePackage`, the provisioning module resolves:
|
||||
|
||||
- `planSlug` from mapping table (active row) or falls back to config option 1
|
||||
- `minecraftVersion` / `softwareFamily` from mapping defaults or config options
|
||||
|
||||
Shared resolver: `integrations/whmcs/lib/ProductMapping.php`
|
||||
|
||||
## Dry-run validation
|
||||
|
||||
Before saving, the addon calls GameCloud to ensure the plan slug exists and is active. Invalid slugs are rejected — WHMCS product names alone are never used for mapping keys.
|
||||
|
||||
## Import / export
|
||||
|
||||
Mappings are WHMCS-local. Export the `mod_hexagamecloud_product_mappings` table for backup when migrating WHMCS hosts.
|
||||
Reference in New Issue
Block a user