Skip to Content
Brown FormanRetail Locator

Retail Locator

Herradura does not use Dotter. We initially found Dotter on jackdaniels.com and assumed it was a Brown-Forman-wide standard, but it isn’t. Confirmed directly with you, and confirmed independently by what we found (or didn’t find) on herradura.com itself. This page now documents both: what Herradura actually appears to use, and Dotter as a second brand’s real but different choice: useful context, not our spec.

What herradura.com actually appears to use

Every product page (e.g. /en-us/blog/product/blanco/) has a “Buy Now” button. Unlike Jack Daniel’s, clicking it doesn’t fetch any third-party vendor script:

button markup: <div class="wp-block-button is-style-tertiary trigger-shop-assistant"> <a class="wp-block-button__link wp-element-button">Buy Now</a> </div> scripts already loaded on the page (not lazy-loaded on click): https://maps.googleapis.com/maps/api/js?key={key}&libraries=marker

No href on the button: it’s a JS click handler (trigger-shop-assistant), and the Google Maps JavaScript API is loaded upfront, not fetched on demand the way Dotter’s script is on Jack Daniel’s site.

Confidence level: strong circumstantial evidence, not a fully verified UI. We confirmed the Maps API loads and that no third-party locator script fires on click. We were not able to get the actual “shop assistant” modal to render in our automated browser session (it may require a real user gesture or geolocation prompt our synthetic click didn’t satisfy), so we can describe the mechanism with confidence but not the exact in-widget UX. Worth a two-minute manual check in a real browser before finalizing the design.

Best read of the evidence: Herradura’s locator is a custom-built, Google Maps-based widget: likely a WordPress plugin (possibly part of the same bfwpf- family documented in Web Forms and Book a Tour) that queries a retailer dataset and plots results on a Maps AdvancedMarkerElement (the libraries=marker parameter is the newer Google Maps marker API, not the legacy one). Not a third-party SaaS subscription like Dotter.

What jackdaniels.com uses instead (real, but not our spec)

Documented in full detail because it’s genuinely useful as an alternative pattern, and because another Brown-Forman brand actually runs it in production:

GET https://apps.dotter.me/687a05179d87ce1d9fc7b6dc/main.js

Loaded lazily on “Buy Now” click, opens a full-screen modal. Dotter (dotter.me) is a “Where to Buy” platform combining a physical store locator with multi-retailer e-commerce links; their public client list includes other spirits brands. Each brand using Dotter gets its own app ID (687a05179d87ce1d9fc7b6dc above is Jack Daniel’s specifically).

Approach: build for Herradura’s pattern, don’t assume Dotter

Given Herradura doesn’t use Dotter, the retail-locator package should be scoped around a custom Google Maps-based locator, not a Dotter wrapper:

import { WhereToBuy } from "@brown-forman/p1-retail-locator"; <WhereToBuy retailerDataSource={process.env.NEXT_PUBLIC_RETAILER_API_URL!}> Buy Now </WhereToBuy>

This is a meaningfully bigger build than wrapping Dotter would have been: Dotter owns the retailer dataset and pricing/availability sync as a service; a custom Maps-based locator means we’re responsible for the retailer data source (an API, a CSV import, a manual admin list, undetermined) as well as the map UI itself.

Config shape

interface RetailLocatorConfig { googleMapsApiKey: string; /** Where retailer data comes from. The actual mechanism is unconfirmed, see below. */ retailerDataSource: string; mapMarkerStyle?: "brand" | "default"; }

Open questions for this page now live on Outstanding Questions, tracked centrally across all pages rather than repeated per page.

Last updated on