# Selling wine, beer or spirits online

> A bottle is not an item like any other: heavy, fragile, regulated on dispatch, barred from most paid advertising channels, and turned into a different product every year by its vintage.

- Source canonique : [https://allaux.fr/en/secteurs/vin-biere-spiritueux](https://allaux.fr/en/secteurs/vin-biere-spiritueux)
- Langue : EN
- Dernière mise à jour : 2026-09-30

## Destinations are decided in code, not in the terms

Alcoholic drinks move under their own excise duty regime, and sending them to a private individual in another member state comes with declaration formalities. I don’t advise on that tax side, but the technical translation is clear enough: the shop must be able to refuse a destination at carrier and checkout level, not merely state it in its terms of sale.

In practice that means delivery zones restricted by product category, a check at the point the address is chosen, and a basket that refuses to move to payment rather than an order cancelled afterwards. A rule written somewhere on a legal page blocks nothing: the carrier calculation is what decides.

On top of that sits the ban on selling alcohol to minors. An age check belongs in the journey, the statutory health message has to be present, and proof of the buyer’s acknowledgement should be stored with the order, not just shown on screen.

## A closed acquisition channel shifts the priorities

Advertising platforms refuse or heavily restrict alcoholic products. A standard product feed pushed to a shopping comparison service or a social network is not simply ignored: it can get the whole merchant account suspended, including the non-alcoholic accessories in the same catalogue.

The consequence is technical rather than commercial. Acquisition then rests on organic search and owned channels, which raises the priority of page speed, of catalogue structure by appellation, grape, region and vintage, of listing page quality, and of the mailing list. Where another shop can paper over a badly structured catalogue with ad budget, a wine merchant cannot.

## The hard points of an online cellar

- The vintage is a variant in its own right: the same wine in two years is not the same product, and each carries its own stock and price.
- Add format, from half bottle to magnum, and packaging, six-pack or wooden case, which are not cosmetic options.
- Real weight climbs fast and rate tables based on gross weight become absurd: pricing goes by number of bottles.
- Packing and breakage call for specific materials and often specialist carriers, with delivery against signature.
- En primeur sales cover a product that cannot be delivered yet, with a deferred release date and stock that does not physically exist.
- A mixed basket, in stock plus en primeur, needs two dispatch dates and clear wording, or the customer waits for the lot without knowing why.
- Eligible destinations differ by product category, which rules out a single delivery rule for the whole catalogue.

## How I take on this kind of shop

1. **I model the vintage as an attribute, not a word in the title** — Vintage, format and packaging become attributes generating distinct combinations. Each carries its own stock, price and availability, so the remainder of one year can sell while the next comes to market, without duplicating the page or scattering the reference’s history.
2. **I close destinations at carrier level** — I attach restricted products to carriers whose zones are explicitly limited, then check how the basket behaves when it mixes a restricted item with an unrestricted one. That is the test that matters: what happens when both sit in the same order.
3. **I put the age check in the right place** — An interstitial on arrival hampers crawling and adds little. I prefer a check built into the checkout, before payment, storing the timestamp of the acknowledgement on the order, with the health message displayed where it belongs.
4. **I clean up outbound feeds** — I filter what goes to advertising platforms upstream so no alcoholic product slips through. An unfiltered feed puts the entire account at risk, not just the offending line.
5. **I split in-stock and en primeur in the basket** — The en primeur line carries a release date and stays out of the immediate parcel calculation. Checkout announces two separate dispatches, and picking only sees the deferred line once the stock becomes real.

## Shipping, feeds and attributes

- **Carriers and delivery on PrestaShop** — Zones, rate tables, per-product restrictions: the settings that really govern what can ship and where. ([/prestashop/transporteurs-livraison](/prestashop/transporteurs-livraison))
- **Google Merchant Center feed for PrestaShop** — How a product feed is built, and why upstream filtering matters as much as the format itself. ([/services/tracking/flux-google-merchant-center-prestashop](/services/tracking/flux-google-merchant-center-prestashop))
- **Wrong VAT and net/gross prices on PrestaShop** — Rounding gaps and badly matched tax rules on baskets mixing several product families. ([/prestashop/problemes/tva-prix-ht-ttc-incorrect](/prestashop/problemes/tva-prix-ht-ttc-incorrect))
- **Product attribute** — What an attribute is, how it differs from a feature, and when it should become a combination. ([/glossaire/attribut-produit](/glossaire/attribut-produit))

## An unfiltered product feed risks the whole merchant account

> Sending a full catalogue containing bottles to an advertising platform does not simply get those lines rejected. Suspension applies to the account, so it also hits the glassware, gift boxes and accessories the shop could have promoted without difficulty. Filtering belongs in feed generation, not in hope of leniency at the other end.

## FAQ

### Should the vintage be an attribute or a separate product?

An attribute, in the vast majority of cases. Two vintages share the appellation, the estate and much of the editorial content, but not their stock or price. Treating them as combinations keeps one reference page while letting each year live separately.

### How do I stop an order to a prohibited destination?

By restricting zones on the carrier attached to the products concerned, and by testing a mixed basket. A line in the terms blocks nothing technically: only the delivery calculation can refuse the move to payment.

### Is an age gate on the homepage useful?

It hinders crawling and is bypassed with one click. I would rather place the check in the checkout, before payment, and keep the record of the acknowledgement with the order. The aim is evidence, not a curtain.

### How should shipping on bottles be priced?

By number of bottles rather than gross weight. Protective packing shifts the billed weight in ways unrelated to the contents, and specialist carriers themselves think in bottle counts. A per-kilogram table produces permanent discrepancies.

### Can en primeur be sold on a standard platform?

Not without work. You need a notion of non-physical stock, a release date carried on the order line, and a basket able to announce two dispatches. Without that, picking sees an incomplete order and the customer thinks delivery is late.
