WINE FOUNDRY / WINE & SPIRITS RETAIL
Inside Wine Foundry Commerce
The same bottle can appear on a distributor purchase order, at the register, on a tasting page, and in an inventory report. Each place needs a different view of it. Wine Foundry Commerce keeps those views connected by giving the underlying data and business rules clear owners.
Assemble established components around the shop
WFC builds on open-source components and adds the workflows a wine retailer needs. Medusa is the commerce engine for products, prices, inventory, carts, orders, and customers. The browser POS and Next.js storefront both use it. Payload runs inside the storefront application and gives editors a place to manage bottle descriptions, imagery, event details, gift card designs, and basket presentation.
Each deployment has a PostgreSQL instance for its application data. Commerce, content, and analytics have their own schemas. Python jobs run through Hatchet to build derived analytics, and Metabase gives staff a place to work with the reporting data. Docker Compose defines the services that run together.

Give each retail experience the rules it needs
Consider a bottle that staff have just added to the catalog. Medusa owns its sellable status, channel, price, and stock. Payload owns the story shoppers see, including the tasting details and label image. The storefront shows the bottle when it’s sellable, offered online, and its content has been published. The shop can have it ready for the register while an editor finishes the page.
The same division supports three other first-class objects. A tasting has its own content, lineup, and ticket experience, with seats tracked through commerce inventory. A gift card has a design and delivery experience alongside a redeemable balance. A configurable basket combines editorial presentation with commerce rules for valid choices and inventory-backed components. Each has its own storefront experience and uses the same commerce engine for checkout and orders.


See how that division works for tastings and ticketing and for bottles and configurable baskets.
Give reporting a stable basis
When staff receive bottles against a PO, Medusa workflows handle the receipt and inventory changes. The analytics jobs build the views used for buying decisions and reporting. For example, a vendor’s invoice price answers what the shop paid the supplier. Landed cost also accounts for relevant receiving charges, such as freight, and supports margin and stock-value reporting. Keeping both definitions gives the buyer and the owner figures suited to the questions they’re asking.
Give the people maintaining the system a clear path
The WFC portal gives shop staff, operators, and developers their own guides. It covers day-to-day workflows as well as operational procedures such as releases, backups, and recovery. A separate test environment gives the team a place to try changes before they reach the live shop.
AI assistants can consult the portal and use tools to inspect the system, explain what they find, and suggest changes. The team reviews those suggestions and decides what to act on.
