MaxMind Setup
Extendy GeoShield can use MaxMind as a remote GeoIP2 Country web-service provider for country lookup.
You must bring your own MaxMind account or service access. Extendy GeoShield does not provide MaxMind credits, subscriptions, Account IDs, License Keys, or account access.
The current Extendy GeoShield integration uses the MaxMind web service/API. It does not support a local MaxMind database, GeoLite2 download, MMDB file path, or local database update workflow.
What Extendy GeoShield needs
The MaxMind integration requires these Extendy GeoShield credential fields:
MaxMind Account ID
MaxMind License Key
Extendy GeoShield uses HTTPS Basic Authentication for the provider request:
- username: MaxMind Account ID;
- password: MaxMind License Key.
The credentials are not placed in the request URL.
Extendy GeoShield uses the MaxMind GeoIP2 Country response and maps the provider response as follows:
| MaxMind response field | Extendy GeoShield result field |
|---|---|
country.iso_code | country_code |
country.names.en | country_name |
Before you start
Before configuring MaxMind in Extendy GeoShield:
- Make sure you have your own MaxMind account or API/web-service access.
- Obtain the Account ID and License Key required for your provider access.
- Confirm your WHMCS server can make outbound HTTPS requests to the provider.
- Decide whether you want to test with a real public IPv4 or IPv6 address.
Provider product names, pricing, quotas, and commercial terms are controlled by MaxMind and are not defined by Extendy GeoShield.
Configure MaxMind in Extendy GeoShield
- Open the Extendy GeoShield addon admin page.
- Open the Settings tab.
- Set GeoIP Provider to MaxMind.
- Enter your MaxMind Account ID in MaxMind Account ID.
- Enter your MaxMind License Key in MaxMind License Key.
- Review the other settings that affect login processing, especially Addon Enabled, Client IP Source, and Alert When Country Detection Fails.
- Click Save Settings.
After saving, the credential fields are shown as masked stored credentials. Submitting an empty credential field later keeps the existing stored value. Use the clear/remove option if you intentionally want to remove a stored credential.
Test the provider
After saving the provider and credentials:
- Stay on the Settings tab.
- In GeoIP Provider Test Connection, enter a real public IPv4 or IPv6 address.
- Click Test Connection.
The test uses the currently saved provider and saved credentials. It does not save settings and does not create login events.
On success, the result displays:
- provider;
- status;
- country code;
- country name.
On failure, the result displays a safe error message. It does not display the Account ID, License Key, request URL, authentication data, raw provider JSON, or raw exception text.
Failure behaviour
If the Account ID or License Key is missing, invalid, or rejected by the provider, Extendy GeoShield returns a controlled failure. During login, the event is still logged and the alert outcome depends on Alert When Country Detection Fails.
If country data is missing from the provider response, Extendy GeoShield treats the country as unknown for the login decision.
Security notes
- Do not share your MaxMind Account ID or License Key in tickets, screenshots, logs, email templates, or documentation.
- Extendy GeoShield stores provider credentials encrypted at rest.
- Extendy GeoShield does not intentionally write provider credentials to WHMCS Activity Log, Login Events, provider test output, or customer-facing messages.
- Invalid or private IP addresses are rejected before credentials are retrieved or a provider request is made.
For the general settings reference, see the Configuration Guide.