← Site
← AI Search / Specs

Pricing module state matrix

How the destination-detail pricing module adapts as the agent learns more about the trip. Change what’s known to see the module, the rule behind it and what the agent should ask next.

Entry
EXP-001
Type
Spec
Version
v0.4
Surface
AI Trip Planner · destination detail
Status
Live
Last updated
23 Oct 2026

Prototype fixtures. Prices, dates and journey times are representative values for demonstrating the rules, not live fares or timetables. This is a UX specification, not booking logic.

Known trip parameters

Route
Dates
Journey

Passengers

Always priced for 1 adult, whatever passengers the customer mentions in the chat.

Example customer message

What is there to do in Paris?

Preview · Destination detail, Paris

London → Paris

2h 16m · Direct

City centre to city centre

Getting there with Eurostar

1 adult

From £39 each way*

Find lowest fares

*Tickets from £39

See our lowest fare finder for tickets from £39 per person one way based on a mandatory return trip in Eurostar Standard from London St Pancras International to Paris for travel between 21/10/2026 and 31/01/2027. Subject to availability. Availability varies according to dates and times. Blackout dates may apply. The earlier you book, the more availability. Correct as at 30/09/2026.

State D-01 · Approved

No dates yet. The module shows the lowest each-way fare, based on a return trip, for 1 adult with its legal footnote, and leads to the lowest fare finder.

14 pricing states

Every distinct state of the module, by route and dates. Select a row to load it into the preview.

14 states

StateRouteDatesJourneyShowsCTAApprovedAction
D-01DirectNo datesUnknown1 adultFrom £39 each way*Find lowest faresApproved
D-02DirectNo datesReturn1 adultFrom £78 returnFind lowest faresApproved
D-03DirectNo datesOne way1 adultFrom £53 one wayFind lowest faresApproved
D-04DirectBroad datesUnknownLeaving 1 Sep - 30 Sep • 1 adultFrom £39 each way*Find lowest faresApproved
D-05DirectBroad datesReturnLeaving 1 Sep - 30 Sep • 1 adultFrom £78 returnFind lowest faresApproved
D-06DirectBroad datesOne wayLeaving 1 Sep - 30 Sep • 1 adultFrom £53 one wayFind lowest faresApproved
D-07DirectSpecific datesOne way10 Sep • 1 adultFrom £63 one wayView trainsApproved
D-08DirectSpecific datesReturn10 Sep - 15 Sep • 1 adultFrom £94 returnView trainsApproved
C-01ConnectionNo datesUnknown / ReturnBased on 12 Nov - 15 Nov • 1 adultFrom £177 returnView trainsApproved
C-02ConnectionNo datesOne wayBased on 12 Nov • 1 adultFrom £95 one wayView trainsApproved

Decisions

8 decisions

NumberDecisionWhyAgreed by
1Always show the price for 1 adult, and carry the party forward. Whatever passengers the customer mentions, the module quotes a single adult fare. The button passes the customer’s party on to train results or the lowest fare finder.Consistent with journey search, which only shows totals in the basket. Customers are comparing destinations at this stage, and an accurate total would need every passenger’s age. Child fares also aren’t easy to retrieve.Design, Product, Dev
2Unknown journeys show the each-way price; returns show the return price. Without exact dates, an unknown journey shows “From £39 each way*”, based on a return trip. A known return shows “From £78 return”, and one way shows “From £53 one way”, with no star or footnote.The each-way price follows the existing landing-page convention when we don’t know the journey. Once the customer says it’s a return, the full return price is more useful.Design, Product, Dev
3Only the each-way “From” price carries a legal footnote. Retain the approved fare copy on the each-way price (“From £39 each way*”), with destination-specific wording, fixed grammar (“between … and …”), and “lowest fare finder” as plain text rather than a link. No footnote is required for return, one-way or exact-date prices, or the Lowest Fare Finder page.Return and one-way prices already specify the journey type. The destination-specific Lowest Fare Finder guarantees the advertised “From” fare on the trains page, making additional footnotes unnecessary.Legal, Design, Product
4Other travel classes will change the price and the class name. Approved for later, not in the MVP: Eurostar Plus shows “from £70” and Eurostar Premier “from £250”, with the footnote’s heading price and class name following.The footnote has to match the price and class shown.Legal, Design
5One date shows the one-way price; two dates show the return price. With only one date, the agent follows up to check whether the customer needs a return.Doesn’t invent a return date, and matches what the train search shows for a single date. The follow-up catches a forgotten return.Design
6Broad date ranges have a maximum length. Searches stay simple, with no complex logic such as checking every weekend for the next three months. The prototype currently caps a range at 62 days.Long date horizons mean many searches and slower, costlier pricing.Dev, Product, Design
7Connections follow the route map treatment, with no “Choose dates” step. The module shows an example price and the dates it’s based on, then “View trains” goes straight to train results for those dates. The example trip is three nights, eight weeks ahead, or at the start of the customer’s range when they give broad dates. The dates and “1 adult” share the first line, and the price says “From”, as on direct routes (Option B, approved by Legal on 29 October 2026).Matches the route map, an approved, live pattern. Legal is unlikely to accept an example price followed by a date picker without prices, and it avoids a blank fare calendar.Design, Product, Legal
8Journey details sit behind “Getting there with Eurostar”. For connections, a next-level page shows the route with actual times for a specific train, probably the earliest of the day, along with the journey time disclaimer.Keeps the pricing module simple by moving the journey time disclaimer, which is legal copy, to the next page. Connection journey times also vary by train.Design

Open questions

  1. 1How is the footnote’s date range set? The approved wording says “for travel between 21/10/2026 and 31/01/2027”. How that range is determined isn’t decided. The Lowest Fare Finder’s search window is closer to 11 months and is being investigated, so the footnote’s range may need to match it. The dates shown are placeholders from the review board. · Product, Dev, Legal
  2. 2Where does the “Correct as at” date come from? A content question rather than a design one. Until it’s settled, the board’s example date (30/09/2026) is shown. · Product
  3. 3What disclaimer should the AI chat show? “AI can make mistakes. Check important info.” was not approved. As the merchant, Eurostar is accountable for what it tells customers, such as price and destination, so a vague, generic disclaimer isn’t acceptable. The designs now borrow “AI can make mistakes. Verify any answers that seem off.” from the new service bot designs, which Legal approved for the app; Lorraine is checking internally whether this condensed disclaimer applies to mobile and desktop web. This isn’t part of the pricing module. · Legal, Product
  4. 4What’s the maximum broad date range? And how should the agent read school holidays and similar phrases? · Dev, Design, Product

Later

  • Class of travel. The lowest fare finder lets customers choose a class. Legal has approved the footnote copy for Eurostar Plus and Premier, but it isn’t in the MVP.
  • No price available. What does the module show for a sold-out date?

Got something to add?

Constraints

  1. 1The lowest fare finder only returns adult fares. So without exact dates, prices can only be for 1 adult.
  2. 2Connections can’t be priced for a date range. They need a specific outbound date.
  3. 3Connection pricing calls have a cost. Price only once the customer has shown interest, not across many destinations at once.
  4. 4One destination and date range at a time. Mixing route types, such as direct and connecting, would need a second footnote.

Principles

  1. 1Get more specific as the agent learns more. No dates gives a “From” price; exact dates give the price for those dates and lead to trains.
  2. 2Quote one adult, consistently. Whatever the party, the module shows the price for 1 adult, as journey search does.
  3. 3Only show prices we can stand behind. No calculated child fares, and no connection price for a date range. Show an example or ask for dates instead.
  4. 4Say what the price is based on. Example prices name their dates, and date ranges say they’re when the customer leaves. “From” prices carry their legal footnote, and every price says it’s for 1 adult.