Flight Fare Family, Baggage and Ancillary Normalization
Normalize fare families, baggage allowances and ancillaries from airline/GDS/NDC sources into a canonical flight-offer model.
Price alone is not enough to compare flight offers. The same itinerary can represent a different economic product because of fare family, baggage and ancillary differences.
Canonical offer
Keep itinerary, source, fare family/brand, cabin, checked baggage, carry-on, seat inclusion, change/refund conditions, included services, optional ancillaries and total price as explicit dimensions.
Fare family
Do not convert provider brand names directly into one canonical enum. Preserve the source brand and normalize capabilities.
Names such as Light, Economy Basic, EcoFly and Economy Saver are not automatically equivalent.
Baggage
Model piece concept, weight concept, carry-on, checked baggage, passenger scope and segment/journey scope separately.
1PC and 23KG do not express the same semantic.
Ancillaries
Represent seats, bags, meals, priority and lounge as included, optional-paid, unavailable or unknown.
Deduplication
Same flight + same price but different fare family or baggage is not a duplicate.
Include itinerary, source, fare-family attributes, baggage, refund/change rules and included services in the offer fingerprint.
Failure modes
- false equivalence by brand name,
- losing baggage units,
- promoting segment-level baggage to itinerary level,
- treating included services as paid,
- losing source-specific restrictions.
Observability
Track normalization coverage, unknown baggage ratio, unknown fare-condition ratio, ancillary mapping gaps and cross-source mismatches.
Planning a similar integration?
We can review requirements, feed/API design and the production approach with you.