E-commerce platform
Kilometro.ch

The starting point
A Swiss specialist bike shop needed more than an off-the-shelf online shop. Its product catalogue, with thousands of variants, comes from the supplier system Cycly — it has to be synced automatically, described in three languages and kept up to date with current stock levels. On top of that, product copy shouldn't be written by hand, but generated and translated with the help of AI.
What we built
Kilometro.ch is a bespoke e-commerce platform built on Payload CMS 3, React Router 7 and PostgreSQL. The frontend renders on the server for fast load times and good visibility in search engines. The backend manages products, orders, customers and content from a single admin interface.
An automated import workflow syncs categories, products and stock availability from the Cycly API. New items are imported, existing ones updated and outdated ones archived — with no manual intervention.
AI-assisted content management
Anthropic's Claude writes product descriptions in German, English and French. Every translation goes through an automatic quality check: if the confidence score falls below 85 %, the text is generated again. That keeps the quality consistent, even across hundreds of products.
A second module automatically searches the cycling trade press — BikeRadar, Velomotion, CyclingWeekly and others — for professional reviews. It condenses the reviews it finds into short summaries and quotes that stay within fair use, and attaches them to the matching product.
Search, checkout and customer accounts
Meilisearch provides full-text search with faceted filters across the whole catalogue — including brand, category, size, colour and price. Stripe handles payments, with support for credit cards, payment in advance and in-store collection. Guests can order without an account; customers who register manage their addresses and order history in an OAuth2-based customer portal.
Let's talk
Every project starts with a free, no-strings-attached conversation. Tell us where you are and where you want to go.