{"slug": "why-a-shopping-cart-can-t-price-a-hotel-stay", "title": "Why a shopping cart can't price a hotel stay", "summary": "Soumaya Khalifa, founder of FullDo, built FullTravel, a Symfony and PostgreSQL SaaS platform that models hotel rate contracts as sequences of nightly rates rather than single product prices, allowing independent inbound agencies and tour operators to quote stays correctly. The platform uses AI to read hotel PDFs and propose rate grids, with safeguards in place before shipping, and a shared catalogue feeds the back-office, agency booking sites and a reseller extranet so a single rate change updates all three.", "body_md": "If you have ever tried to sell hotel stays through a regular e-commerce stack, you hit the wall fast. A product has a price. A hotel night does not: it has a contract.\n\nWhile building [FullTravel](https://fulltravel.fr/), a SaaS for independent inbound agencies and tour operators, I had to model what hotels actually send. Here is the list of concepts a pricing engine has to understand before it can quote a single stay correctly:\n\nNone of this fits in a `price` column. The engine has to evaluate a stay as a sequence of nights, apply the right contract line to each one, then layer child policies, supplements, promotions and margin on top.\n\nContract entry is the slowest step for an agency, so FullTravel uses AI to read the hotel's PDF and propose the rate grid. Two rules made this safe to ship:\n\nThe same catalogue feeds the back-office, the agency's own booking site and a reseller extranet with net rates. Changing a rate once updates all three, which is what agencies actually wanted: fewer places where a price can be wrong.\n\nThe stack is Symfony and PostgreSQL. If you work in travel tech, the demo is open: [https://fulltravel.fr/](https://fulltravel.fr/)\n\nI'm Soumaya Khalifa, founder of [FullDo](https://fulldo.fr/), where I build websites and custom business tools for small businesses and agencies.", "url": "https://wpnews.pro/news/why-a-shopping-cart-can-t-price-a-hotel-stay", "canonical_source": "https://dev.to/fulldo/why-a-shopping-cart-cant-price-a-hotel-stay-20i0", "published_at": "2026-09-29 07:09:02+00:00", "updated_at": "2026-09-29 07:16:37.500612+00:00", "lang": "en", "topics": ["ai-products", "ai-tools", "artificial-intelligence"], "entities": ["FullTravel", "FullDo", "Soumaya Khalifa", "Symfony", "PostgreSQL"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/why-a-shopping-cart-can-t-price-a-hotel-stay", "markdown": "https://wpnews.pro/news/why-a-shopping-cart-can-t-price-a-hotel-stay.md", "text": "https://wpnews.pro/news/why-a-shopping-cart-can-t-price-a-hotel-stay.txt", "jsonld": "https://wpnews.pro/news/why-a-shopping-cart-can-t-price-a-hotel-stay.jsonld"}}