Instance configuration fields are the platform-wide custom settings unique to your deployment — VAT number, default currency, feature flags, third-party keys. This article is the field-by-field reference.
Where They Differ from Site Settings
- Site settings are built into the platform; values are chosen from a predefined list.
- Instance configuration fields are defined by you — you create the field, you decide its type.
- Both end up reachable from code as
$AM->config('field_name').
Field Categories
- Business identity: Company name, registered address, VAT, charity number.
- Operational defaults: Default currency, locale, timezone, fiscal year start.
- Third-party credentials: Stripe keys, SendGrid keys, Twilio credentials — encrypted at rest.
- Feature flags: Boolean toggles for beta features, A/B tests.
- Tunable limits: Max users, max records, max API rate.
- Integration endpoints: Webhook URLs, partner API URLs.
- Compliance flags: GDPR enabled, HIPAA mode, FERPA mode — affect default behaviour.
Encrypted vs Plain
- API keys, secrets, passwords: always encrypted_text type.
- Business identity, defaults, flags: plain types.
- The platform refuses to read encrypted values without auth.
Per-Tenant Overrides
Fields marked “overridable per tenant” cascade — platform default → tenant override → effective value. Useful for multi-tenant white-label deployments.
Worked Examples
- Stripe per tenant: Each tenant overrides
stripe_public_keyandstripe_secret_key; their customers pay them directly. - Feature flag rollout: Flag
enable_new_dashboarddefaults false; one pilot tenant overrides true; eventually flipped globally. - Multi-currency: Default currency GBP; each tenant overrides for their local market.
- Compliance mode:
hipaa_modeflag enabled for healthcare tenant; activates stricter audit logging and PII handling.