Installation overview
Horizon is two halves, installed in two places:
| Component | Where it runs | Who installs it |
|---|---|---|
byte8/module-horizon (Magento 2 module) | Your Magento server | You, via Composer |
| Horizon MCP gateway | Byte8-hosted, horizon.byte8.io | Already running — you just sign up |
You never install the gateway. You install only the Magento module and point it at our hosted endpoint with the API key the dashboard issues.
System requirements (Magento side)
- Magento 2.4.6+ (Open Source or Adobe Commerce). Earlier versions probably work but aren't tested.
- PHP 8.2 / 8.3 / 8.4 / 8.5 — matches the
composer.jsonconstraint. - MSI enabled (default in 2.4+). The inventory tool reads MSI sources.
- Outbound HTTPS to
*.byte8.io. No inbound ports need to be opened — the gateway pulls from you, not the other way round.
The module depends on:
magento/framework
magento/module-catalog
magento/module-store
magento/module-sales
magento/module-customer
magento/module-inventory-api
byte8/module-core # shared Byte8 module utilities
If byte8/module-core isn't in your Composer repo set, add the Byte8 Composer registry (Cargoman) per the install instructions you'll get on first sign-up.
What the module installs
After composer require + setup:upgrade:
- A new module
Byte8_Horizonregistered with Magento. - A frontend route at
/horizon/*(no admin/UI exposure — API only). - A
byte8_horizon_product_indexflat table (created bydb_schema.xml). - A new indexer
byte8_horizon_productyou can run manually or schedule. - A new admin config section under Stores → Configuration → Byte8 → Horizon.
See the extension configuration page for what each admin field does.
What you need before installing
You will need:
- Composer access on the Magento server.
- The Byte8 Composer registry credentials (issued on first sign-up).
- An admin login to paste the API key.
- CLI access to run
setup:upgradeandindexer:reindex.
If you're using Byte8 Orbit for deploys, add the package to your composer.json and let Orbit's next deploy run setup:upgrade for you — no SSH needed.
What you don't need
- ❌ No long-lived service to keep alive.
- ❌ No webhook endpoint on the Magento side to expose publicly.
- ❌ No model hosting, no embeddings store, no vector DB.
- ❌ No agent-side credentials to manage per merchant — each store gets one API key, period.
Next
- First store — wiring up the very first store end-to-end with screenshots.
- Install the extension — Composer-level detail, troubleshooting Composer auth.