Skip to main content

Changelog & Version History

Track the evolution of FirearmDistributors.com with detailed release notes, new features, and improvements.

Current Version: v3.9.0 - Per-Dealer Credential Isolation + Connection Fixes + Retention

Version 3.9.0 - Per-Dealer Credential Isolation + Connection Fixes + Retention

Released: June 26, 2026

Live

Your data stays yours

  • Per-dealer credential isolation. Every distributor feed now pulls pricing using only that dealer's own credentials and writes to that dealer's own account. Connectors no longer fall back to any house key, feed ID, or shared file — so one dealer can never be shown another's negotiated pricing. Trial dealers still preview live sample data; the moment you connect your own accounts, you see your own.
  • Lipsey's & Crow are fully account-gated. Their pricing, quantity, and name are shown only to a dealer who has connected their own verified Lipsey's/Crow credentials — never to trial or master-feed users, on any screen, email, or export.
  • Credentials encrypted end to end. Secondary secrets (FTP/STS passwords, security codes, tokens) stored alongside a connection are now AES-256-GCM encrypted at rest, matching the primary credentials.

Connections that just work

  • Distributor connectors fixed across the board. Crow (your own feed ID), Camfour (your own API key), AmChar, Zanders, MSR (now HTTPS), and Davidson's (the older dealer FTP on ftp.davidsonsinc.com) all connect with the right method and clearer field labels — so you enter the right thing the first time.
  • Honest connection status + IP-whitelist guidance. A failed feed now shows an "Action needed" badge with a plain-English fix, and a passing re-test restores syncing. Chattanooga (self-service) and Lipsey's (email your rep, with a ready-to-paste request) each have exact whitelist steps for our IP.
  • Feeds back off instead of hammering. A connection with wrong credentials now retries on a 30-minute-to-24-hour backoff (and the sync revives its database connection after long pulls), protecting both our system and the distributors.

Sign-up & sign-in unblocked

  • Registration accepts real shop names. A validation bug was rejecting business names containing an apostrophe, ampersand, comma, or parentheses (O'Brien, Smith & Wesson, Bob's Guns, LLC, ABC Firearms (FFL)) — i.e. most FFL names. Fixed and verified.
  • Easier recovery. A prominent "Can't sign in? Reset your password" prompt now sits right under the Sign In button, and credentials are trimmed on save (a stray pasted space used to break FTP logins).

Onboarding & reliability

  • New "connect your distributors" guidance. A daily activation email now nudges dealers who haven't connected a distributor yet (the one step that turns the search from sample data into your real pricing), and the search setup banner explains exactly what to do.
  • Operational hardening. All scheduled jobs consolidated onto Windows Task Scheduler (retired a public token-based cron URL), email open/click tracking enabled, and registration funnel logging added so drop-off is measurable.

Version 3.8.2 - Indexing Bug Fixes + Manufacturer Page Depth

Released: May 31, 2026 (overnight)

Previous

Two Real Indexing Bugs Fixed

  • robots.txt was blocking 19 distributor API doc pages. The blanket "Disallow: /api/" rule was catching the per-distributor API landing pages (RSR Group API, Lipsey's API, and 17 others) along with the JSON endpoints it was meant to block. Added explicit "Allow" overrides for each of the 19 documentation URLs. Google Search Console's "Blocked by robots.txt: 14" bucket maps exactly to this issue and will clear within 24 hours of Google's next robots.txt fetch.
  • The redirect helper was silently sending 302 instead of 301. The function signature accepted only a URL; the second status-code argument was dropped on the floor, so every "redirect(/x, 301)" call returned HTTP 302 Found. Six routes are affected (including /why-dealers-need-this, /privacy, /terms, /help, /distributors/all, /free-trial), and they all now pass authority to the destination URL correctly.

13 Manufacturer Pages Bulked Up

  • 13 thin manufacturer pages now have 400 to 600 unique words each. Burris, CCI, Colt, CZ-USA, Federal Ammunition, Fiocchi, FN America, Heckler & Koch, Holosun, Remington, Taurus, Walther, and Winchester Ammunition each gained three new content sections covering brand history, specific product lines with concrete SKU references, and the wholesale distribution context that matters to FFL dealers. The new content is rendered through a content_blocks array on each manufacturer config entry, so future additions slot into the same template.
  • Word counts went from ~2,950 to ~3,350 per page. The unique-content ratio (versus the layout chrome on every page) is what drives Google's index/no-index decision for a thin auto-generated page set, and this push moves the 13 worst pages out of the borderline-thin band.

/compare Hub Page

  • /compare now exists as a real landing page. Previously the URL 404'd; the six individual X-vs-Y comparison pages had no parent hub. The new page lists all six comparisons with an angle paragraph each, captures broad "distributor comparison" search intent, and distributes link equity to the underlying comparison pages.
  • CollectionPage + BreadcrumbList schema. Both JSON-LD blocks ship with the page so Google understands the hub-and-spoke relationship between /compare and the individual comparisons.

/about Page Origin Story

  • +570 words of unique origin-story content. The about page sat in Google's "Crawled - currently not indexed" bucket because the unique-content ratio relative to the home page was too low. A new six-paragraph section explains the actual reason a working FFL dealer built this platform: the daily reality of logging into 15 distributor portals during a counter sale, the dollar-cost of guessing wrong on quotes, and the original internal-tool version that ran inside The Gun Dock before spinning out as SaaS.
  • Sitemap cleanup: dropped /free-trial and /why-dealers-need-this from sitemap.xml. Both are 301 redirects to other pages, not landing pages in their own right. Submitting redirects in a sitemap is a soft Google error.

Why This Matters

Google Search Console flagged 96 fdcom pages as "not indexed" across four buckets. The 14-page "Blocked by robots.txt" bucket was a real bug caused by an over-broad robots rule and is now fixed at the source. The "Discovered - currently not indexed" pile is mostly thin auto-generated pages, and the 13 manufacturer rewrites address the most fixable subset directly. The /about and /compare work clears two more pages out of "Crawled - currently not indexed." Realistic outcome over the next two to three weeks: 30 to 50 of the 96 unindexed URLs should index. Verify in GSC around June 14.

Version 3.8.1 - SEO Snippet Refresh + Dealer-Intent Targeting

Released: May 31, 2026

Previous

21 Distributor Pages Rewritten

  • Dealer-intent snippet pattern on every distributor landing page. Titles now lead with the brand name and pair it with the four phrases dealers actually type into Google: login, pricing, apply, and the current year for freshness.
  • Meta descriptions rebuilt around acquisition intent. Each page calls out the application process, login portal, real-time wholesale pricing, and the unique comparison angle we offer (one dashboard against 19 other firearms distributors). All 21 land between 210 and 251 characters so Google has room to render them without truncation.
  • Brand aliases surfaced. Pages that have a second name (Davidson's / Gallery of Guns, Sports South / The Shooting Warehouse, Iron Valley / Bangers) now carry both, so dealers searching either term land on the right page.
  • Every page backed up. The previous version of each file is preserved alongside the new one for a clean rollback if any individual snippet underperforms after a few weeks.

SEO Audit & Sitemap Refresh

  • Full GSC + GA audit. Pulled the last 28 and 90 days from Search Console and Analytics: 57,509 impressions, 416 clicks, 0.72 percent average CTR at position 7.4. Eight of the highest-impression pages are bleeding clicks at 0.06 to 0.50 percent CTR. The snippet refresh targets those eight first.
  • Indexing health confirmed. Every URL spot-tested via the GSC Index Inspection API returns "Submitted and indexed." The platform's indexable surface is healthy; CTR is the lever to pull next.
  • Sitemap lastmod bumped. All 21 distributor pages now carry today's lastmod date in the sitemap, and the sitemap was resubmitted to Google so the crawler re-fetches them sooner. Sitemap held at 514 URLs.
  • Prioritized roadmap. The audit doc captures the next eight SEO moves in priority order, from manufacturer-page rewrites and FAQ schema to a dedicated dealer-application page type and a phased plan for product detail pages.

Why This Matters

The 0.72 percent average click-through rate is the gap between fdcom being found and fdcom being clicked. Distributor brand searches put us in positions 4 to 8 already; the snippet rewrites cover the four intent terms a dealer types when they want to apply for, log into, or compare pricing with a specific distributor. Realistic lift on the eight worst-performing pages: from 0.30 percent to 1.0 to 1.5 percent CTR, which is 300 to 450 additional monthly clicks. Verify around June 21 once Google has re-crawled the new snippets.

Version 3.8.0 - Meilisearch + Smart Autocomplete

Released: May 30, 2026

Previous

Smarter Search

  • Meilisearch under the hood. Keyword queries now hit the same 431,000-document search index TheGunDock runs on. Real BM25 relevance, typo tolerance for words seven characters and up, per-field weighting, and synonyms (".22 lr" = "22lr" = "22 lr") all out of the box.
  • Accessory-intent detection. Searching "Ruger RXM" returns the pistol; searching "Ruger RXM grips" returns grip modules. When the query has no accessory word, we hard-filter to firearms so Veridian triggers stop outranking the actual gun.
  • FULLTEXT fallback. If Meilisearch is unreachable, the previous boolean-mode search path takes over. Search never goes down.
  • Dealer pricing layer untouched. Meilisearch returns ranked product IDs; the existing dealer_inventory join attaches per-account pricing on top.

Search Autocomplete

  • Dropdown previews as you type. After the third character, six product cards appear in about 250 milliseconds. Each card shows the thumbnail, product title, manufacturer, and clickable click-through to the single-product view.
  • Stock badges per row. Green "In Stock" for 10+ units, amber "Limited Stock" for 1 to 9, gray "Out of Stock" for zero. Reflects real-time inventory across all distributors on the master feed.
  • Exact-match badge. When you type a UPC or SKU, the row whose UPC or SKU literally matches gets a blue "Exact Match" badge so you know which one is yours at a glance.
  • Keyboard navigation. Arrow keys to move through the dropdown, Enter to jump to the highlighted product, Escape to close. Each fetch cancels the previous one so there's no race-condition flicker.

Feed Self-Healing

  • Orphan-row sweep in the base feed runner. After every per-dealer sync, any row whose last-synced timestamp is older than this run gets zeroed automatically. Stops the phantom-stock problem we hit when Zanders dropped a SKU in April but our row sat at "1 in stock" for six weeks. The sweep is guarded so a truncated feed file can't accidentally zero an entire dealer's inventory.
  • Zanders cleanup. 1,159 stale phantom rows on the master account zeroed in a one-time backfill. Every other distributor inherits the new sweep automatically.

Outreach & Telemetry

  • 300-dealer cold blast. Sent via Postmark broadcast stream against the BHC FFL dealer list (the same Trinity FFL audience). 75 percent unique open rate, 2.7 percent bounce rate, zero infrastructure errors.
  • Search history preserved. The autocomplete dropdown intentionally doesn't log to search_history, only the committed search does. Keeps the "what other dealers are searching for" data feed clean instead of a row per keystroke.

Why This Matters

Search is conversion. Dealers don't pay for a price-comparison tool that can't find their inventory. Switching keyword search to Meilisearch and adding a typing dropdown takes fdcom from "find it if you know the exact term" to "find it by typing three letters." The accessory-intent rule removes a class of frustrating misranking that hand-tuned LIKE boosts can't fix at scale. And the feed-runner orphan sweep prevents the stale-data problem that erodes trust the moment a dealer sees a "1 in stock" that turns out to be six weeks old.

Version 3.7.1 - Hero Rewrite + Feed Self-Healing

Released: May 29, 2026

Previous

Hero Above the Fold

  • New headline: "Find the Best Distributor Pricing in Seconds." The second clause renders in patriot-red for emphasis.
  • New subheadline: "Real-time inventory and pricing across 20+ firearm distributors for FFL dealers." Tighter and benefit-led.
  • Four value bullets in a two-column grid with red checkmark icons: Save $25 to $200 per firearm, Search all distributors instantly, Live inventory updates, Built for licensed FFL dealers.
  • Updated pill tagline: "Real-Time FFL Distributor Pricing".

Feed Self-Healing

  • MGE local-file resolution fixed. The backslash UNC path to the shared file server now leads the candidate list; the forward-slash form was returning false under the scheduled-task service account. Same root cause as yesterday's Iron Valley bug.
  • MGE FTP path fallback. When a dealer hasn't set a feeds path explicitly, the feed now tries the home directory, then the standard orders feeds folder, before giving up. Previously broke for any dealer who hadn't manually configured the path.
  • Sports South error parser. Sports South returns HTTP 200 even on auth failure, with the real reason buried in an HTML-escaped error tag inside the response envelope. We now extract it and surface "Authentication Failed For User" instead of the old opaque "small response" message.
  • Auto-flag invalid credentials. When a feed catches an authentication-failure error, the dealer's credential row flips to "invalid" with a timestamped note. We stop hammering the upstream and the dealer's credentials page can prompt a fix.

Iron Valley SFTP (Related Context)

  • From v3.7.0 yesterday: the Iron Valley feed was rewritten to pull each dealer's price file over SFTP, replacing the dead REST endpoint that had been timing out since April 17.
  • Status overnight: the master account is syncing cleanly via the shared local file (kept fresh by the standalone Python downloader). Other dealers throw the planned "credentials need SFTP fields" message until their accounts are populated.
  • Same self-healing pattern: today's MGE and Sports South work follows the same template: catch the upstream's actual error, surface it cleanly, and update credential state so we don't keep retrying.

Infrastructure

  • Tailwind rebuild plus service worker v6. The new hero needed a fresh CSS compile; the cache bump pushes the new bundle to clients on next page load.
  • Overnight log audit: zero PHP errors and zero Apache errors on fdcom routes since the v3.7.0 deploy. The constant-redefinition warning flood from yesterday is gone.
  • Reactivation campaign settled clean. 96 emails sent, 96 trials reset, no bounces or hard failures. One dealer has already logged back in.

Why This Matters

Above the fold is the highest-leverage real estate on the entire site. The previous "All Your Distributors. One Dashboard." headline was descriptive; "Find the Best Distributor Pricing in Seconds." is a promise. The bullets immediately answer "what's in it for me" with concrete numbers ($25 to $200) instead of feature names. On the back end, three feeds used to fail with opaque messages that looked identical to platform bugs; they now self-diagnose, surface the real reason, and flip the credential to "invalid" so the next sync skips and the dealer's UI prompts a fix. Less noise, faster fixes, fewer support emails.

Version 3.7.0 - Analytics Chips, Reactivation Sprint, IVS SFTP

Released: May 28, 2026

Previous

Analytics & Search

  • Dealer-relevance filter chips on arbitrage, competitors, trends, and inventory pages. Category, brand, and sort options persist across visits.
  • Hourly analytics cache warmer keeps every dashboard sub-second on cold loads.
  • Single-pass aggregation replaces the old quadratic subquery pattern on arbitrage and competitors. Query timeout lifted from 5 seconds to 30 for analytics.
  • Full-text boolean search across title, manufacturer, model, description, and caliber. Cold queries down from about 6.9 seconds to 178 milliseconds; cached reads in about 2 milliseconds.
  • "What other dealers are searching for" chip cloud on the search page. Anonymized, top 30 days, cached 30 minutes.
  • Lipsey's and Crow blur for trial users. Distributor name stays visible so dealers know stock exists; SKU, quantity, and cost are blurred behind a "connect your account" affordance.

Reactivation Sprint

  • 180-day welcome-back campaign: 96 verified dealers who never connected a distributor got a fresh 14-day trial and an email pointing them at the demo feed.
  • Outlook-safe email layout: nested tables, VML rounded CTA, CID-inlined logo, soft gray dividers, mobile media queries that stack the 2-by-2 deal cards full width.
  • "What's new since you left" block, a "Deals you missed" thumbnail grid with aspect ratio preserved for rifles and shotguns, and the new big-shops sales pitch baked in.
  • Distributor-rep email suppression: addresses on zanders, billhicks, lipseys, and crow domains are excluded from outreach.

Infrastructure

  • Iron Valley SFTP rewrite. The old REST endpoint had been timing out since April 17. The feed now pulls each dealer's price-and-quantity file over SFTP via phpseclib3, with the shared local file as a fallback.
  • LAN-only remote DB. Retired the public hostname in favor of the internal LAN address with a 2-second connect timeout and a filesystem-flag circuit breaker so a remote-DB outage no longer hangs page renders.
  • Service worker v5. Cache bust for the new Tailwind classes powering the v3.7.0 home-page section.
  • Quieter log. The index router's constant definitions are now guarded, eliminating about four PHP warnings per page request that were filling the error log.

Front Page

  • "The shop down the street isn't lucky. They have a system." A new positioning section that frames FirearmDistributors.com as the same aggregation tool the big retailers use, priced for everyone else.
  • Side-by-side comparison card: "without aggregation" (red) vs. "with FirearmDistributors.com" (green). Reinforces the gap-closer angle without depending on testimonials.
  • Tailwind rebuild so the new utility classes ship in the production bundle.

Why This Matters

Three things at once: a usability lift for active dealers (filter chips + popular searches), an audience-growth lever (96 dormant trials reactivated with a fresh 14 days), and an infrastructure fix the entire IVS user base was about to hit (REST endpoint dead, SFTP path now live). The blur respects Lipsey's and Crow's account-gated pricing policy while still showing trial users that those distributors carry the SKUs they're searching for. Trust, clarity, and speed in one release.

Version 3.6.0 - Trust Signals & Final Audit Polish

Released: May 12, 2026

Previous

Trust Signals

  • Footer trust strip on every page: 20 distributors, 400,000+ SKUs searchable, FFL-only access, PCI-DSS payments via Stripe and PayPal.
  • Founder credential update: footer and About page now explicitly cite Brad Bussell as the operator of The Gun Dock, an active Kentucky FFL retailer. First-hand-experience E-E-A-T signal Google's March 2026 core update rewards.

SEO & Copy

  • Davidson's snippet, second rewrite: pos was 17.4 after the May 03 push (worse, not better). New snippet leads with "Dealer Login, Pricing & Apply" plus Gallery of Guns brand to match dealer search intent.
  • About page modernized: corrected stale 217K product count to canonical 400,000+ SKUs, replaced undefined freedom-red color class with the live patriot-red across 4 view files.

Why This Matters

Trust signals near CTAs are one of the higher-leverage B2B SaaS conversion levers per 2026 research. The footer strip and explicit operator credentials close the audit's "no trust signals" gap. The Davidson's rewrite is the third in a CTR-recovery series (RSR + Sports South already rewritten); GSC verify date is 2026-05-24.

Version 3.5.0 - Stripe + Apple Pay + Google Pay

Released: May 12, 2026

Previous

New Payment Options

  • Stripe Checkout as the primary payment path. One-tap support for credit card, Apple Pay, and Google Pay on mobile.
  • PayPal stays available as a secondary option for users who prefer it. Existing PayPal subscribers continue uninterrupted.
  • 14-day free trial baked into the Stripe Price. No charge until day 15.
  • Stripe Customer Portal for self-service: update your card, change plan, see invoices, cancel — all without contacting support.

Behind the Scenes

  • Signed Webhooks keep our database in sync with Stripe events: new subscriptions, trial-end warnings, payment failures, cancellations.
  • Trial status fixed. Users in their 14-day trial are now correctly labeled "trialing" instead of "active" across the board.
  • Native trial-end reminder via Stripe's trial_will_end webhook (3 days before charge). No more depending on a daily cron for this.
  • Idempotent event handling. Even if Stripe delivers the same event twice, our database stays consistent.

Why This Matters

Apple Pay alone typically lifts mobile B2B SaaS checkout completion 15-25%. Pairing Stripe with our existing PayPal option means dealers pay the way they already pay, on any device. Combined with the 14-day free trial that has no charge until day 15, we removed the last objection to signing up. v3.5.0 is the final piece of the conversion-audit Sprint started this week.

Version 3.4.0 - Conversion Audit Sprint 1

Released: May 12, 2026

Archived

Activation & Onboarding

  • Historical Sample Preview on the dashboard for new users who haven't connected distributor accounts yet. Real distributor products from the past 120 days so dealers can see what the live dashboard will look like for them. Clearly labeled, distributor-compliant.
  • Onboarding Tutorial Refocused on the actual first step: connecting your first distributor.
  • Sitewide Trial Countdown Bar across every authenticated page. Color-codes by urgency. Hides on auth and checkout pages.
  • Welcome Email Fixed. A bug in the verification flow was silently swallowing the welcome email. 6 users who were missed have been back-filled.

Mobile & Performance

  • Mobile Hamburger Drawer with full nav including Analytics, Watchlists, Alerts, Orders. Touch-friendly tap targets, slide-in panel, Escape and outside-click both close it.
  • Tailwind CSS Compiled and Self-Hosted. The runtime CDN build is gone. New compiled static bundle is purged and minified to under 100KB, eliminating the previous render-blocking script.
  • Alpine.js Self-Hosted at a pinned version. No more floating-version CDN dependency.
  • LCP optimization: hero logo gets fetch priority, below-fold screenshots load lazily.
  • Reduced-Motion Honored. Users with motion-suppression turned on at the OS level no longer see auto-rotating sliders or scrolling marquees.

SEO Infrastructure

  • Sitemap Rebuilt. Per-section truthful lastmod dates instead of one "everything changed today" date. Login-gated URLs removed. 515 URLs, XML-valid.
  • CTR Snippet Rewrites on the three biggest underperformers from Search Console: distributor login portal hub, Sports South, and RSR Group.
  • Duplicate Organization Schema Removed from page-level JSON-LD.

Trust, Security, Accessibility

  • Skip-to-content link, modal ARIA dialog semantics, focus rings on icon buttons, autocomplete on every registration field.
  • Permissions-Policy header added; deprecated X-XSS-Protection removed; HSTS unconditional in production; CSP tightened to remove unsafe-eval.
  • Legal Docs Updated: Terms and Privacy now reference PayPal correctly. Privacy security-audit language softened to match reality.
  • Sitewide em-dash sweep in customer-facing copy.

Why This Matters

v3.4.0 attacks the four bottlenecks identified in this week's full audit: search-result CTR, visitor-to-signup conversion, mobile experience, and signup-to-verified email completion. The biggest unlock is the Historical Sample preview on the dashboard. New dealers no longer have to imagine what the platform will look like for them. They see it the moment they log in, with a clear path to switch from sample to live data by connecting their first distributor.

Version 3.3.0 - Credentials Onboarding & Missed Opportunities

Released: May 7, 2026

Archived

API Credentials Page Overhaul

  • Step-by-Step Start Panel - New dealers see a clear 3-step guide at the top with a "connected" counter and jump-to-first-distributor link
  • "How do I get credentials?" Help Section - Per-distributor walkthroughs with screenshots showing exactly where to find API keys on each distributor portal
  • Prominent Add Buttons - Bigger, bolder "Add Credentials" buttons so unconfigured distributors are impossible to miss
  • Inline Help in the Setup Modal - The same step-by-step instructions appear right inside the credential entry form for each distributor
  • "Get Help Now" Button - Stuck? Pick which distributors you need help with from a checklist and our team gets the request directly with your dealer info attached

"You Missed This" Marketing Slider

  • Real Sold-Out Inventory - Homepage and features-page slider shows actual rare-manufacturer guns that briefly hit a distributor and sold out everywhere
  • Mobile-Friendly Carousel - Smooth touch-scrolling, snap-to-card behavior on phones, three-up grid on desktop with arrow navigation
  • Real Timestamps - Each card shows the exact distributor, date, and time the item was last in stock. Proof of opportunities our alert system would have caught
  • Auto-Rotation - Cards rotate every 7 seconds when visible, pause on hover or touch
  • Stock Snapshot History - Background cron now records every stock-quantity change for rare manufacturers so the slider keeps growing richer over time

Site-Wide Polish

  • Consistent Numbers Everywhere - 20 distributors / 400,000+ SKUs / around 150,000 in-stock products, surfaced from a single source so we never drift
  • Manufacturer Name Cleanup - Acronyms and case-mangled labels (SIG, SIG_SAUER) display as proper "Sig Sauer" everywhere
  • Bangers Renamed to Iron Valley - All references to the old "Bangers" name now display the current "Iron Valley" branding throughout the platform

Copy & UX

  • Ordering Feature Acknowledged - Help and FAQ pages updated. We now offer direct STS and dropship ordering, not just price comparison
  • No System Popups - All confirmations and prompts use clean inline panels and modals, never browser-style alert/confirm dialogs
  • Cleaner Customer Copy - Em-dashes swept out of dealer-facing text in favor of standard punctuation

Why This Matters

Connecting your distributor accounts is the unlock for live pricing, inventory, and one-click ordering. v3.3.0 turns the credentials page into a guided onboarding experience so no dealer gets stuck on day one. The new "You Missed This" slider drives the point home: while you were chasing inventory the hard way, our subscribers were getting alerted the moment these guns landed.

Version 3.1.0 - STS Order Management & Dealer Dashboard

Released: February 25, 2026

Archived

Ship-To-Store (STS) Ordering

  • Place Orders from Search - Order directly from 20 distributors using your own credentials
  • Order History Page - View all your STS orders, filter by status, distributor, or date range
  • Tracking Integration - Check shipment status with one click, auto-detects carrier from tracking number
  • 20 Distributor Order Classes - RSR, Zanders, Lipsey's, Sports South, Davidson's, and more
  • Account-Level Controls - Feed-only accounts restricted from ordering as needed

Dealer Experience Improvements

  • "What is FD?" Page - New explainer page for dealers unfamiliar with the platform
  • Credential Setup Nudge - New users guided to connect their distributor accounts
  • Orders Nav Link - Quick access to order history from desktop and mobile navigation
  • Carrier-Aware Tracking Links - UPS, FedEx, USPS, Spee-Dee, DHL, OnTrac all supported

Why This Matters

Dealers no longer need to log into each distributor's website separately to place orders. Find the best price across all your distributors, then order it right from FirearmDistributors.com — shipped directly to your store.

Version 3.0.0 - Card-Upfront Registration & Platform Overhaul

Released: February 18, 2026

Previous

Registration & Billing

  • Card-Upfront Registration - 7-day free trial with card required at signup for higher-quality signups
  • Authorize.net ARB Integration - Automated recurring billing with cancel-from-account support
  • Promo Code System - Admin-managed promotional codes for discounts
  • Webhook Processing - Real-time subscription status updates from Authorize.net

SEO & Content Overhaul

  • SEO Breadcrumbs - Structured navigation breadcrumbs on all pages
  • Dynamic Blog System - Database-driven blog with admin management
  • Swagger API Documentation - Interactive OpenAPI docs at /api-docs
  • Service Worker v2 - Improved offline support and caching
  • Messaging Repositioning - All site copy updated to reflect accurate platform positioning

Per-Dealer Feed System

  • 19 Distributor Feeds - Real-time pricing from RSR, Lipsey's, Sports South, Zanders, Davidson's, and 14 more
  • Credential-Based Access - Each dealer sees pricing from their own distributor accounts
  • API Credentials Page - Dealers manage their own distributor credentials securely
  • Encrypted Storage - All distributor passwords encrypted at rest

Major Architecture Change

v3.0.0 is the biggest release since launch. The registration flow was completely rebuilt to require a card upfront (7-day free trial included), the per-dealer feed system went live with all 20 distributors, and the entire site messaging was repositioned around accurate value propositions.

Version 2.4.2 - Search Optimization & Timezone Fix

Released: November 10, 2025

Previous

Powerful Search Improvements

  • Mixed Query Support - Search UPC + keywords together (e.g., "098289001375 COLT KING COBRA")
  • Enhanced Keyword Search - Now includes UPC, SKU, and internal SKU fields
  • Increased Timeout - Complex searches now have 5 seconds (up from 2) to complete
  • Flexible Searching - Combine any mix of UPC, SKU, brand, and model in one query

Timezone & Display Fixes

  • Local Timezone Display - "Last updated" times now show in your timezone
  • No More Future Dates - Fixed UTC timestamps appearing as future times
  • Automatic Conversion - JavaScript converts all timestamps to your browser's timezone

Version 2.4.1 - Extended Sessions & UX Enhancement

Released: November 5, 2025

Previous

Session Management

  • Extended session lifetime from 8 hours to 30 days
  • Clear "Your session has expired" messaging when timeout occurs
  • Automatic return to your intended page after re-login

User Experience

  • Graceful session expiration handling across all pages
  • Smart redirect preservation - resume where you left off
  • Works seamlessly with AJAX requests and API calls

Version 2.4.0 - Trial & Email Excellence Edition

Released: October 28, 2025

Previous

Trial System Updates

  • Streamlined trial activation on login
  • Automated re-engagement campaign for verified users
  • Auto-activation of trials on login

Email System

  • Outlook-compatible email templates (table-based layouts)
  • Fixed back-in-stock notification rendering on all email clients
  • Fixed duplicate notifications (24-hour cooldown, one per product per day)

Performance

  • Admin users page significantly faster (query optimization)
  • Database indexes added for role and verification queries

Version 2.3.0 - Email Deliverability & Security Edition

Released: October 7, 2025

Previous

Email Deliverability

  • Fixed verification emails going to spam/clutter folders
  • Automated verification email resends after 24 hours
  • Cleaner email templates with improved unsubscribe headers

Spam Protection

  • Added reCAPTCHA v2 checkbox ("I'm not a robot")
  • Triple-layer spam protection (honeypot + v2 + v3)
  • Blocks automated bot registrations effectively

Version 2.2.0 - Analytics Intelligence Edition

Released: September 14, 2025

Previous

Analytics Suite

  • Velocity analytics with product movement tracking
  • Inventory intelligence with low-stock alerts
  • Price arbitrage system for profit opportunities
  • Market trend analysis and demand forecasting
  • Competitive intelligence and distributor performance ranking
  • Real-time price history tracking

Content & Marketing

  • Professional blog system with admin management
  • SEO-optimized articles targeting industry keywords
  • Comprehensive anti-spam protection for contact forms

Bug Fixes

  • Fixed price history modal loading errors
  • Corrected distributor name mapping between databases
  • Resolved velocity analytics API configuration
  • Improved mobile header logo sizing

Version 2.1.0 - Professional Edition

Released: August 31, 2025

Previous
  • Professional homepage redesign with dual-state user panels
  • Environment-aware configuration system
  • Enhanced database architecture (3-tier system)
  • Real-time admin database sync functionality
  • Progressive Web App implementation

Version 2.0.0 - Major Platform Overhaul

Released: August 15, 2025

Archived
  • Complete architecture redesign from monolithic to modular
  • Multi-database integration for scalability
  • Real-time search engine across 20 distributors
  • Comprehensive admin panel

On the Roadmap

Mobile App

Native iOS and Android apps with barcode scanning and push notifications

AI-Powered Alerts

Intelligent notifications based on your purchase history and inventory patterns

Dropship Ordering

Place dropship orders directly from search results, shipped to your customers

More Distributor Tracking

Tracking status checks for Zanders, Lipsey's, Sports South, Gunarama, and more

Custom Reports

Personalized analytics reports and PDF export for purchasing decisions

POS Integration

Sync with popular point-of-sale systems for seamless inventory management

20
Distributors integrated
400,000+
SKUs searchable
FFL-Only
Licensed dealer access
PCI-DSS
Stripe + PayPal payments