{
  "p": {
    "provider_id": "TP-112",
    "name": "Marseille Aviation Ground",
    "station": "MRS",
    "country": "FR",
    "contract_id": "TC-112",
    "contract_start": "2026-01-01",
    "contract_end": "2026-11-30",
    "status": "expiring",
    "rate_model": "per_transfer",
    "base_rate": 117.07,
    "currency": "EUR",
    "vehicle_types": "Minibus 8, Coach 16, Sedan 3",
    "capacity_max": 16,
    "meet_and_greet": 1,
    "flight_tracking": 1,
    "sla_minutes": 22,
    "contact_name": "Anna Faber",
    "contact_email": "ops@marseilletransfers.com",
    "contact_phone": "+42 5598084",
    "notes": "No flight tracking — crew have waited on delayed inbounds."
  },
  "contract": {
    "contract_id": "TC-112",
    "provider_id": "TP-112",
    "station": "MRS",
    "entity_scope": "ASL Airlines Belgium",
    "start_date": "2026-01-01",
    "end_date": "2026-11-30",
    "currency": "EUR",
    "sla_minutes": 22,
    "waiting_time_included_minutes": 30,
    "waiting_time_rate": 42.83,
    "night_surcharge_pct": 15,
    "airport_access_fee": 0,
    "cancellation_hours": 12,
    "no_show_charge_pct": 50,
    "payment_terms": "Net 45, invoice",
    "payment_terms_days": 14,
    "flight_tracking_required": 1,
    "meet_and_greet_included": 1,
    "sla_penalty_pct": 25,
    "auto_renew": 0,
    "renewal_notice_days": 30,
    "signed_on": "2025-12-05",
    "signed_by": "R. Menon",
    "status": "expiring"
  },
  "contacts": [
    {
      "contact_id": "TCT-59",
      "provider_id": "TP-112",
      "role": "account_manager",
      "name": "Niall Moreau",
      "email": "account@marseilleaviatio.example",
      "phone": "+43 30 6234525",
      "hours": "Mon–Fri 09:00–17:00",
      "primary_contact": 1
    },
    {
      "contact_id": "TCT-62",
      "provider_id": "TP-112",
      "role": "billing",
      "name": "Karl Sato",
      "email": "billing@marseilleaviatio.example",
      "phone": "+41 69 7853472",
      "hours": "Mon–Fri 09:00–17:00",
      "primary_contact": 0
    },
    {
      "contact_id": "TCT-60",
      "provider_id": "TP-112",
      "role": "dispatch",
      "name": "Elena Byrne",
      "email": "dispatch@marseilleaviatio.example",
      "phone": "+40 48 3423047",
      "hours": "24/7",
      "primary_contact": 0
    },
    {
      "contact_id": "TCT-61",
      "provider_id": "TP-112",
      "role": "night_desk",
      "name": "Elena Hendricks",
      "email": "night@marseilleaviatio.example",
      "phone": "+43 55 3701734",
      "hours": "22:00–06:00",
      "primary_contact": 0
    },
    {
      "contact_id": "TCT-63",
      "provider_id": "TP-112",
      "role": "operations",
      "name": "Tomas Moreau",
      "email": "operations@marseilleaviatio.example",
      "phone": "+40 59 5145113",
      "hours": "Mon–Sun 06:00–22:00",
      "primary_contact": 0
    }
  ],
  "tariffs": [
    {
      "tariff_id": "TT-67",
      "contract_id": "TC-112",
      "provider_id": "TP-112",
      "vehicle_class": "sedan",
      "seats_max": 3,
      "rate_basis": "per_transfer",
      "rate": 79.34,
      "currency": "EUR",
      "applies_from": "06:00",
      "applies_to": "22:00",
      "min_charge": 63.47,
      "note": null
    },
    {
      "tariff_id": "TT-68",
      "contract_id": "TC-112",
      "provider_id": "TP-112",
      "vehicle_class": "sedan",
      "seats_max": 3,
      "rate_basis": "per_transfer",
      "rate": 93.61,
      "currency": "EUR",
      "applies_from": "22:00",
      "applies_to": "06:00",
      "min_charge": 71.41,
      "note": "Night tariff. Most crew transfers fall in this window."
    },
    {
      "tariff_id": "TT-69",
      "contract_id": "TC-112",
      "provider_id": "TP-112",
      "vehicle_class": "mpv",
      "seats_max": 6,
      "rate_basis": "per_transfer",
      "rate": 111.95,
      "currency": "EUR",
      "applies_from": "06:00",
      "applies_to": "22:00",
      "min_charge": 89.56,
      "note": null
    },
    {
      "tariff_id": "TT-70",
      "contract_id": "TC-112",
      "provider_id": "TP-112",
      "vehicle_class": "mpv",
      "seats_max": 6,
      "rate_basis": "per_transfer",
      "rate": 128.83,
      "currency": "EUR",
      "applies_from": "22:00",
      "applies_to": "06:00",
      "min_charge": 100.76,
      "note": "Night tariff. Most crew transfers fall in this window."
    },
    {
      "tariff_id": "TT-71",
      "contract_id": "TC-112",
      "provider_id": "TP-112",
      "vehicle_class": "minibus",
      "seats_max": 12,
      "rate_basis": "per_transfer",
      "rate": 168.18,
      "currency": "EUR",
      "applies_from": "06:00",
      "applies_to": "22:00",
      "min_charge": 134.54,
      "note": null
    },
    {
      "tariff_id": "TT-72",
      "contract_id": "TC-112",
      "provider_id": "TP-112",
      "vehicle_class": "minibus",
      "seats_max": 12,
      "rate_basis": "per_transfer",
      "rate": 209.45,
      "currency": "EUR",
      "applies_from": "22:00",
      "applies_to": "06:00",
      "min_charge": 151.36,
      "note": "Night tariff. Most crew transfers fall in this window."
    }
  ],
  "fleet": [
    {
      "fleet_id": "TF-41",
      "provider_id": "TP-112",
      "vehicle_class": "sedan",
      "seats": 3,
      "count_total": 8,
      "count_dedicated": 0,
      "wheelchair_accessible": 0,
      "luggage_capacity": "2 cases",
      "avg_age_years": 5.46,
      "note": null
    },
    {
      "fleet_id": "TF-42",
      "provider_id": "TP-112",
      "vehicle_class": "mpv",
      "seats": 6,
      "count_total": 10,
      "count_dedicated": 0,
      "wheelchair_accessible": 0,
      "luggage_capacity": "6 cases",
      "avg_age_years": 6.37,
      "note": null
    },
    {
      "fleet_id": "TF-43",
      "provider_id": "TP-112",
      "vehicle_class": "minibus",
      "seats": 12,
      "count_total": 13,
      "count_dedicated": 0,
      "wheelchair_accessible": 1,
      "luggage_capacity": "14 cases",
      "avg_age_years": 6.32,
      "note": null
    },
    {
      "fleet_id": "TF-44",
      "provider_id": "TP-112",
      "vehicle_class": "coach",
      "seats": 30,
      "count_total": 1,
      "count_dedicated": 0,
      "wheelchair_accessible": 1,
      "luggage_capacity": "34 cases",
      "avg_age_years": 5.29,
      "note": null
    }
  ],
  "audits": [
    {
      "audit_id": "TAU-11",
      "provider_id": "TP-112",
      "audited_on": "2026-05-07",
      "auditor": "Routespring Supplier Assurance",
      "operator_licence_ref": "FR-PSV-44727",
      "licence_expiry": "2027-12-29",
      "insurance_ref": "INS-440359",
      "insurance_expiry": "2027-04-05",
      "insured_value": 11000000,
      "driver_vetting_ok": 1,
      "drug_alcohol_policy_ok": 1,
      "vehicle_inspection_ok": 1,
      "gps_tracking_ok": 1,
      "score": 4.62,
      "outcome": "pass",
      "actions": null,
      "reinspect_due": "2027-05-07"
    }
  ],
  "use": {
    "legs": 164,
    "cost": 20194.59,
    "cost_per_leg": 123.13774390243903,
    "seats": 510,
    "late_pct": 7.926829268292683,
    "delay_total": 557,
    "rest_impact": 343,
    "failures": 8,
    "pooled": 17
  },
  "byPeriod": [
    {
      "period": "2026-03",
      "legs": 168,
      "cost": 20867.7,
      "late_pct": 7.142857142857143
    },
    {
      "period": "2026-04",
      "legs": 176,
      "cost": 21922.74,
      "late_pct": 10.795454545454545
    },
    {
      "period": "2026-05",
      "legs": 172,
      "cost": 21492.41,
      "late_pct": 10.465116279069768
    },
    {
      "period": "2026-06",
      "legs": 186,
      "cost": 23198.96,
      "late_pct": 10.75268817204301
    },
    {
      "period": "2026-07",
      "legs": 162,
      "cost": 20150.9,
      "late_pct": 14.197530864197532
    },
    {
      "period": "2026-08",
      "legs": 164,
      "cost": 20194.59,
      "late_pct": 7.926829268292683
    }
  ]
}