Platform Overview
The Strata GPO Command Center is an interactive pitch deck platform that tracks prospect engagement in real time. Instead of sending a static PDF, reps send a personalized link that opens a guided, interactive presentation. Every slide view, vault exploration, and quiz response is captured and scored.
Token-Based Access
Each prospect gets a unique, time-limited link. Engagement data is tied to that token for full attribution.
Real-Time Analytics
See which slides prospects spend time on, which vaults they explore, and how they answer quiz questions.
AI-Powered Insights
Claude analyzes engagement patterns and surfaces strategic recommendations for each prospect.
Customizable Decks
Profiles, vault toggles, and quiz configuration let you tailor each presentation to the prospect's segment.
Architecture at a Glance
The platform runs on three files:
| File | Purpose |
|---|---|
dashboard.html | The Command Center — token management, analytics, deck builder, settings |
deck.html | The presentation viewer — what prospects see when they open their link |
api.php | Backend API — handles data storage, AI calls, file uploads |
Data is stored as JSON files in a deck-data/ directory on the server. No database setup required.
Login & Roles
Logging In
Navigate to the dashboard URL. You'll see a login screen with two fields:
- Enter the platform access code (shared with your team)
- Select your name from the user dropdown
Roles
| Role | Access | Capabilities |
|---|---|---|
| Manager | Full access to all views | Create/manage all tokens, view all analytics, edit deck content, manage playbook, access settings, manage users |
| Editor | Deck Builder, Design, Versions, Settings | Edit slide content, manage media library, save versions, configure platform settings (Unsplash API key, etc.) |
| Rep | Home, Tokens, Intel, Design, Detail | Create tokens for their prospects, view engagement for their tokens, access prospect detail/Q&A |
Dashboard Navigation
The left sidebar contains all navigation. Views available depend on your role. The main views are:
| View | Icon | What It Does |
|---|---|---|
| Home | Dashboard | Overview cards, hottest prospect, recent activity, engagement trends |
| Tokens | Key | Full token list with search, filter, sort, and bulk actions |
| Intel | Brain | Engagement scoring breakdown, comparative analytics, trend charts |
| Deck Builder | Edit | Edit slide content (headlines, body text, grid items), rich text editor |
| Design | Palette | Image library with Unsplash integration, media assignment to slides |
| Versions | History | Deck management hub and per-deck version snapshots |
| Playbook | Book | Upload and manage sales documents (SOPs, scripts, battle cards) |
| Settings | Gear | API keys, webhook configuration, platform settings |
Token Management
Creating a Token
- Click Generate Token from the Home view or Tokens view
- Enter the prospect name and company
- Select Token Type: Prospect (24-hour self-guided, timer starts on first open) or Rep (no expiration, full controls)
- Choose a Deck Version — this includes the master deck and any custom decks you've created
- Choose a Deck Profile that matches the prospect's segment (profiles work with all deck versions, including custom decks)
- Toggle Vault Slides on/off — use the granular controls to enable/disable specific vault deep-dives
- Toggle Quiz Slides on/off — select which insight questions appear and where
- Click Generate Token — the unique URL appears. Copy and share it.
Token Types
| Type | Expiration | Best For |
|---|---|---|
| Prospect | 24 hours from first open | Sending to prospects for self-guided exploration. Creates urgency. |
| Rep | Never expires | Internal team use, demos, ongoing reference. Full deck controls visible. |
Managing Existing Tokens
From the Tokens view you can:
- Search by prospect name or company
- Filter by type (prospect/rep), status, or profile
- Sort by date, name, or engagement score
- View Intel — opens the detailed engagement view for that prospect
- Copy Link — copies the token URL to clipboard
- Revoke — immediately disables the token link
Deck Profiles
Deck profiles let you swap slide visibility and content based on the prospect's segment. When a prospect opens their link, the deck automatically adjusts to show the most relevant content.
Available Profiles
| Profile | Target Audience | What Changes |
|---|---|---|
| Default / Standard | General audience | Full deck, no content swaps |
| Dealer in a Group | Dealers already in a GPO | Emphasizes competitive advantages, switching benefits |
| Dealer Not in a Group | Independent dealers | Emphasizes GPO value proposition, member benefits |
| Large Dealer | High-volume dealers | Focuses on volume rebates, enterprise features |
| Mid-Size Dealer | Growing dealers | Focuses on growth support, operational efficiency |
Profiles are managed through the API and can be customized. Each profile defines which slides are shown/hidden and can include profile-specific quiz questions.
Custom Decks
Custom decks are independent copies of any existing deck. They allow you to maintain separate versions of the presentation for different campaigns, audiences, or use cases without affecting the master deck.
Creating a Custom Deck
- Click the + New Deck button in the sidebar or in the Deck Management page
- Enter a Deck Name (e.g., "q2-pitch-acme" or "enterprise-demo")
- Select a Source Deck — the deck to copy as a starting point. This can be the master deck or any existing custom deck.
- Optionally select a Dealer Profile — this seeds the new deck with the profile's slide visibility configuration. Select "No profile" to keep all slides active.
- Click Create Deck — the new deck appears in the sidebar and deck management grid
Managing Custom Decks
From the Deck Management page (Versions sidebar item), each deck appears as a card showing its name, type badge (Built-in or Custom), and available actions:
- Activate — switch the dashboard to this deck for editing
- Duplicate — create a new copy from this deck
- Rename — change the display label (custom decks only)
- Delete — remove a custom deck (built-in decks are protected)
Engagement Intel
How Scoring Works
Every prospect receives a score from 0 to 100, calculated from two tiers:
Tier 1: Quantitative Score (max 70 points)
| Factor | Max Points | What It Measures |
|---|---|---|
| Coverage | 25 | Percentage of main slides viewed (not counting vaults) |
| Depth | 15 | Number of vault deep-dives explored |
| Time | 20 | Total time spent, compared against the platform average (smart baseline) |
| Quiz | 10 | Whether quiz questions were answered |
Tier 2: Transcript Boost (max 30 points)
| Factor | Points | What It Measures |
|---|---|---|
| Has Transcript | +10 | A follow-up call transcript has been uploaded |
| Substance | +10 | Transcript contains substantive discussion (not just small talk) |
| AI Analyzed | +10 | AI insights have been generated from the transcript + engagement data |
Score Interpretation
| Score Range | Label | Action |
|---|---|---|
| 60–100 | Hot | High intent — prioritize follow-up, schedule demo |
| 30–59 | Warm | Interested but exploring — nurture with targeted content |
| 0–29 | Cold | Low engagement — may need different approach or re-engagement |
Prospect Detail View
Click Intel on any token to open the detail view. This shows:
- Engagement Score with tier breakdown
- Slides Viewed — which slides they saw and for how long
- Vaults Explored — which deep-dive branches they opened
- Top Slides — ranked by time spent (reveals what they care about most)
- Quiz Responses — their answers to insight questions
- Session Timeline — chronological view of their entire journey
- Token URL — the link they were sent
- AI Insights — AI-generated strategic analysis
- Prospect Q&A — ask follow-up questions about this prospect's behavior
- Prospect Notes — team notes visible to all users
- Transcript — upload and view call transcripts
Vault Slides
Vault slides are hidden branches that prospects can unlock during the presentation. When a prospect is on a slide that has a vault, a glowing glyph appears. Clicking it reveals the vault deep-dive content.
Available Vaults
| Vault | Parent Slide | Content |
|---|---|---|
| 8e | Slide 8 | Bill Pay Walkthrough |
| 10e | Slide 10 | Rebate Dashboard Walkthrough |
| 11e | Slide 11 | Central Ordering Platform |
| 14e | Slide 14 | LMS Course Catalog |
| 16e | Slide 16 | Partner Hub Preview |
| 20e | Slide 20 | Vendor Portfolio Breakdown |
| 24e | Slide 24 | Financial Mechanics |
| 26e | Slide 26 | Valyr Private Label Catalog |
| 44e | Slide 44 | Find Your Fit |
Per-Token Vault Control
When creating a token, you can disable specific vaults. For example, you might disable "Financial Mechanics" for a first meeting but enable it for a follow-up. Disabled vaults won't show the unlock glyph on the parent slide.
Quiz / Insight Engine
Quiz slides appear at configured points in the presentation. They ask strategic questions designed to reveal what the prospect cares about most — giving your team insight before the first conversation.
How Quiz Configuration Works
- In the token creation modal, enable Quiz Slides
- The Insight Placement panel shows available questions from the slide bank
- Toggle individual questions on/off
- Questions appear at their configured slide position in the deck
- A summary slide always appears at the end (if quiz is enabled)
Quiz responses appear in the prospect detail view and are factored into AI Insights analysis.
Video Integration
Slides can have associated video content. When a slide has a video assigned, a Play Video button appears at the bottom of the slide. Videos open in a modal overlay.
To assign videos to slides, use the Design view's media management. Video URLs can point to hosted video files or embed-compatible URLs.
AI Insights
AI Insights uses Claude to analyze a prospect's engagement data and generate actionable recommendations. The analysis considers slides viewed, time spent, vault explorations, quiz responses, and (if available) call transcripts.
Generating Insights
- Open a prospect's Detail View
- Click Generate AI Insights
- Wait 10–20 seconds for the analysis
- Insights appear with strategic recommendations, talking points, and risk flags
What AI Insights Covers
- Engagement Pattern Analysis — what their behavior reveals about priorities
- Interest Signals — specific slides/vaults that indicate buying intent
- Risk Flags — areas of low engagement that may indicate objections
- Recommended Talking Points — what to focus on in follow-up
- Competitive Positioning — informed by playbook battle cards
Prospect Q&A
The Q&A chat lets you ask follow-up questions about a specific prospect. It has full context of their engagement data, quiz responses, transcripts, and your sales playbook.
Using Q&A
- Open a prospect's Detail View
- Scroll to the Ask About This Prospect section
- Type your question and press Enter or click Ask
- The AI responds with data-backed answers
Example Questions
- "What does their engagement suggest about their buying timeline?"
- "Which vaults did they skip, and what should I address in follow-up?"
- "Based on their quiz answers, what's the best opening for a call?"
- "Are there any red flags in their viewing pattern?"
- "How should I position the rebate program based on what they explored?"
Sales Playbook
The Sales Playbook is your team's knowledge base. Documents uploaded here are used by both AI Insights and Prospect Q&A to align recommendations with your methodology.
Document Types
| Type | Purpose | Examples |
|---|---|---|
| Sales SOP | Standard operating procedures | Demo flow, qualification criteria, follow-up cadence |
| Sales Script | Conversation frameworks | Discovery call script, demo script, closing script |
| Battle Card | Competitive positioning | Competitor comparisons, differentiators, win themes |
| Objection Guide | Objection handling | Common objections with recommended responses |
Managing Playbook Documents
- Navigate to the Playbook view
- Click Add Document and select the document type
- Upload a text file or paste content directly
- Toggle documents Active/Inactive — only active documents are used by AI
- Delete documents you no longer need
Prospect Notes
Prospect Notes are simple text notes visible to all team members. Use them to capture follow-up plans, call summaries, or context for the next conversation.
- Open a prospect's Detail View
- Scroll to the Notes section
- Type your note and click Save
- Notes show the author name and timestamp
Notes are stored on the server and persist across sessions. Any team member can add notes to any prospect they have access to.
Deck Builder
The Deck Builder lets you edit the text content and media of any slide without touching HTML. Changes are saved as overrides — the original slide content remains intact and can be restored at any time.
Editing a Slide
- Navigate to the Deck Builder view
- Select a slide from the slide list — slides show both their base ID (the underlying slide number) and viewer position (the number the prospect sees in the assembled deck)
- Click on the text element you want to edit
- Use the rich text editor to modify headlines, body text, or grid items
- Click Save — changes apply immediately to the live deck
View Modes
The Content Editor offers three view modes, toggled with the icons at the top right of the slide list:
- Grid View — cards arranged in a responsive grid (default)
- Table View — compact list format showing slide details in rows
- Strip View — horizontal scrolling layout, useful when working with many slides. Keeps everything in a single row so you scroll left-right instead of up-down.
Slide Numbering
Because profiles, vault slides, and quiz inserts can change which slides appear in the final deck, the Deck Builder shows two numbers:
- Base Slide ID (S#) — the permanent slide identifier in the backend. This never changes regardless of profile or configuration.
- Viewer Position (#) — the position the prospect actually sees in the assembled deck. This accounts for disabled slides, vault inserts, and quiz slides. Shown as a teal badge when it differs from the base ID.
What You Can Edit
- Headlines — slide titles and section headers
- Body Text — paragraphs and descriptions
- Grid Items — content within grid/card layouts
- Media — images and video assigned to slides via the Media tab
- Slide Order — drag to reorder slides in the presentation flow
- Slide Visibility — toggle individual slides on/off per deck
Grid Aligned Image
Grid Aligned Image replaces the older "Side Image" and "Inline Image" options. It positions an image flush against any edge of the slide's content box: top, bottom, left, or right. The content automatically shifts to make room.
Position Options
| Position | Behavior |
|---|---|
| Top | Image spans full width above the content box, content shifts down |
| Bottom | Image spans full width below the content box, content shifts up |
| Left | Image anchored to left edge of content box (classic side image), content shifts right |
| Right | Image anchored to right edge of content box, content shifts left |
Where to Set It
- Deck Builder > Media tab — the "Grid Aligned Image" card lets you set the URL and position for the primary grid image
- Additional Images — when adding extra images, choose "Grid Aligned Image" from the Type dropdown to get top/bottom/left/right positioning
Image Library
The Design view provides an image library with two sources:
- Uploaded Images — files uploaded directly to the platform (up to 20 MB per file)
- Unsplash Integration — search and use professional stock photography. Unsplash images are downloaded through the server's proxy to avoid browser CORS issues. Requires an API key configured in Settings.
Assigning Images to Slides
- Navigate to the Design view
- Select or upload an image from the library
- Choose the target slide and image slot
- Click Preview Slide (the purple button below the slide thumbnail) to see how the image looks in context
- The image is assigned and appears in the live deck immediately
Deck Management & Version History
The Versions page serves as the central deck management hub. It shows all available decks (master and custom) in a card grid and provides snapshot versioning scoped per-deck.
Deck Management
The top section displays each deck as a card with its name, badge (Active, Built-in, or Custom), and action buttons. Use the sidebar deck list or the card's Activate button to switch between decks.
Version Snapshots
Below the deck grid, the snapshot panel captures the complete state of the active deck's edits at a point in time — all copy overrides, media assignments, and slide order. Snapshots are scoped per-deck, so each deck maintains its own history.
- Navigate to the Versions view
- Make sure the correct deck is active (shown with the green "Active" badge)
- Click Save Version and add a note describing what changed
- To restore, click Restore on any saved version
- Restoring automatically creates a backup of your current state first
Per-Token Deck Versioning BETA
Per-token deck versioning lets you override slide copy, media, ordering, and visibility for a specific token. Changes apply only to that token's presentation. The master deck remains untouched.
How It Works
The system uses a delta/override architecture. Rather than copying the entire deck for each token, it stores a lightweight JSON file of just the changes (overrides). When a prospect opens their link, the deck loads the master content first, then layers on any token-specific overrides.
What Can Be Customized Per-Token
| Override Type | What It Does |
|---|---|
| Copy Overrides | Replace headlines, body text, or grid items on specific slides |
| Media Overrides | Swap images or video for specific slides |
| Slide Order | Reorder the presentation flow for this prospect |
| Disabled Slides | Hide specific slides entirely from this prospect's view |
Using Per-Token Editing
- In the Deck Builder, use the "Editing" dropdown (top bar) to select a specific token
- Make your edits as normal — changes are saved as overrides for that token only
- Switch the dropdown back to "Master Deck" to return to editing the global version
Settings
The Settings page is organized into distinct sections:
Integrations BETA
All integrations are grouped together and currently labeled as BETA.
| Integration | Purpose | Status |
|---|---|---|
| Unsplash API | Enables stock photo search in the Image Library. Free key at unsplash.com/developers | BETA |
| CRM / Webhook | POST event notifications to Zapier, Make, HubSpot, or any webhook endpoint | BETA |
| HubSpot / Salesforce | Native CRM connectors with OAuth, contact sync, activity logging | Coming Soon |
Webhook Event Triggers
| Event | When It Fires |
|---|---|
| New Session | A prospect opens their deck link for the first time |
| Vault Opened | A prospect unlocks a vault deep-dive |
| Quiz Completed | A prospect answers a quiz/insight question |
| High-Intent Alert | A prospect's engagement score reaches 60+ |
Data Management
Data management is in its own section, separate from integrations. It provides buttons to flush specific categories of data.
| Flush Target | What Gets Cleared | What's Preserved |
|---|---|---|
| Flush Analytics | All engagement/session data | Tokens, team config, deck content |
| Flush Insight Data | Quiz/insight responses | Everything else |
| Flush Transcripts | Uploaded call transcripts | Everything else |
| Flush AI Insights | Generated AI analysis | Everything else |
| KILL ALL DATA | All of the above | Tokens and team config only |
User Management
Users are managed through the reps.json file on the server. Each user has:
| Field | Description |
|---|---|
| id | Unique identifier (used for token attribution) |
| name | Display name shown in the dashboard |
| role | manager, editor, or rep |
| code | Login code for authentication |
reps.json file can be edited directly on the server. Each user needs a unique ID, name, role, and login code.
Deployment
The Deploy Script
All deployments use the deploy.sh script, which eliminates manual file copying:
- Make your edits to
dashboard.html,stratadeck.html, orapi.php - Run bash deploy.sh from the project root
- The script copies source files to
strata-prod/with canonical names, creates timestamped backups, and writes a version manifest - Upload the contents of
strata-prod/to the server root - Verify the footer build stamp in the dashboard matches the deployed version
What the Deploy Script Does
- Copies
dashboard.html→dashboard.html(production) - Copies
stratadeck.html→stratadeck.html+deck.html(backward compat) - Copies
api.php,.htaccess,reps.json,deck-profiles.json - Creates backup in
backups/[timestamp]/ - Writes
version.jsonwith file hashes for integrity verification - Auto-cleans backups older than the last 10
Cache Busting
The .htaccess file includes no-cache headers for all HTML and PHP files. Browsers will always fetch the latest version. If you ever see stale content after a deploy, do a hard refresh (Ctrl+Shift+R).
Verifying a Deployment
Click the build stamp in the dashboard footer (bottom right). It shows the version number, deploy timestamp, and file hashes so you can confirm exactly what's running on the server.
Beta Features
Several features are labeled BETA in the dashboard UI. These are functional but still being refined. Report any issues or unexpected behavior.
| Feature | Location | Status Notes |
|---|---|---|
| Image Library | Design view | Upload (up to 20 MB), browse, and assign images. Unsplash search requires API key. |
| Unsplash API | Settings > Integrations | Stock photo search and server-side download. Requires free API key. |
| CRM / Webhook | Settings > Integrations | Event-based webhook notifications to external systems. |
| Per-Token Deck Versioning | Deck Builder > Editing dropdown | Per-prospect deck customization via delta overrides. |
| Custom Decks | Sidebar > + New Deck | Create independent deck copies from any source with optional profile seeding. |
| Grid Aligned Image (Top/Bottom) | Deck Builder > Media tab | Top and bottom anchoring is new. Left and right are stable. |
Troubleshooting
Edits Not Showing Up
- Hard refresh the browser: Ctrl+Shift+R (Windows) or Cmd+Shift+R (Mac)
- Verify the build stamp in the footer matches your latest deploy
- Confirm you ran
deploy.shand uploaded thestrata-prod/files - Check that
.htaccessis uploaded (it prevents browser caching)
500 Internal Server Error
- Usually caused by
.htaccesscontaining unsupported directives - Temporarily rename or delete
.htaccesson the server to restore access - The current
.htaccessincludesphp_valuedirectives for upload limits. On PHP-FPM hosts where these cause 500 errors, the.user.inifile serves as a fallback (remove thephp_valuelines from.htaccessand rely on.user.iniinstead)
AI Features Not Working
- AI Insights and Prospect Q&A require a valid Anthropic API key configured in
api.php - Check server error logs if API calls fail
- Ensure the server can make outbound HTTPS requests to
api.anthropic.com
Images Not Loading
- Verify the
uploads/directory exists and is writable on the server - For Unsplash, confirm the API key is set in Settings
- Check file permissions on the
deck-data/anddeck-data/images/directories - If Unsplash downloads fail, hit
api.php?action=server-infoin the browser to check that cURL is available and the images directory is writable - If uploads are rejected for size, verify that
.htaccessor.user.iniis on the server (they set the upload limit to 20 MB)
Token Link Not Working
- Check if the token has expired (prospect tokens expire 24 hours after first open)
- Check if the token has been revoked
- Verify
deck.html(orstratadeck.html) exists on the server