---
title: "Flight Fare Family, Baggage ve Ancillary Normalization"
description: "Farklı airline/GDS/NDC kaynaklarındaki fare family, baggage allowance ve ancillary'leri canonical flight offer modeline normalize edin."
slug: "flight-fare-family-baggage-ancillary-normalization"
translationKey: "guide-flight-fare-family-baggage-ancillary-normalization"
locale: "tr"
type: "guide"
category: "flight"
tags: ["fare-family","baggage","ancillary","normalization","ndc"]
publishedAt: "2026-09-26"
updatedAt: "2026-09-26"
reviewedAt: "2026-09-26"
sources:
  - title: "IATA NDC"
    url: "https://www.iata.org/en/programs/airline-distribution/retailing/ndc/"
  - title: "Travelport NDC Guide"
    url: "https://support.travelport.com/webhelp/jsonapis/airv11/content/air11/NDC/NDCGuide.htm"
---
Flight offer karşılaştırmasında yalnız total price normalize etmek yeterli değildir. Aynı itinerary farklı fare family, baggage ve ancillary içeriğiyle ekonomik olarak farklı üründür.

## Canonical offer

```text
Itinerary
Offer
  -> Source
  -> Fare family / brand
  -> Cabin
  -> Checked baggage
  -> Carry-on baggage
  -> Seat inclusion
  -> Change/refund conditions
  -> Included services
  -> Optional ancillaries
  -> Total price
```

## Fare family

Provider brand name'i canonical enum yapmak yerine provider brand + normalized attributes birlikte tutulmalıdır.

Örnek:
- Light,
- Economy Basic,
- EcoFly,
- Economy Saver

isim olarak eşdeğer değildir; baggage/refund/change özellikleri üzerinden karşılaştırılmalıdır.

## Baggage

Ayrı modelleyin:
- piece concept,
- weight concept,
- carry-on,
- checked,
- per passenger,
- per segment/journey.

`1PC` ile `23KG` aynı semantic değildir.

## Ancillary

Seat, bag, meal, priority, lounge gibi services:
- included,
- optional-paid,
- unavailable,
- unknown

state'lerinden biriyle tutulmalıdır.

## Dedup

Aynı flight + aynı price fakat farklı fare family veya baggage → duplicate değildir.

Offer fingerprint en az:
- itinerary,
- source,
- fare family attributes,
- baggage,
- refund/change,
- included services

içermelidir.

## Failure modes

- brand name üzerinden yanlış equivalence,
- baggage unit kaybı,
- segment-level baggage'i itinerary-level göstermek,
- included ancillary'yi paid sanmak,
- source-specific restriction kaybı.

## Observability

Normalization coverage, unknown baggage ratio, unknown fare-condition ratio, ancillary mapping gap ve cross-source mismatch izlenmelidir.
