Seekmodo for Zen Cart

AI-powered search, typeahead, and catalog indexing for Zen Cart 1.5.8+

Version v1.3.31

Overview

The Seekmodo connector routes your Zen Cart storefront's product search, indexer cron, click beacon, and type-ahead autocomplete through the Seekmodo platform at mcp.seekmodo.com, while keeping native Zen Cart search permanently armed as a graceful fallback.

What the plugin swaps

Requirements

RequirementVersion
Zen Cart1.5.8+ (v158 or v200)
PHP7.4+ (8.1+ recommended)
Seekmodo subscriptionseekmodo.com/pricing

Operating modes

ModeStorefront behaviour
offBypass Seekmodo entirely. Native search only.
shadow / LearningGateway called for observation; native result still served to shoppers.
active (recommended)Auto-promotes shadow → enforce based on gateway health; auto-demotes on failures.
enforceGateway primary; native fallback only when the circuit breaker is open.
Zero-touch installv1.0.9+ ships observers so stock Zen Cart installs work without core file edits. Settings live on admin.seekmodo.com once paired.

Installation

This guide assumes you have a Seekmodo subscription, Zen Cart 1.5.8+, and admin access to your store.

Recommended PHP extensions

The connector self-checks your PHP environment on Tools → Connect to Seekmodo (Diagnostics panel). None are install-time gates, but each matters for steady-state behaviour.

ExtensionRequired?Why it matters
sodiumRequiredPairing uses ed25519 to verify the Seekmodo callback.
apcuStrongly recommendedCaches the gateway snapshot for 5 minutes. Without it, admin pages lag.
opcacheStrongly recommendedStandard PHP performance for ~2k lines of connector code.
curlRequiredOutbound calls to mcp.seekmodo.com.
opensslRequiredTLS for outbound calls.
mysqliRequiredZen Cart's standard database driver.
intlOptionalInternationalized hostname canonicalization.
php -v                                # need >= 7.4
php -m | grep -E 'sodium|apcu|opcache|curl|openssl|mysqli|intl'

Download and verify

Always download the signed zip from seekmodo.com. Replace the version in the commands below with your target release.

curl -fLO https://seekmodo.com/plugins/seekmodo-zen-cart-{{VERSION}}.zip
curl -fLO https://seekmodo.com/plugins/seekmodo-zen-cart-{{VERSION}}.zip.sha256
sha256sum -c seekmodo-zen-cart-{{VERSION}}.zip.sha256
# expected: seekmodo-zen-cart-{{VERSION}}.zip: OK
Download from seekmodo.com onlyDo not use third-party mirrors. The latest version pointer is at seekmodo.com/plugins/manifest.json.

Install through Plugin Manager

  1. Open Zen Cart admin

    Log in to your admin panel (/admin or your renamed path).
  2. Upload the plugin

    Go to Tools → Plugin Manager → Upload New Plugin and select the downloaded zip.
  3. Install Seekmodo

    Find the row labelled Seekmodo and click Install. The Scripted Installer creates the configuration group and seeds 13 NUMINIX_SEEKMODO_* rows with safe defaults (MODE=off).
  4. Confirm installation

    The Plugin Manager row should read Seekmodo v1.3.31 — Installed.

Pair with your Seekmodo tenant

  1. Open Connect to Seekmodo

    In Zen Cart admin, go to Tools → Connect to Seekmodo.
  2. Start pairing

    Click Connect. You are redirected to seekmodo.com/connect with a one-time token.
  3. Approve the tenant

    Sign in to seekmodo.com, pick the tenant to bind, and approve.
  4. Verify pairing

    On success, the plugin populates your tenant ID and HMAC secret. The page shows a green Paired banner.
Clock skewPairing fails if your server clock is more than 5 minutes off from the gateway. Ensure NTP/chrony is active.

Activate Seekmodo

Open admin.seekmodo.com, find your tenant, and switch Mode from Disabled to Learning or Active. The connector polls the gateway every 5 minutes; within that window your storefront starts using Seekmodo.

Verify installation

  1. Plugin Manager — row reads Seekmodo v1.3.31 — Installed.
  2. Storefront search — search for a known product; tail <docroot>/logs/numinix_seekmodo.log and look for backend=gateway.
  3. Admin analytics — sign in to admin.seekmodo.com → Analytics → Top queries and confirm your test search appears.

Configuration

Most settings are managed remotely from admin.seekmodo.com and pulled into your store via tenant.snapshot every 5 minutes. You rarely need to change local constants by hand.

Connection (local)

ConstantDescription
NUMINIX_SEEKMODO_URLGateway base URL (default: https://mcp.seekmodo.com)
NUMINIX_SEEKMODO_TENANT_IDAuto-populated by the Connect flow
NUMINIX_SEEKMODO_SHARED_SECRETHMAC key — auto-populated by pairing; treat as secret

Mode and performance (gateway-authoritative)

ConstantDefaultDescription
NUMINIX_SEEKMODO_MODEoffoff | shadow | active | enforce — flip from admin.seekmodo.com
NUMINIX_SEEKMODO_AUTO_PROMOTEtrueAuto-promote active mode after 50 healthy gateway responses
NUMINIX_SEEKMODO_TIMEOUT_MS250Per-request hot-path budget in milliseconds
NUMINIX_SEEKMODO_INDEX_BATCH500Documents per indexer chunk
NUMINIX_SEEKMODO_DEBUGfalseVerbose logging to numinix_seekmodo.log

Full configuration reference on seekmodo.com

Usage

After pairing and activating, the connector runs with minimal day-to-day maintenance. Policy updates from admin.seekmodo.com propagate automatically.

Search and modes

Start with Active mode on admin.seekmodo.com. The connector observes gateway health in shadow mode and auto-promotes to enforce after ~50 successful searches. On sustained failures it auto-demotes back to shadow.

Catalog indexing

The indexer runs from your existing Zen Cart cron via numinix_seekmodo_run_bulk_upsert(). Schedule is controlled by NUMINIX_SEEKMODO_INDEXER_SCHEDULE on admin.seekmodo.com (hourly, every_4h, daily, or manual).

Type-ahead and click attribution

Integration guide and swap-point details

Upgrade

The supported routine update path is the in-plugin Updates page (v1.0.7+).

  1. Open Seekmodo Updates

    Go to Tools → Seekmodo Updates in Zen Cart admin.
  2. Review available release

    The page pulls seekmodo.com/plugins/manifest.json, compares versions, and shows release notes.
  3. Apply update

    Click Apply update. The connector downloads the signed zip, verifies SHA-256 and ed25519 signature, backs up the current version, and installs the new tree.
  4. Roll back if needed

    The Updates page lists recent backups with a Roll back button (last 3 kept).
Manual upgrade pathIf the Updates page cannot reach seekmodo.com, download the new zip from seekmodo.com/plugins, verify SHA-256, and re-upload via Plugin Manager.

Connectors documentation — upgrade section

Troubleshooting

Common issues and quick fixes. For deeper help, see the full troubleshooting guide or contact support@seekmodo.com.

Search behaves the same after install

Normal — the plugin defaults to MODE=off. Pair the store and flip mode to Active on admin.seekmodo.com.

Connect to Seekmodo fails

Log shows backend=native

The gateway was bypassed — check mode is not off, verify APCu is loaded, and confirm outbound connectivity. Enable NUMINIX_SEEKMODO_DEBUG=true on admin.seekmodo.com for verbose logs.

Domain lock / multi-environment

Each tenant locks to one canonical storefront host. Dev/staging clones need their own tenant or a preview subdomain configured on admin.seekmodo.com.

Full troubleshooting guide

Support

Need help? Our team and documentation are available on seekmodo.com.