{
  "asOf": "2026-10-25",
  "city": "Cape Town",
  "currency": "ZAR",
  "providers": [
    {
      "id": "north-kido-kids",
      "name": "Kido Kids",
      "suburb": "Van Riebeeckshof, Bellville",
      "area": "north",
      "minAgeMonths": 3,
      "maxAgeMonths": 60,
      "ageLabel": "3 months to 5 years",
      "summary": "Childcare provider in Van Riebeeckshof, Bellville with published fee information.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://kidokids.co.za/",
      "phone": "021 913 7704",
      "email": "info@kidokids.co.za",
      "hoursLabel": "Half day: 07:00–14:30 (Monday–Friday); Full day: 07:00–17:30 (Monday–Friday)",
      "feeOptions": [
        {
          "id": "north-kido-kids-fee-1",
          "label": "Half day; 5 days/week; Babies and Tods: 3 months–3 years",
          "session": "half",
          "year": 2026,
          "monthly": 5050,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration levy",
              "amount": 1800,
              "refundable": false,
              "conditions": "once_off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Effective from 2026-08-01",
            "Meals"
          ],
          "sourceIds": [
            "north-kido-kids-s1"
          ]
        },
        {
          "id": "north-kido-kids-fee-2",
          "label": "Full day; 5 days/week; Babies and Tods: 3 months–3 years",
          "session": "full",
          "year": 2026,
          "monthly": 5400,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration levy",
              "amount": 1800,
              "refundable": false,
              "conditions": "once_off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Effective from 2026-08-01",
            "Meals"
          ],
          "sourceIds": [
            "north-kido-kids-s1"
          ]
        },
        {
          "id": "north-kido-kids-fee-3",
          "label": "Half day; 5 days/week; Toddlers: 3–5 years",
          "session": "half",
          "year": 2026,
          "monthly": 5050,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 36,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration levy",
              "amount": 1800,
              "refundable": false,
              "conditions": "once_off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Effective from 2026-08-01",
            "Meals"
          ],
          "sourceIds": [
            "north-kido-kids-s1"
          ]
        },
        {
          "id": "north-kido-kids-fee-4",
          "label": "Full day; 5 days/week; Toddlers: 3–5 years",
          "session": "full",
          "year": 2026,
          "monthly": 5250,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 36,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration levy",
              "amount": 1800,
              "refundable": false,
              "conditions": "once_off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Effective from 2026-08-01",
            "Meals"
          ],
          "sourceIds": [
            "north-kido-kids-s1"
          ]
        },
        {
          "id": "north-kido-kids-fee-5",
          "label": "Part week; daily finish time not specified; 2 days/week; All ages: 3 months–5 years",
          "session": "all",
          "year": 2026,
          "monthly": 2800,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration levy",
              "amount": 1800,
              "refundable": false,
              "conditions": "once_off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Effective from 2026-08-01",
            "Meals"
          ],
          "sourceIds": [
            "north-kido-kids-s1"
          ]
        },
        {
          "id": "north-kido-kids-fee-6",
          "label": "Part week; daily finish time not specified; 3 days/week; All ages: 3 months–5 years",
          "session": "all",
          "year": 2026,
          "monthly": 3300,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration levy",
              "amount": 1800,
              "refundable": false,
              "conditions": "once_off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Effective from 2026-08-01",
            "Meals"
          ],
          "sourceIds": [
            "north-kido-kids-s1"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": "2027 enquiries invited; operator says availability depends on age group and is discussed after application.",
        "sourceIds": [
          "north-kido-kids-s1",
          "north-kido-kids-s2"
        ]
      },
      "sources": [
        {
          "id": "north-kido-kids-s1",
          "label": "2026 fees effective 1 August; registration levy; contact; age and hours.",
          "url": "https://kidokids.co.za/application-fees/",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 fees effective 1 August; registration levy; contact; age and hours."
        },
        {
          "id": "north-kido-kids-s2",
          "label": "Weekdays; meals included; registration once off; age groups; 2027 enquiry process.",
          "url": "https://kidokids.co.za/faq/",
          "year": 2027,
          "accessedAt": "2026-10-25",
          "notes": "Weekdays; meals included; registration once off; age groups; 2027 enquiry process."
        }
      ],
      "notes": [
        "2027 enquiry invitation does not establish a 2027 fee schedule or any available place.",
        "Part-week finish times, number of billed months and additional compulsory charges require confirmation.",
        "Short December closure; exact dates not stated."
      ]
    },
    {
      "id": "north-little-piece-of-heaven",
      "name": "Little Piece of Heaven Nursery School",
      "suburb": "Ridgeworth, Bellville",
      "area": "north",
      "minAgeMonths": 15,
      "maxAgeMonths": 60,
      "ageLabel": "15 months to 5 years",
      "summary": "Childcare provider in Ridgeworth, Bellville with published fee information.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://littlepieceofheaven.co.za/",
      "phone": "074 126 6469",
      "email": "info@littlepieceofheaven.co.za",
      "hoursLabel": "Half day: 07:15–13:00; Full day: 07:15–17:15",
      "feeOptions": [
        {
          "id": "north-little-piece-of-heaven-fee-1",
          "label": "Half day; 2 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 3300,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Current enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; FAQ says charged at beginning of year; current amount not published there.",
            "Own nappies, wipes and cream for children still in nappies: amount unknown; as_needed; Parent supplied."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-2",
          "label": "Half day; 3 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 3900,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Current enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; FAQ says charged at beginning of year; current amount not published there.",
            "Own nappies, wipes and cream for children still in nappies: amount unknown; as_needed; Parent supplied."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-3",
          "label": "Half day; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 4300,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Current enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; FAQ says charged at beginning of year; current amount not published there.",
            "Own nappies, wipes and cream for children still in nappies: amount unknown; as_needed; Parent supplied."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-4",
          "label": "Full day; 2 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 4000,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Current enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; FAQ says charged at beginning of year; current amount not published there.",
            "Own nappies, wipes and cream for children still in nappies: amount unknown; as_needed; Parent supplied."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-5",
          "label": "Full day; 3 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 4650,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Current enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; FAQ says charged at beginning of year; current amount not published there.",
            "Own nappies, wipes and cream for children still in nappies: amount unknown; as_needed; Parent supplied."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-6",
          "label": "Full day; 5 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 4950,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Current enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; FAQ says charged at beginning of year; current amount not published there.",
            "Own nappies, wipes and cream for children still in nappies: amount unknown; as_needed; Parent supplied."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-7",
          "label": "Half day; 2 days/week",
          "session": "half",
          "year": 2027,
          "monthly": 3550,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "2027 enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; Annual charge described in undated FAQ; 2027 amount unconfirmed."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-8",
          "label": "Half day; 3 days/week",
          "session": "half",
          "year": 2027,
          "monthly": 4200,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "2027 enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; Annual charge described in undated FAQ; 2027 amount unconfirmed."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-9",
          "label": "Half day; 5 days/week",
          "session": "half",
          "year": 2027,
          "monthly": 4650,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "2027 enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; Annual charge described in undated FAQ; 2027 amount unconfirmed."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-10",
          "label": "Full day; 2 days/week",
          "session": "full",
          "year": 2027,
          "monthly": 4300,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "2027 enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; Annual charge described in undated FAQ; 2027 amount unconfirmed."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-11",
          "label": "Full day; 3 days/week",
          "session": "full",
          "year": 2027,
          "monthly": 5000,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "2027 enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; Annual charge described in undated FAQ; 2027 amount unconfirmed."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        },
        {
          "id": "north-little-piece-of-heaven-fee-12",
          "label": "Full day; 5 days/week",
          "session": "full",
          "year": 2027,
          "monthly": 5350,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 15,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "2027 enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Operating fee: amount unknown; annual; Annual charge described in undated FAQ; 2027 amount unconfirmed."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-little-piece-of-heaven-s1",
            "north-little-piece-of-heaven-s2",
            "north-little-piece-of-heaven-s3"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "north-little-piece-of-heaven-s1",
          "label": "2026 and 2027 monthly tuition options; organizational contact; misleading 2026 download labels.",
          "url": "https://littlepieceofheaven.co.za/admissions/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "2026 and 2027 monthly tuition options; organizational contact; misleading 2026 download labels."
        },
        {
          "id": "north-little-piece-of-heaven-s2",
          "label": "Ages and half/full-day hours.",
          "url": "https://littlepieceofheaven.co.za/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Ages and half/full-day hours."
        },
        {
          "id": "north-little-piece-of-heaven-s3",
          "label": "Annual operating fee, parent-supplied nappy items and additional-cost extra murals.",
          "url": "https://littlepieceofheaven.co.za/faq/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Annual operating fee, parent-supplied nappy items and additional-cost extra murals."
        },
        {
          "id": "north-little-piece-of-heaven-s4",
          "label": "Document explicitly dated 2025 despite its 2026 link label; used only as a freshness warning.",
          "url": "https://littlepieceofheaven.co.za/wp-content/uploads/2025/03/Little-Piece-of-Heaven-Enrolment-2025.pdf",
          "year": 2025,
          "accessedAt": "2026-10-25",
          "notes": "Document explicitly dated 2025 despite its 2026 link label; used only as a freshness warning."
        }
      ],
      "notes": [
        "Admissions labels downloads as 2026, but the English enrolment link resolves to a file headed 2025. Its enrolment, operating, holiday and other prices were not carried into 2026/2027 records.",
        "Current tuition page states monthly prices but not billed-month count.",
        "Meals are described on FAQ; inclusion in each current tuition option requires confirmation.",
        "Holiday programmes advertised; current programme prices and exact closure dates not confirmed."
      ]
    },
    {
      "id": "north-kids-kingdom",
      "name": "Kid’s Kingdom Pre-School Centre / Kingdom Babies",
      "suburb": "Goedemoed, Durbanville",
      "area": "north",
      "minAgeMonths": 3,
      "maxAgeMonths": 72,
      "ageLabel": "3 months to 6 years (Grade R)",
      "summary": "Childcare provider in Goedemoed, Durbanville with published fee information.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://kidskingdom.co.za/",
      "phone": "021 976 2012",
      "email": "admin@kidskingdom.co.za",
      "hoursLabel": "Opening hours: 07:00–18:00; Normal school hours: 08:00–12:30",
      "feeOptions": [
        {
          "id": "north-kids-kingdom-fee-1",
          "label": "Baby care until 13:00; 3 days/week; 3–18 months",
          "session": "half",
          "year": 2026,
          "monthly": 3190,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 18,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Baby enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": "Preschool form gives R750; applicability to infant care unconfirmed."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended.",
            "Confirm whether preschool R750 enrolment fee applies to Kingdom Babies."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s2",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-2",
          "label": "Baby care until 18:00; 3 days/week; 3–18 months",
          "session": "full",
          "year": 2026,
          "monthly": 3780,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 18,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Baby enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": "Preschool form gives R750; applicability to infant care unconfirmed."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended.",
            "Confirm whether preschool R750 enrolment fee applies to Kingdom Babies."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s2",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-3",
          "label": "Baby care until 13:00; 5 days/week; 3–18 months",
          "session": "half",
          "year": 2026,
          "monthly": 4345,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 18,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Baby enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": "Preschool form gives R750; applicability to infant care unconfirmed."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended.",
            "Confirm whether preschool R750 enrolment fee applies to Kingdom Babies."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s2",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-4",
          "label": "Baby care until 18:00; 5 days/week; 3–18 months",
          "session": "full",
          "year": 2026,
          "monthly": 5120,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 18,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Baby enrolment fee",
              "amount": null,
              "refundable": null,
              "conditions": "Preschool form gives R750; applicability to infant care unconfirmed."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended.",
            "Confirm whether preschool R750 enrolment fee applies to Kingdom Babies."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s2",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-5",
          "label": "Until 12:30; 3 days/week; Toddler and Teddy Bear classes only",
          "session": "half",
          "year": 2026,
          "monthly": 2010,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes",
            "Three-day price restricted to Toddler and Teddy Bear classes, 18–36 months in the 2026 booklet; not a Grade R price."
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-6",
          "label": "Until 12:30; 5 days/week; 18 months–below Grade R",
          "session": "half",
          "year": 2026,
          "monthly": 2805,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 59,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-7",
          "label": "Until 13:00; lunch included; 5 days/week; 18 months–below Grade R",
          "session": "half",
          "year": 2026,
          "monthly": 3600,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 59,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-8",
          "label": "Until 14:30; lunch included; 5 days/week; 18 months–below Grade R",
          "session": "three-quarter",
          "year": 2026,
          "monthly": 4135,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 59,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-9",
          "label": "Until 18:00; lunch included; 5 days/week; 18 months–below Grade R",
          "session": "full",
          "year": 2026,
          "monthly": 4910,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 59,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-10",
          "label": "Until 12:30; 5 days/week; Grade R",
          "session": "half",
          "year": 2026,
          "monthly": 3205,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 60,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-11",
          "label": "Until 13:00; lunch included; 5 days/week; Grade R",
          "session": "half",
          "year": 2026,
          "monthly": 4000,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 60,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-12",
          "label": "Until 14:30; lunch included; 5 days/week; Grade R",
          "session": "three-quarter",
          "year": 2026,
          "monthly": 4535,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 60,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        },
        {
          "id": "north-kids-kingdom-fee-13",
          "label": "Until 18:00; lunch included; 5 days/week; Grade R",
          "session": "full",
          "year": 2026,
          "monthly": 5310,
          "instalments": 10,
          "annualTuition": null,
          "minAgeMonths": 60,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee",
              "amount": 750,
              "refundable": false,
              "conditions": "Preschool enrolment form; confirm whether the same charge applies to Kingdom Babies."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Library bag: amount unknown; first_invoice; Booklet says each child receives one, charged on first fee invoice.",
            "Snack pack and drink: amount unknown; daily; Parent supplied; school meals depend on care option.",
            "December casual care for children joining from 1 August onward: amount unknown; conditional; Casual rate applies for December days attended."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "10 equal monthly instalments, due 1 February–1 November. A 12-month plan is available on request; its instalment amounts are not published.",
            "Lunch for preschool options ending 13:00 or later",
            "Holiday care for children booked into aftercare",
            "Grade R school-readiness computer classes"
          ],
          "sourceIds": [
            "north-kids-kingdom-s3",
            "north-kids-kingdom-s4",
            "north-kids-kingdom-s5"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "north-kids-kingdom-s1",
          "label": "Public contact, overall age range and opening hours.",
          "url": "https://kidskingdom.co.za/contact-kids-kingdom-pre-school/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Public contact, overall age range and opening hours."
        },
        {
          "id": "north-kids-kingdom-s2",
          "label": "2026 baby and toddler monthly fee options; age bands.",
          "url": "https://kidskingdom.co.za/kingdom-babies/",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 baby and toddler monthly fee options; age bands."
        },
        {
          "id": "north-kids-kingdom-s3",
          "label": "2026 prices by care end time and grade.",
          "url": "https://kidskingdom.co.za/wp-content/uploads/2025/11/KIDS-KINGDOM-SCHOOL-FEES-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 prices by care end time and grade."
        },
        {
          "id": "north-kids-kingdom-s4",
          "label": "Ten instalments; meals; holiday care; library bag; conditional December casual charges.",
          "url": "https://kidskingdom.co.za/wp-content/uploads/2025/11/KIDS-KINGDOM-BOOKLET-2026-EMAIL.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Ten instalments; meals; holiday care; library bag; conditional December casual charges."
        },
        {
          "id": "north-kids-kingdom-s5",
          "label": "2026 enrolment fee; optional breakfast price; street address; payment period.",
          "url": "https://kidskingdom.co.za/wp-content/uploads/2025/11/KIDS-KINGDOM-ENROLMENT-FORM-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 enrolment fee; optional breakfast price; street address; payment period."
        }
      ],
      "notes": [
        "Amounts are monthly instalments over 10 months, not 12 automatically.",
        "Baby class and preschool booking terms may differ; confirm enrolment fee and meals for baby options.",
        "Grade R and younger-child prices differ; preserve the age/grade labels.",
        "Closes for three weeks at Christmas. Aftercare holiday care included for booked aftercare children; casual rates otherwise."
      ]
    },
    {
      "id": "north-curro-brackenfell",
      "name": "Curro Brackenfell Preschool",
      "suburb": "Sonkring, Brackenfell",
      "area": "north",
      "minAgeMonths": null,
      "maxAgeMonths": 60,
      "ageLabel": "2026 fact sheet: 3 months–5 years; duplicate operator page: 2–5 years",
      "summary": "Childcare provider in Sonkring, Brackenfell with published fee information.",
      "approach": null,
      "tags": [
        "operator-published-fees",
        "age-range-needs-confirmation"
      ],
      "website": "https://www.curro.co.za/schools/curro-brackenfell-preschool/",
      "phone": "087 285 4706",
      "email": "info.castlebrackenfell@curro.co.za",
      "hoursLabel": "Early drop-off: 06:30–?; School programme/care: 08:00–18:00",
      "feeOptions": [
        {
          "id": "north-curro-brackenfell-fee-1",
          "label": "Groups 1–5",
          "session": "all",
          "year": 2026,
          "monthly": 4260,
          "instalments": 12,
          "annualTuition": 51120,
          "minAgeMonths": null,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee, payable on application approval",
              "amount": 2835,
              "refundable": false,
              "conditions": "on_enrolment"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero.",
            "Afternoon snack: amount unknown; daily; Parent packs snack according to 2026 fact sheet."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Breakfast, lunch and morning snack",
            "In-class materials"
          ],
          "sourceIds": [
            "north-curro-brackenfell-s2",
            "north-curro-brackenfell-s4"
          ]
        },
        {
          "id": "north-curro-brackenfell-fee-2",
          "label": "Groups 1–5",
          "session": "all",
          "year": 2027,
          "monthly": 4440,
          "instalments": 12,
          "annualTuition": 53280,
          "minAgeMonths": null,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment fee, payable on application approval",
              "amount": 2835,
              "refundable": false,
              "conditions": "on_enrolment"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "north-curro-brackenfell-s3"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "north-curro-brackenfell-s1",
          "label": "Current operator download index for 2026 and 2027 fee letters.",
          "url": "https://www.curro.co.za/schools/curro-brackenfell-preschool/downloads/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Current operator download index for 2026 and 2027 fee letters."
        },
        {
          "id": "north-curro-brackenfell-s2",
          "label": "Current-linked 2026 tuition, twelve months and non-refundable enrolment.",
          "url": "https://www.curro.co.za/media/i0enpmrs/curro-brackenfell-2026-preschool-fee-letter-finalv3-for-web.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Current-linked 2026 tuition, twelve months and non-refundable enrolment."
        },
        {
          "id": "north-curro-brackenfell-s3",
          "label": "2027 tuition, twelve months and non-refundable enrolment.",
          "url": "https://www.curro.co.za/media/0v1b1swr/curro-brackenfell-2027-preschool-fee-letter-final-for-web.pdf",
          "year": 2027,
          "accessedAt": "2026-10-25",
          "notes": "2027 tuition, twelve months and non-refundable enrolment."
        },
        {
          "id": "north-curro-brackenfell-s4",
          "label": "2026 age range, hours, address and inclusions.",
          "url": "https://www.curro.co.za/media/414l11s2/curro-brackenfell-preschool-fact-sheet-2026-1.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 age range, hours, address and inclusions."
        },
        {
          "id": "north-curro-brackenfell-s5",
          "label": "Dedicated preschool contact details.",
          "url": "https://www.curro.co.za/schools/curro-brackenfell-preschool/contact-us/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Dedicated preschool contact details."
        },
        {
          "id": "north-curro-brackenfell-s6",
          "label": "Conflicting age minimum, address and holiday cost statement.",
          "url": "https://www.curro.co.za/schools/curro-brackenfell-preschool/curro-brackenfell-preschool/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Conflicting age minimum, address and holiday cost statement."
        },
        {
          "id": "north-curro-brackenfell-s7",
          "label": "Holiday activities may carry an additional charge; closure period.",
          "url": "https://www.curro.co.za/schools/curro-brackenfell-preschool/facilities/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Holiday activities may carry an additional charge; closure period."
        }
      ],
      "notes": [
        "Minimum admission age and campus address conflict across the operator’s pages; do not label baby admission confirmed.",
        "2026 fact sheet lists school holidays among inclusions; facilities page mentions a minimal activity charge, while another page says no additional cost.",
        "2027 letter establishes tuition and enrolment fee; 2027 care inclusions and extras remain unconfirmed.",
        "Annual tuition excludes the enrolment fee and unknown extras.",
        "Open during school holidays; December/January closure. Operator pages conflict about whether holiday programme activities incur additional charges; confirm.",
        "Dedicated preschool contact page and 2026 fact sheet agree. A duplicate newer operator page lists 67 Vredeveld Street; confirm arrival location."
      ]
    },
    {
      "id": "north-peak-child-milnerton",
      "name": "Peak Child Milnerton",
      "suburb": "Tijgerhof, Milnerton",
      "area": "north",
      "minAgeMonths": 3,
      "maxAgeMonths": 72,
      "ageLabel": "3 months to 6 years",
      "summary": "Childcare provider in Tijgerhof, Milnerton with published fee information.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://www.peakchild.co.za/milnerton",
      "phone": "067 029 1248",
      "email": "leads@peakchild.co.za",
      "hoursLabel": "Full day: 07:00–17:30 (Monday–Friday)",
      "feeOptions": [
        {
          "id": "north-peak-child-milnerton-fee-1",
          "label": "Full day; 5 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 2950,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Administrative fee",
              "amount": 500,
              "refundable": false,
              "conditions": "on_application_finalisation"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation.",
            "No separate refundable deposit stated in the sources checked; absence is not evidence of zero."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "No December school fee; monthly fees payable in advance by the first.",
            "Two cooked meals daily"
          ],
          "sourceIds": [
            "north-peak-child-milnerton-s1"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "north-peak-child-milnerton-s1",
          "label": "2026 monthly fee and eleven-month billing; administrative fee; age, care hours, meals, contact and closure rules.",
          "url": "https://www.peakchild.co.za/milnerton",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 monthly fee and eleven-month billing; administrative fee; age, care hours, meals, contact and closure rules."
        }
      ],
      "notes": [
        "Published price is billed for eleven months, not twelve.",
        "Separate refundable deposit, additional compulsory charges and exact holiday dates not established.",
        "Closes around 15 December to around 10 January; exact dates require confirmation. Also closes on Monday before a Tuesday public holiday and Friday after a Thursday public holiday."
      ]
    },
    {
      "id": "north-junior-junction",
      "name": "Junior Junction Pre-School",
      "suburb": "Table View",
      "area": "north",
      "minAgeMonths": 18,
      "maxAgeMonths": null,
      "ageLabel": "18 months through Grade R",
      "summary": "Childcare provider in Table View with published fee information.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://juniorjunction.org/",
      "phone": "021 557 7813",
      "email": "admin@juniorjunction.org",
      "hoursLabel": "Half day: 06:30–14:00; Full day: 06:30–18:00",
      "feeOptions": [
        {
          "id": "north-junior-junction-fee-1",
          "label": "Half day",
          "session": "half",
          "year": 2026,
          "monthly": 3920,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration fee",
              "amount": 825,
              "refundable": false,
              "conditions": "on_enrolment"
            },
            {
              "label": "Refundable deposit",
              "amount": 1400,
              "refundable": true,
              "conditions": "One calendar month’s written notice and account up to date and settled in full."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Monthly fees payable before the fifth; annual billed-month count not stated in fee sheet.",
            "Meals; operator home page specifies breakfast, lunch and morning/afternoon snacks"
          ],
          "sourceIds": [
            "north-junior-junction-s1"
          ]
        },
        {
          "id": "north-junior-junction-fee-2",
          "label": "Full day",
          "session": "full",
          "year": 2026,
          "monthly": 4700,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Registration fee",
              "amount": 825,
              "refundable": false,
              "conditions": "on_enrolment"
            },
            {
              "label": "Refundable deposit",
              "amount": 1400,
              "refundable": true,
              "conditions": "One calendar month’s written notice and account up to date and settled in full."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and deposit terms require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Monthly fees payable before the fifth; annual billed-month count not stated in fee sheet.",
            "Meals; operator home page specifies breakfast, lunch and morning/afternoon snacks"
          ],
          "sourceIds": [
            "north-junior-junction-s1"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "north-junior-junction-s1",
          "label": "Explicit 2026 monthly fees; registration; refundable deposit and conditions; late and sibling-holiday rates; public contacts.",
          "url": "https://juniorjunction.org/wp-content/uploads/JUNIOR-JUNCTION-FEE-STRUCTURE-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Explicit 2026 monthly fees; registration; refundable deposit and conditions; late and sibling-holiday rates; public contacts."
        },
        {
          "id": "north-junior-junction-s2",
          "label": "Operator search-index text: age band, half/full-day opening times, meals and closure pattern.",
          "url": "https://juniorjunction.org/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Operator search-index text: age band, half/full-day opening times, meals and closure pattern."
        }
      ],
      "notes": [
        "PDF metadata title says 2025, while the visible document heading and URL say 2026. Recorded year follows the explicit document heading.",
        "Opening hours and age band obtained from operator homepage search-index text because the direct homepage fetch timed out.",
        "Billed-month count, weekly attendance pattern and further compulsory extras require confirmation.",
        "Open year round except public holidays and part of December/January; exact closure dates not stated."
      ]
    },
    {
      "id": "rondebosch-montessori",
      "name": "Rondebosch Montessori Preschool",
      "suburb": "Rondebosch",
      "area": "south",
      "minAgeMonths": 36,
      "maxAgeMonths": 72,
      "ageLabel": "3–6 years",
      "summary": "Preschool in Rondebosch with a published 2026 fee schedule.",
      "approach": "Montessori",
      "tags": [
        "operator-published-fees",
        "published-fees-sa-citizens"
      ],
      "website": "https://rondeboschmontessori.co.za/",
      "phone": "+27 21 671 9838",
      "email": "info@rondeboschmontessori.co.za",
      "hoursLabel": "Monday–Friday; drop-off 07:30; Morning ends: 12:30; Full day / aftercare ends: 17:00; Follows published WCED school terms; early closure on each term's last day.",
      "feeOptions": [
        {
          "id": "rondebosch-montessori-fee-1",
          "label": "Half day; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 3850,
          "instalments": 12,
          "annualTuition": 46200,
          "minAgeMonths": 36,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Resource levy: R500; annual",
            "Published fees apply to South African citizens; international pricing on request.",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "08:00–12:30",
            "Published amounts are for South African citizens; international fees are on request."
          ],
          "sourceIds": [
            "rm-fees"
          ]
        },
        {
          "id": "rondebosch-montessori-fee-2",
          "label": "Full day, lunch included; 5 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 4895,
          "instalments": 12,
          "annualTuition": 58740,
          "minAgeMonths": 36,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Resource levy: R500; annual",
            "Published fees apply to South African citizens; international pricing on request.",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "08:00–17:00",
            "Published amounts are for South African citizens; international fees are on request."
          ],
          "sourceIds": [
            "rm-fees"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "rm-fees",
          "label": "2026 Fees for 3-6 year old class",
          "url": "https://rondeboschmontessori.co.za/school-fees-2026/",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Full primary indexed text was available; later direct fetches timed out."
        },
        {
          "id": "rm-contact",
          "label": "25 Ranelagh Road, Rondebosch 7700",
          "url": "https://rondeboschmontessori.co.za/contact-us/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "25 Ranelagh Road, Rondebosch 7700"
        }
      ],
      "notes": [
        "January–December instalments. Morning and afternoon snacks are included; full-day lunch is included.",
        "Unpublished application, registration and deposit charges remain unknown.",
        "Optional (fee year not stated): Extra murals; price on enquiry",
        "Published amounts are for South African citizens; international fees are on request."
      ]
    },
    {
      "id": "barkly-house-newlands",
      "name": "Barkly House Pre-primary School",
      "suburb": "Newlands",
      "area": "south",
      "minAgeMonths": null,
      "maxAgeMonths": null,
      "ageLabel": "3 turning 4 through Grade R (5 turning 6)",
      "summary": "Preschool in Newlands with a published 2026 fee schedule.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://barklyhouse.org.za/",
      "phone": "+27 21 671 1878",
      "email": "admin@bhnewlands.co.za",
      "hoursLabel": "Monday–Friday; drop-off 07:50; Class end times: {\"3_turning_4\": \"12:15\", \"4_turning_5\": \"12:30\", \"grade_r\": \"12:45\"}; Aftercare: {\"Monday–Thursday\": \"14:45\", \"Friday\": \"14:00\"}",
      "feeOptions": [
        {
          "id": "barkly-house-newlands-fee-1",
          "label": "Monthly payment plan; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 4310,
          "instalments": 10,
          "annualTuition": 43100,
          "minAgeMonths": 36,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 300,
              "refundable": false,
              "conditions": null
            },
            {
              "label": "Acceptance/confirmation fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "February–November"
          ],
          "sourceIds": [
            "bh-intake"
          ]
        },
        {
          "id": "barkly-house-newlands-fee-2",
          "label": "Term payment plan; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 43100,
          "minAgeMonths": 36,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 300,
              "refundable": false,
              "conditions": null
            },
            {
              "label": "Acceptance/confirmation fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Published term payment: R10775 × 4 terms; not a monthly instalment."
          ],
          "sourceIds": [
            "bh-intake"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "bh-intake",
          "label": "R4 310 x 10 months",
          "url": "https://barklyhouse.org.za/intake/",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Primary indexed text was available; subsequent direct fetches timed out."
        },
        {
          "id": "bh-day",
          "label": "07:50 – 08:40",
          "url": "https://barklyhouse.org.za/daily-program/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "07:50 – 08:40"
        },
        {
          "id": "bh-about",
          "label": "R13 per set 15 minutes",
          "url": "https://barklyhouse.org.za/about/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "R13 per set 15 minutes"
        }
      ],
      "notes": [
        "Applications accepted from birth are for the future pre-primary programme; this does not mean infant care is offered.",
        "Annual fees are due by end February; monthly plan is ten instalments.",
        "Optional (fee year not stated): Aftercare; R13 per set 15 minutes; Undated price; confirm before budgeting."
      ]
    },
    {
      "id": "childrens-studio-claremont",
      "name": "The Children’s Studio Montessori Preschool",
      "suburb": "Claremont",
      "area": "south",
      "minAgeMonths": 24,
      "maxAgeMonths": 72,
      "ageLabel": "2–6 years",
      "summary": "Preschool in Claremont with a published 2026 fee schedule.",
      "approach": "Montessori",
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://childrensstudio.co.za/",
      "phone": "+27 68 733 4444",
      "email": "operations@childrensstudio.co.za",
      "hoursLabel": "drop-off 07:30; Morning ends: 12:00; Full day / aftercare ends: 17:30 with aftercare",
      "feeOptions": [
        {
          "id": "childrens-studio-claremont-fee-1",
          "label": "2–3 year class",
          "session": "half",
          "year": 2026,
          "monthly": 4285,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [
            {
              "label": "Fundraising levy",
              "amount": 150
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 150,
              "refundable": null,
              "conditions": "Waiting-list application"
            },
            {
              "label": "Refundable deposit",
              "amount": null,
              "refundable": true,
              "conditions": "One month's fees; One full term's notice; fees remain payable during notice."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Registration/enrolment fee not established.",
            "Term supplies: R100; per term × 4"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "07:30–12:00",
            "February–December",
            "Deposit formula: One month's fees; amount must be confirmed for the selected option."
          ],
          "sourceIds": [
            "cs-fees"
          ]
        },
        {
          "id": "childrens-studio-claremont-fee-2",
          "label": "3–6 year class",
          "session": "half",
          "year": 2026,
          "monthly": 3935,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 36,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [
            {
              "label": "Fundraising levy",
              "amount": 150
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 150,
              "refundable": null,
              "conditions": "Waiting-list application"
            },
            {
              "label": "Refundable deposit",
              "amount": null,
              "refundable": true,
              "conditions": "One month's fees; One full term's notice; fees remain payable during notice."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Registration/enrolment fee not established.",
            "Term supplies: R100; per term × 4"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "08:00–12:00",
            "February–December",
            "Deposit formula: One month's fees; amount must be confirmed for the selected option."
          ],
          "sourceIds": [
            "cs-fees"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "cs-fees",
          "label": "Fees 2026",
          "url": "https://childrensstudio.co.za/fees-application/",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Fees 2026"
        },
        {
          "id": "cs-contact",
          "label": "operations@childrensstudio.co.za",
          "url": "https://childrensstudio.co.za/contact/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "operations@childrensstudio.co.za"
        }
      ],
      "notes": [
        "Five-percent annual advance-payment discount is advertised, subject to its stated deadline.",
        "The class fee excludes the separately published levy and supplies.",
        "Optional (2026): Aftercare 12:15–15:15; R49.65 per day",
        "Optional (2026): Aftercare 12:15–17:30; R76 per day",
        "Optional (fee year not stated): Holiday care; price on enquiry"
      ]
    },
    {
      "id": "kay-dee-mowbray",
      "name": "Kay-Dee Educare Centre",
      "suburb": "Mowbray",
      "area": "south",
      "minAgeMonths": 3,
      "maxAgeMonths": 84,
      "ageLabel": "3 months–7 years advertised; fee table covers 3 months–6 years",
      "summary": "Preschool in Mowbray with a published 2026 fee schedule.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://kaydee.co.za/",
      "phone": "+27 21 689 9615",
      "email": "kaydee@kaydee.co.za",
      "hoursLabel": "Monday–Friday; drop-off 07:00; Morning ends: 12:00; Full day / aftercare ends: 18:00; Public holidays and three weeks over December/January.",
      "feeOptions": [
        {
          "id": "kay-dee-mowbray-fee-1",
          "label": "Half day; all listed age classes; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 3300,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Once-off enrolment fee",
              "amount": 650,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Refundable deposit",
              "amount": null,
              "refundable": true,
              "conditions": "One month's fees may apply; Foreign parents at management discretion; Applied to final notice month after amounts due."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Development levy: R50; quarterly; March, June, September, November"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "07:00–12:00",
            "Deposit formula: One month's fees may apply; amount must be confirmed for the selected option."
          ],
          "sourceIds": [
            "kd-fees"
          ]
        },
        {
          "id": "kay-dee-mowbray-fee-2",
          "label": "Full day; all listed age classes; 5 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 3700,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Once-off enrolment fee",
              "amount": 650,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Refundable deposit",
              "amount": null,
              "refundable": true,
              "conditions": "One month's fees may apply; Foreign parents at management discretion; Applied to final notice month after amounts due."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Development levy: R50; quarterly; March, June, September, November"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "07:00–18:00",
            "Deposit formula: One month's fees may apply; amount must be confirmed for the selected option."
          ],
          "sourceIds": [
            "kd-fees"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "kd-home",
          "label": "3 months to 7 years",
          "url": "https://kaydee.co.za/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "3 months to 7 years"
        },
        {
          "id": "kd-contact",
          "label": "+27 725093149",
          "url": "https://kaydee.co.za/contact",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "+27 725093149"
        },
        {
          "id": "kd-fees",
          "label": "EDUCARE FEE STRUCTURE 2026 (effective 1 January 2026)",
          "url": "https://kaydee.co.za/Portals/34/Educare-Fee-Structure-Jan-2026.pdf?ver=UXO_Xza3jwD8_Rh19JZsng%3D%3D",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Read from operator-linked public PDF; later direct re-fetch was unavailable."
        }
      ],
      "notes": [
        "Breakfast, cooked lunch, afternoon snack, workbooks and toiletries are included.",
        "PDF metadata says 2025, but the body explicitly labels the fee structure 2026, effective 1 January 2026.",
        "Instalment count is not asserted; monthly rates are not converted to annual totals.",
        "Optional (fee year not stated): Early arrival 06:30–07:00; R630 per month"
      ]
    },
    {
      "id": "explore-discover-gardens",
      "name": "Explore + Discover Montessori Preschool",
      "suburb": "Gardens",
      "area": "city",
      "minAgeMonths": 18,
      "maxAgeMonths": 72,
      "ageLabel": "18 months–6 years",
      "summary": "Preschool in Gardens with a published 2026 fee schedule.",
      "approach": "Montessori",
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://www.montessori.za.org/",
      "phone": "+27 76 115 1393",
      "email": "info@montessori.za.org",
      "hoursLabel": "Monday–Friday; drop-off 07:30; Morning ends: 13:00; Full day / aftercare ends: 17:00 with aftercare; Public holidays excluded; term dates published separately.",
      "feeOptions": [
        {
          "id": "explore-discover-gardens-fee-1",
          "label": "5 days, 07:30–13:00; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 5485,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            },
            {
              "label": "Refundable deposit",
              "amount": 2500,
              "refundable": true,
              "conditions": "Five-day enrolments only; Refunded with final invoice; no interest."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        },
        {
          "id": "explore-discover-gardens-fee-2",
          "label": "5 days, 07:30–13:00; 5 days/week; requested 12-month plan",
          "session": "half",
          "year": 2026,
          "monthly": 5028,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            },
            {
              "label": "Refundable deposit",
              "amount": 2500,
              "refundable": true,
              "conditions": "Five-day enrolments only; Refunded with final invoice; no interest."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        },
        {
          "id": "explore-discover-gardens-fee-3",
          "label": "4 days, 07:30–13:00; 4 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 4757,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        },
        {
          "id": "explore-discover-gardens-fee-4",
          "label": "4 days, 07:30–13:00; 4 days/week; requested 12-month plan",
          "session": "half",
          "year": 2026,
          "monthly": 4361,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        },
        {
          "id": "explore-discover-gardens-fee-5",
          "label": "3 days, 07:30–13:00; 3 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 3569,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        },
        {
          "id": "explore-discover-gardens-fee-6",
          "label": "3 days, 07:30–13:00; 3 days/week; requested 12-month plan",
          "session": "half",
          "year": 2026,
          "monthly": 3272,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        },
        {
          "id": "explore-discover-gardens-fee-7",
          "label": "2 days, 07:30–13:00; 2 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 2379,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        },
        {
          "id": "explore-discover-gardens-fee-8",
          "label": "2 days, 07:30–13:00; 2 days/week; requested 12-month plan",
          "session": "half",
          "year": 2026,
          "monthly": 2181,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Placement/enrolment fee",
              "amount": 2000,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "School hat: R200; with placement fee"
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "ed-fees"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "ed-fees",
          "label": "these fees are applicable for 2026",
          "url": "https://www.montessori.za.org/fees",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "these fees are applicable for 2026"
        },
        {
          "id": "ed-contact",
          "label": "Nicol Street",
          "url": "https://www.montessori.za.org/contact-us",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Nicol Street"
        },
        {
          "id": "ed-campus",
          "label": "18 months to 6 years",
          "url": "https://www.montessori.za.org/campus",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "18 months to 6 years"
        }
      ],
      "notes": [
        "Normal payment plan is January–November; the twelve-month option must be requested.",
        "Casual-visit policy begins in February; it does not confirm capacity on any date.",
        "Optional (fee year not stated): Aftercare 13:00–15:00; R644 monthly × 11",
        "Optional (fee year not stated): Aftercare 13:00–17:00; R1285 monthly × 11",
        "Optional (fee year not stated): Casual aftercare; R40 per hour",
        "Optional (fee year not stated): Casual visit / enrolment under 3 months; R394 per day"
      ]
    },
    {
      "id": "pinocchio-green-point",
      "name": "Pinocchio Crèche",
      "suburb": "Green Point",
      "area": "city",
      "minAgeMonths": 0,
      "maxAgeMonths": 72,
      "ageLabel": "0–6 years advertised; Grade R requires a separate application",
      "summary": "Preschool in Green Point with a published 2026 fee schedule.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://www.pinocchiocreche.co.za/",
      "phone": "+27 21 439 8124",
      "email": "info@pinocchiocreche.co.za",
      "hoursLabel": "Monday–Friday; drop-off 07:00; Morning ends: 13:00; Full day / aftercare ends: 17:25; Mid-December to mid-January, public holidays and published bridge-day closures; dates require confirmation.",
      "feeOptions": [
        {
          "id": "pinocchio-green-point-fee-1",
          "label": "0–1 year 11 months, half day; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 1900,
          "instalments": 12,
          "annualTuition": 22800,
          "minAgeMonths": 0,
          "maxAgeMonths": 23,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": null,
              "refundable": false,
              "conditions": "One month's fee for the selected package"
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee."
          ],
          "sourceIds": [
            "pc-infant"
          ]
        },
        {
          "id": "pinocchio-green-point-fee-2",
          "label": "0–1 year 11 months, full day; 5 days/week",
          "session": "full",
          "year": 2026,
          "monthly": null,
          "instalments": 12,
          "annualTuition": 27600,
          "minAgeMonths": 0,
          "maxAgeMonths": 23,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": null,
              "refundable": false,
              "conditions": "One month's fee for the selected package"
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Extracted monthly line is malformed; confirm monthly amount directly.",
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee."
          ],
          "sourceIds": [
            "pc-infant"
          ]
        },
        {
          "id": "pinocchio-green-point-fee-3",
          "label": "2 turning 3 in 2026, half day; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 2000,
          "instalments": 12,
          "annualTuition": 24000,
          "minAgeMonths": null,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": null,
              "refundable": false,
              "conditions": "One month's fee for the selected package"
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Calendar-year cohort as labelled by the source, not an age-in-months range. Confirm the child's birth year and 2026 class eligibility directly; no 3–4 class price is established.",
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee."
          ],
          "sourceIds": [
            "pc-23"
          ]
        },
        {
          "id": "pinocchio-green-point-fee-4",
          "label": "2 turning 3 in 2026, full day; 5 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 2350,
          "instalments": 12,
          "annualTuition": 28200,
          "minAgeMonths": null,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": null,
              "refundable": false,
              "conditions": "One month's fee for the selected package"
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Calendar-year cohort as labelled by the source, not an age-in-months range. Confirm the child's birth year and 2026 class eligibility directly; no 3–4 class price is established.",
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee."
          ],
          "sourceIds": [
            "pc-23"
          ]
        },
        {
          "id": "pinocchio-green-point-fee-5",
          "label": "4 turning 5 in 2026, half day; 5 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 2000,
          "instalments": 12,
          "annualTuition": 24000,
          "minAgeMonths": null,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": null,
              "refundable": false,
              "conditions": "One month's fee for the selected package"
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Calendar-year cohort as labelled by the source, not an age-in-months range. Confirm the child's birth year and 2026 class eligibility directly; no 3–4 class price is established.",
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee."
          ],
          "sourceIds": [
            "pc-45"
          ]
        },
        {
          "id": "pinocchio-green-point-fee-6",
          "label": "4 turning 5 in 2026, full day; 5 days/week",
          "session": "full",
          "year": 2026,
          "monthly": 2400,
          "instalments": 12,
          "annualTuition": 28800,
          "minAgeMonths": null,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": null,
              "refundable": false,
              "conditions": "One month's fee for the selected package"
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Calendar-year cohort as labelled by the source, not an age-in-months range. Confirm the child's birth year and 2026 class eligibility directly; no 3–4 class price is established.",
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee."
          ],
          "sourceIds": [
            "pc-45"
          ]
        },
        {
          "id": "pinocchio-green-point-fee-7",
          "label": "Grade R, 5 turning 6 in 2026; full day 07:00–17:25",
          "session": "full",
          "year": 2026,
          "monthly": 2500,
          "instalments": 12,
          "annualTuition": 30000,
          "minAgeMonths": null,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": 2500,
              "refundable": false,
              "conditions": "Published full-day advance notice-month payment; not a separate recurring annual charge."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Grade R IMPAQ curriculum fee: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Additional IMPAQ fee is stated as TBC; total cost is incomplete.",
            "Calendar-year cohort as labelled by the source, not an age-in-months range. Confirm the child's birth year and 2026 class eligibility directly; no 3–4 class price is established.",
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee.",
            "Independent source recheck: 2026 Grade R PDF gives a calendar-year cohort and describes a tutoring centre offering curriculum assistance. IMPAQ fee is additional and TBC."
          ],
          "sourceIds": [
            "pc-r"
          ]
        },
        {
          "id": "pinocchio-green-point-fee-8",
          "label": "Grade R, 5 turning 6 in 2026; half day 07:00–13:00",
          "session": "half",
          "year": 2026,
          "monthly": 2000,
          "instalments": 12,
          "annualTuition": 24000,
          "minAgeMonths": null,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Advance payment covering notice month",
              "amount": 2000,
              "refundable": false,
              "conditions": "Published half-day advance notice-month payment; not a separate recurring annual charge."
            }
          ],
          "unknownCharges": [
            "Any unpublished mandatory charges require confirmation.",
            "Application fee not established.",
            "Registration/enrolment fee not established.",
            "Fundraising participation: amount unknown; ",
            "Grade R IMPAQ curriculum fee: amount unknown; ",
            "Parent-supplied afternoon snack and personal consumables: amount unknown; ",
            "Refundable deposit not established."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Additional IMPAQ fee is stated as TBC; total cost is incomplete.",
            "Calendar-year cohort as labelled by the source, not an age-in-months range. Confirm the child's birth year and 2026 class eligibility directly; no 3–4 class price is established.",
            "Separate advance notice-month payment: One month's fee for the selected package; not added as an extra recurring annual fee.",
            "Independent source recheck: 2026 Grade R PDF gives a calendar-year cohort and describes a tutoring centre offering curriculum assistance. IMPAQ fee is additional and TBC.",
            "Half-day schedule independently rechecked in the same 2026 Grade R PDF, page 3; R2000 ×12, annual R24000."
          ],
          "sourceIds": [
            "pc-r"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "pc-services",
          "label": "0 – 6 years",
          "url": "https://www.pinocchiocreche.co.za/services/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "0 – 6 years"
        },
        {
          "id": "pc-contact",
          "label": "021 439 8124",
          "url": "https://www.pinocchiocreche.co.za/contact/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "021 439 8124"
        },
        {
          "id": "pc-infant",
          "label": "R2 2300,00",
          "url": "https://www.pinocchiocreche.co.za/wp-content/uploads/2026/01/Pinocchio-Creche-0yrs-to-1yr11mnth-General-Information-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "R2 2300,00"
        },
        {
          "id": "pc-23",
          "label": "R2 350,00 Monthly Over 12 months",
          "url": "https://www.pinocchiocreche.co.za/wp-content/uploads/2026/01/Pinocchio-Creche-2yrs-to-3yrs-General-Information-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "R2 350,00 Monthly Over 12 months"
        },
        {
          "id": "pc-45",
          "label": "4yrs turning 5yrs in 2026",
          "url": "https://www.pinocchiocreche.co.za/wp-content/uploads/2026/01/Pinocchio-Creche-4yrs-to-5yrs-General-Information-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "4yrs turning 5yrs in 2026"
        },
        {
          "id": "pc-r",
          "label": "2026 Grade R information and fee schedule",
          "url": "https://www.pinocchiocreche.co.za/wp-content/uploads/2026/01/Pinocchio-Creche-Grade-R-General-Information-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Independent recheck of the existing operator PDF: full-day and half-day fees, 5 turning 6 in 2026 cohort, advance notice-month payment; only the additional IMPAQ fee is TBC."
        }
      ],
      "notes": [
        "Infant meals/milk/snacks are parent-supplied; breakfast and lunch are included in the 2–3 and 4–5 packages.",
        "No 3–4 class fee is asserted.",
        "Old HTML enrolment-page fees are excluded. The 4–5 PDF metadata says 2025 but its body and fee headings say 2026.",
        "The infant full-day monthly text reads 'R2 2300,00'; it is not silently repaired."
      ]
    },
    {
      "id": "fish-hoek-pre-primary",
      "name": "Fish Hoek Pre-Primary School",
      "suburb": "Fish Hoek",
      "area": "peninsula",
      "minAgeMonths": 4,
      "maxAgeMonths": null,
      "ageLabel": "4 months through Grade R; priced infant option specifically 4–12 months",
      "summary": "Childcare provider in Fish Hoek with operator-published fees.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://www.fhpps.co.za/",
      "phone": "021 782 3309",
      "email": "info@fhpps.co.za",
      "hoursLabel": "days: Monday–Friday; general open: 07:00; general close: 18:00; infant standard: 07:00–16:00; aftercare: 16:00–18:00 for Little Flippers",
      "feeOptions": [
        {
          "id": "fish-hoek-pre-primary-fee-1",
          "label": "Little Flippers infant care, 4–12 months, 07:00–16:00",
          "session": "all",
          "year": 2026,
          "monthly": 4900,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 4,
          "maxAgeMonths": 12,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 550,
              "refundable": false,
              "conditions": "Once for new applicants"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Annual Little Flippers consumables: R1750 annual; Infant schedule lists wipes, cream and tissues. Other class extras not retrieved."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Infant-only price, ages 4–12 months. Aftercare 16:00–18:00 costs R600/month ×11; billed separately.",
            "Published discounted annual option R55860: Published annual amount includes 5% saving if paid before 15 February 2026; do not compare it as undiscounted annual tuition."
          ],
          "sourceIds": [
            "fish-hoek-pre-primary-s2"
          ]
        },
        {
          "id": "fish-hoek-pre-primary-fee-2",
          "label": "Little Flippers infant care, 4–12 months, 07:00–16:00; annual advance-payment discount",
          "session": "all",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 55860,
          "minAgeMonths": 4,
          "maxAgeMonths": 12,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 550,
              "refundable": false,
              "conditions": "Once for new applicants"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Annual Little Flippers consumables: R1750 annual; Infant schedule lists wipes, cream and tissues. Other class extras not retrieved."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Infant-only price, ages 4–12 months. Aftercare 16:00–18:00 costs R600/month ×11; billed separately.",
            "Published discounted annual option R55860: Published annual amount includes 5% saving if paid before 15 February 2026; do not compare it as undiscounted annual tuition.",
            "Conditional discounted annual tuition; not the gross total of the monthly payment plan."
          ],
          "sourceIds": [
            "fish-hoek-pre-primary-s2"
          ]
        },
        {
          "id": "fish-hoek-pre-primary-fee-3",
          "label": "Little Flippers daily attendance",
          "session": "all",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 4,
          "maxAgeMonths": 12,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 550,
              "refundable": false,
              "conditions": "Once for new applicants"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Annual Little Flippers consumables: R1750 annual; Infant schedule lists wipes, cream and tissues. Other class extras not retrieved."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Infant-only price, ages 4–12 months. Aftercare 16:00–18:00 costs R600/month ×11; billed separately.",
            "Published daily rate R300; minimum 2 days/week. No monthly conversion."
          ],
          "sourceIds": [
            "fish-hoek-pre-primary-s2"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": "Applications accepted throughout the year; the school says space is limited, confirms availability after application, and uses a waiting list when classes are full.",
        "sourceIds": [
          "fish-hoek-pre-primary-s1"
        ]
      },
      "sources": [
        {
          "id": "fish-hoek-pre-primary-s1",
          "label": "Age span, organisation contacts and admissions/waitlist policy",
          "url": "https://www.fhpps.co.za/admissions/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Age span, organisation contacts and admissions/waitlist policy"
        },
        {
          "id": "fish-hoek-pre-primary-s2",
          "label": "2026 infant tuition, admission, consumables, aftercare and holiday care",
          "url": "https://www.fhpps.co.za/wp-content/uploads/2025/11/Fish-Hoek-Pre-Primary-Fees-Form-Little-Flippers-2026.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 infant tuition, admission, consumables, aftercare and holiday care"
        },
        {
          "id": "fish-hoek-pre-primary-s3",
          "label": "Official schedule landing page dated 3 November 2025; general operating hours",
          "url": "https://www.fhpps.co.za/document/fees-form-for-all-classes-2026/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Official schedule landing page dated 3 November 2025; general operating hours"
        }
      ],
      "notes": [
        "2026 infant fee PDF retrieved directly. All-classes 2026 schedule page exists, but its numeric tuition was not retrieved; do not apply infant fees to older children.",
        "General footer hours include aftercare. Infant tuition ends 16:00; aftercare and holiday care are billed separately.",
        "Fee document contains an apparent old 2024 payment-date line alongside its 2026 schedule. Retained 2026 schedule without silently correcting source.",
        "Optional (2026): Holiday care, 07:30–15:30; R100 per day",
        "Optional (2026): Holiday care, 07:30–18:00; R145 per day"
      ]
    },
    {
      "id": "imhoff-waldorf-preschool",
      "name": "Imhoff Waldorf School — Early Childhood",
      "suburb": "Kommetjie",
      "area": "peninsula",
      "minAgeMonths": 24,
      "maxAgeMonths": 72,
      "ageLabel": "Toddler 2–3 years; Playgroup 3–4; Kindergarten 5–6, as described in 2026 fee policy",
      "summary": "Childcare provider in Kommetjie with operator-published fees.",
      "approach": "Waldorf",
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://www.imhoffwaldorf.org/",
      "phone": "021 783 4237",
      "email": "admissions@imhoffwaldorf.org",
      "hoursLabel": "days: Toddler 3 or 4 mornings Mon–Thu; Playgroup 3, 4 or 5 mornings; Kindergarten 5 days; aftercare until: 14:45 for Playgroup/Kindergarten; aftercare note: No Toddler Group aftercare. 2026 policy imposes late fetching penalty after 14:45.",
      "feeOptions": [
        {
          "id": "imhoff-waldorf-preschool-fee-1",
          "label": "Toddler Group, 3 days",
          "session": "half",
          "year": 2026,
          "monthly": 2668,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R2602; advance and term discounts have separate deadlines.",
            "Published term rate R7844.",
            "Published discounted annual option R30415: Annual table amount includes 5% saving for payment by 31 January; debit order gets 2.5%."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-2",
          "label": "Toddler Group, 3 days; annual advance-payment discount",
          "session": "half",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 30415,
          "minAgeMonths": 24,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R2602; advance and term discounts have separate deadlines.",
            "Published term rate R7844.",
            "Published discounted annual option R30415: Annual table amount includes 5% saving for payment by 31 January; debit order gets 2.5%.",
            "Conditional discounted annual tuition; not the gross total of the monthly payment plan."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-3",
          "label": "Toddler Group, 4 days",
          "session": "half",
          "year": 2026,
          "monthly": 3556,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R3467; advance and term discounts have separate deadlines.",
            "Published term rate R10455.",
            "Published discounted annual option R40538: Annual amount is discounted advance payment."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-4",
          "label": "Toddler Group, 4 days; annual advance-payment discount",
          "session": "half",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 40538,
          "minAgeMonths": 24,
          "maxAgeMonths": 36,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R3467; advance and term discounts have separate deadlines.",
            "Published term rate R10455.",
            "Published discounted annual option R40538: Annual amount is discounted advance payment.",
            "Conditional discounted annual tuition; not the gross total of the monthly payment plan."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-5",
          "label": "Playgroup, 3 days",
          "session": "half",
          "year": 2026,
          "monthly": 2668,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 36,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R2602; advance and term discounts have separate deadlines.",
            "Published term rate R7844.",
            "Published discounted annual option R30415: Annual amount is discounted advance payment."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-6",
          "label": "Playgroup, 3 days; annual advance-payment discount",
          "session": "half",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 30415,
          "minAgeMonths": 36,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R2602; advance and term discounts have separate deadlines.",
            "Published term rate R7844.",
            "Published discounted annual option R30415: Annual amount is discounted advance payment.",
            "Conditional discounted annual tuition; not the gross total of the monthly payment plan."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-7",
          "label": "Playgroup, 4 days",
          "session": "half",
          "year": 2026,
          "monthly": 3556,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 36,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R3467; advance and term discounts have separate deadlines.",
            "Published term rate R10445.",
            "Published discounted annual option R40538: Annual amount is discounted advance payment. Printed term figure differs by R10 from Toddler 4-day figure; retained as published."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-8",
          "label": "Playgroup, 4 days; annual advance-payment discount",
          "session": "half",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 40538,
          "minAgeMonths": 36,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R3467; advance and term discounts have separate deadlines.",
            "Published term rate R10445.",
            "Published discounted annual option R40538: Annual amount is discounted advance payment. Printed term figure differs by R10 from Toddler 4-day figure; retained as published.",
            "Conditional discounted annual tuition; not the gross total of the monthly payment plan."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-9",
          "label": "Playgroup, 5 days",
          "session": "half",
          "year": 2026,
          "monthly": 4446,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 36,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R4334; advance and term discounts have separate deadlines.",
            "Published term rate R13071.",
            "Published discounted annual option R50684: Annual amount is discounted advance payment."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-10",
          "label": "Playgroup, 5 days; annual advance-payment discount",
          "session": "half",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 50684,
          "minAgeMonths": 36,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R4334; advance and term discounts have separate deadlines.",
            "Published term rate R13071.",
            "Published discounted annual option R50684: Annual amount is discounted advance payment.",
            "Conditional discounted annual tuition; not the gross total of the monthly payment plan."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-11",
          "label": "Kindergarten",
          "session": "half",
          "year": 2026,
          "monthly": 4568,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 60,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R4453; advance and term discounts have separate deadlines.",
            "Published term rate R13430.",
            "Published discounted annual option R52075: Annual amount is discounted advance payment."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        },
        {
          "id": "imhoff-waldorf-preschool-fee-12",
          "label": "Kindergarten; annual advance-payment discount",
          "session": "half",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": 52075,
          "minAgeMonths": 60,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [
            {
              "label": "Development levy — oldest child",
              "amount": 400
            }
          ],
          "onceOff": [
            {
              "label": "Application fee",
              "amount": 550,
              "refundable": null,
              "conditions": null
            },
            {
              "label": "Acceptance of place",
              "amount": 3000,
              "refundable": false,
              "conditions": "2026 policy explicitly applies R3,000 non-refundable acceptance to Toddler, Playgroup and Kindergarten."
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "For a sibling, R150/month development levy replaces R400/month; do not add both.",
            "Published monthly debit-order rate R4453; advance and term discounts have separate deadlines.",
            "Published term rate R13430.",
            "Published discounted annual option R52075: Annual amount is discounted advance payment.",
            "Conditional discounted annual tuition; not the gross total of the monthly payment plan."
          ],
          "sourceIds": [
            "imhoff-waldorf-preschool-s1"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": "Acceptance not guaranteed; if a class is full the school keeps the application on a waiting list and does not interview.",
        "sourceIds": [
          "imhoff-waldorf-preschool-s2"
        ]
      },
      "sources": [
        {
          "id": "imhoff-waldorf-preschool-s1",
          "label": "2026 age groups, days, tuition tables, acceptance fees, levies and aftercare",
          "url": "https://www.imhoffwaldorf.org/wp-content/uploads/2026/01/IWS-Fee-Policy-2026-1.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 age groups, days, tuition tables, acceptance fees, levies and aftercare"
        },
        {
          "id": "imhoff-waldorf-preschool-s2",
          "label": "Location, organisation contact and waiting-list policy; older fee/deposit text conflicts with 2026 PDF",
          "url": "https://www.imhoffwaldorf.org/enrolments/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Location, organisation contact and waiting-list policy; older fee/deposit text conflicts with 2026 PDF"
        },
        {
          "id": "imhoff-waldorf-preschool-s3",
          "label": "Monthly billing over 12 months; use 2026 PDF for actual rates/discounts",
          "url": "https://www.imhoffwaldorf.org/about-imhoff/imhoff-school/school-fees/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Monthly billing over 12 months; use 2026 PDF for actual rates/discounts"
        }
      ],
      "notes": [
        "2026 PDF takes precedence over general fees/enrolments page, which still mentions older acceptance/deposit arrangements and different discounts.",
        "General fee page says monthly payment over 12 months; all annual figures here remain the published discounted amounts, not computed gross annuals.",
        "No exact normal drop-off/collection times found; mornings and aftercare-end constraint preserved.",
        "Optional (2026): Playgroup/Kindergarten aftercare; R75 per hour; Not available for Toddler Group; late collection after 14:45 incurs R250."
      ]
    },
    {
      "id": "sunshine-babies",
      "name": "Sunshine Babies Daycare",
      "suburb": "Somerset West",
      "area": "helderberg",
      "minAgeMonths": 3,
      "maxAgeMonths": 48,
      "ageLabel": "3 months–4 years; separate 3–18 month and 18 month–4 year rates",
      "summary": "Childcare provider in Somerset West with operator-published fees.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://sunshinebabies.co.za/",
      "phone": "021 852 2849",
      "email": "cheryl@sunshinebabies.co.za",
      "hoursLabel": "days: Monday–Friday; open: 07:00; full day close: 18:00; closures: Public holidays, specified long-weekend school/working days, and about four weeks over December festive season.",
      "feeOptions": [
        {
          "id": "sunshine-babies-fee-1",
          "label": "Full day, 3–18 months",
          "session": "full",
          "year": 2026,
          "monthly": 4650,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 18,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 1200,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Arts and crafts: R600 Annual thereafter; Site places this after once-off registration fee; do not automatically add both every year."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Half-day cutoff and annual billed-month count not published. Confirm age-boundary rate at 18 months."
          ],
          "sourceIds": [
            "sunshine-babies-s1"
          ]
        },
        {
          "id": "sunshine-babies-fee-2",
          "label": "Full day, 18 months–4 years",
          "session": "full",
          "year": 2026,
          "monthly": 4450,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 1200,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Arts and crafts: R600 Annual thereafter; Site places this after once-off registration fee; do not automatically add both every year."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Half-day cutoff and annual billed-month count not published. Confirm age-boundary rate at 18 months."
          ],
          "sourceIds": [
            "sunshine-babies-s1"
          ]
        },
        {
          "id": "sunshine-babies-fee-3",
          "label": "Half day, 3–18 months",
          "session": "half",
          "year": 2026,
          "monthly": 4250,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 18,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 1200,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Arts and crafts: R600 Annual thereafter; Site places this after once-off registration fee; do not automatically add both every year."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Half-day cutoff and annual billed-month count not published. Confirm age-boundary rate at 18 months."
          ],
          "sourceIds": [
            "sunshine-babies-s1"
          ]
        },
        {
          "id": "sunshine-babies-fee-4",
          "label": "Half day, 18 months–4 years",
          "session": "half",
          "year": 2026,
          "monthly": 4050,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 48,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 1200,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Arts and crafts: R600 Annual thereafter; Site places this after once-off registration fee; do not automatically add both every year."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Half-day cutoff and annual billed-month count not published. Confirm age-boundary rate at 18 months."
          ],
          "sourceIds": [
            "sunshine-babies-s1"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "sunshine-babies-s1",
          "label": "2026 fees, age bands, opening hours, closures, registration/craft charges and organisation contacts",
          "url": "https://sunshinebabies.co.za/fees-hours/",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 fees, age bands, opening hours, closures, registration/craft charges and organisation contacts"
        }
      ],
      "notes": [
        "2026 is explicitly printed beside both half/full-day fees; no annual billing count or half-day cutoff published on inspected page.",
        "Fees monthly in advance, one full calendar month's written leaving notice.",
        "Optional (fee year not stated): Extracurricular activities; price on enquiry; Explicit optional extras paid directly by parents; no amounts published on inspected page."
      ]
    },
    {
      "id": "kids-company-somerset-links",
      "name": "Kids Company Preschool",
      "suburb": "Somerset Links / Firgrove Rural, Somerset West",
      "area": "helderberg",
      "minAgeMonths": 18,
      "maxAgeMonths": 72,
      "ageLabel": "18 months–6 years",
      "summary": "Childcare provider in Somerset Links / Firgrove Rural, Somerset West with operator-published fees.",
      "approach": "Integrated Montessori and traditional",
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://www.kidscompany.co.za/",
      "phone": "021 851 0686",
      "email": "tanya@kidscompany.co.za",
      "hoursLabel": "open: 07:15; full day close: 17:00; three quarter day close: 15:00; half day close: 13:00",
      "feeOptions": [
        {
          "id": "kids-company-somerset-links-fee-1",
          "label": "Full day 07:15–17:00",
          "session": "full",
          "year": 2026,
          "monthly": 5760,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Registration/enrolment fee not published in inspected sources."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "includes: Holiday programme, cooked lunch and afternoon snack; parent provides morning lunch-box snack."
          ],
          "sourceIds": [
            "kids-company-somerset-links-s1"
          ]
        },
        {
          "id": "kids-company-somerset-links-fee-2",
          "label": "Full day 07:15–17:00; 11-month payment option",
          "session": "full",
          "year": 2026,
          "monthly": 6280,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Registration/enrolment fee not published in inspected sources."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "includes: Holiday programme, cooked lunch and afternoon snack; parent provides morning lunch-box snack."
          ],
          "sourceIds": [
            "kids-company-somerset-links-s1"
          ]
        },
        {
          "id": "kids-company-somerset-links-fee-3",
          "label": "Three-quarter day 07:15–15:00",
          "session": "three-quarter",
          "year": 2026,
          "monthly": 5200,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Registration/enrolment fee not published in inspected sources."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "includes: Holiday programme and cooked lunch; parent provides morning lunch-box snack."
          ],
          "sourceIds": [
            "kids-company-somerset-links-s1"
          ]
        },
        {
          "id": "kids-company-somerset-links-fee-4",
          "label": "Three-quarter day 07:15–15:00; 11-month payment option",
          "session": "three-quarter",
          "year": 2026,
          "monthly": 5670,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Registration/enrolment fee not published in inspected sources."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "includes: Holiday programme and cooked lunch; parent provides morning lunch-box snack."
          ],
          "sourceIds": [
            "kids-company-somerset-links-s1"
          ]
        },
        {
          "id": "kids-company-somerset-links-fee-5",
          "label": "Half day 07:15–13:00",
          "session": "half",
          "year": 2026,
          "monthly": 4700,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Registration/enrolment fee not published in inspected sources."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "includes: Holiday programme and cooked lunch; parent provides morning lunch-box snack."
          ],
          "sourceIds": [
            "kids-company-somerset-links-s1"
          ]
        },
        {
          "id": "kids-company-somerset-links-fee-6",
          "label": "Half day 07:15–13:00; 11-month payment option",
          "session": "half",
          "year": 2026,
          "monthly": 5130,
          "instalments": 11,
          "annualTuition": null,
          "minAgeMonths": 18,
          "maxAgeMonths": 72,
          "mandatoryMonthly": [],
          "onceOff": [],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Registration/enrolment fee not published in inspected sources."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "includes: Holiday programme and cooked lunch; parent provides morning lunch-box snack."
          ],
          "sourceIds": [
            "kids-company-somerset-links-s1"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "kids-company-somerset-links-s1",
          "label": "2026 age range, schedules, billing choices, meal details, aftercare and contacts",
          "url": "https://www.kidscompany.co.za/fees",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 age range, schedules, billing choices, meal details, aftercare and contacts"
        },
        {
          "id": "kids-company-somerset-links-s2",
          "label": "Operator identity and Somerset West location",
          "url": "https://www.kidscompany.co.za/",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Operator identity and Somerset West location"
        }
      ],
      "notes": [
        "Page labels all prices ZAR and 2026. Registration/deposit/mandatory extras not found, not assumed free.",
        "Published eleven-month alternatives are rounded and do not exactly equal twelve-month totals; retain each option rather than claiming they are equivalent.",
        "Discounts published: siblings 5%, Somerset Links residents 8%; not combined according to page.",
        "Optional (2026): Aftercare for half-day children, 13:00–16:00; R50 per day"
      ]
    },
    {
      "id": "childrens-world",
      "name": "Children's World Pre-School",
      "suburb": "Somerset West — Helderberg College Campus",
      "area": "helderberg",
      "minAgeMonths": 3,
      "maxAgeMonths": null,
      "ageLabel": "3 months–2 years Butterflies; 2–4 years Fireflies; Jungle Kids turning 5 during the year",
      "summary": "Childcare provider in Somerset West — Helderberg College Campus with operator-published fees.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://childrensworld.co.za/",
      "phone": "021 855 1789",
      "email": "childrensworldpreschool@gmail.com",
      "hoursLabel": "days: Monday–Friday; gate open: 07:30; programme start: 08:30; morning ends: 12:30; morning collection: 13:00; aftercare close: 17:30",
      "feeOptions": [
        {
          "id": "childrens-world-fee-1",
          "label": "Mornings only",
          "session": "half",
          "year": 2026,
          "monthly": 1895,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 750,
              "refundable": null,
              "conditions": "On confirmation of enrolment"
            },
            {
              "label": "Stationery and materials",
              "amount": 1700,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Standard preschool option only; baby fees are separately on enquiry.",
            "age qualifier: Baby fees separately on enquiry; do not assume this applies to infant class."
          ],
          "sourceIds": [
            "childrens-world-s1"
          ]
        },
        {
          "id": "childrens-world-fee-2",
          "label": "Mornings including holiday care",
          "session": "half",
          "year": 2026,
          "monthly": 2027,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 750,
              "refundable": null,
              "conditions": "On confirmation of enrolment"
            },
            {
              "label": "Stationery and materials",
              "amount": 1700,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Standard preschool option only; baby fees are separately on enquiry.",
            "excludes: December/January closure",
            "age qualifier: Baby fees on enquiry."
          ],
          "sourceIds": [
            "childrens-world-s1"
          ]
        },
        {
          "id": "childrens-world-fee-3",
          "label": "Mornings, 3 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 1236,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 750,
              "refundable": null,
              "conditions": "On confirmation of enrolment"
            },
            {
              "label": "Stationery and materials",
              "amount": 1700,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Standard preschool option only; baby fees are separately on enquiry."
          ],
          "sourceIds": [
            "childrens-world-s1"
          ]
        },
        {
          "id": "childrens-world-fee-4",
          "label": "Mornings, 2 days/week",
          "session": "half",
          "year": 2026,
          "monthly": 915,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 750,
              "refundable": null,
              "conditions": "On confirmation of enrolment"
            },
            {
              "label": "Stationery and materials",
              "amount": 1700,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Standard preschool option only; baby fees are separately on enquiry."
          ],
          "sourceIds": [
            "childrens-world-s1"
          ]
        },
        {
          "id": "childrens-world-fee-5",
          "label": "Full day",
          "session": "full",
          "year": 2026,
          "monthly": 3051,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 750,
              "refundable": null,
              "conditions": "On confirmation of enrolment"
            },
            {
              "label": "Stationery and materials",
              "amount": 1700,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Standard preschool option only; baby fees are separately on enquiry.",
            "age qualifier: Baby fees on enquiry."
          ],
          "sourceIds": [
            "childrens-world-s1"
          ]
        },
        {
          "id": "childrens-world-fee-6",
          "label": "Full day including holiday care",
          "session": "full",
          "year": 2026,
          "monthly": 3184,
          "instalments": 12,
          "annualTuition": null,
          "minAgeMonths": 24,
          "maxAgeMonths": null,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 750,
              "refundable": null,
              "conditions": "On confirmation of enrolment"
            },
            {
              "label": "Stationery and materials",
              "amount": 1700,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "Standard preschool option only; baby fees are separately on enquiry.",
            "excludes: December/January closure",
            "age qualifier: Baby fees on enquiry."
          ],
          "sourceIds": [
            "childrens-world-s1"
          ]
        },
        {
          "id": "childrens-world-fee-7",
          "label": "Baby fees",
          "session": "all",
          "year": 2026,
          "monthly": null,
          "instalments": null,
          "annualTuition": null,
          "minAgeMonths": 3,
          "maxAgeMonths": 24,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 750,
              "refundable": null,
              "conditions": "On confirmation of enrolment"
            },
            {
              "label": "Stationery and materials",
              "amount": 1700,
              "refundable": false,
              "conditions": "Once off"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation.",
            "Baby tuition is on enquiry; standard preschool rates do not apply."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [
            "note: Discuss with school."
          ],
          "sourceIds": [
            "childrens-world-s1"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "childrens-world-s1",
          "label": "2026 tuition, mandatory charges, holiday options, parent-packed aftercare food and contacts",
          "url": "https://childrensworld.co.za/offer.html",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 tuition, mandatory charges, holiday options, parent-packed aftercare food and contacts"
        },
        {
          "id": "childrens-world-s2",
          "label": "Age groups and daily times",
          "url": "https://childrensworld.co.za/classes.html",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Age groups and daily times"
        }
      ],
      "notes": [
        "2026 fees explicitly billed January–December. Year/half-year/quarterly payments and advance-payment savings offered, but savings amounts not published.",
        "Fee-page headline calls care all-inclusive, yet aftercare instructions ask parents to pack lunch/snacks; do not mark all meals included.",
        "Website prints a registration reference, but official register was not checked.",
        "Optional (fee year not stated): Extra-mural activities; price on enquiry; Optional, subject to demand, paid directly to organiser."
      ]
    },
    {
      "id": "curro-somerset-west-sitari",
      "name": "Curro Somerset West, Sitari Estate — Preschool",
      "suburb": "Sitari Country Estate, Somerset West",
      "area": "helderberg",
      "minAgeMonths": 3,
      "maxAgeMonths": 60,
      "ageLabel": "3 months–5 years",
      "summary": "Childcare provider in Sitari Country Estate, Somerset West with operator-published fees.",
      "approach": null,
      "tags": [
        "operator-published-fees"
      ],
      "website": "https://curro.co.za/schools/curro-somerset-west-sitari-estate-preschool",
      "phone": "087 285 2142",
      "email": "info.somersetwest@curro.co.za",
      "hoursLabel": "programme start: 08:00; half day close: 12:30; full day close: 17:30; early dropoff: 07:00",
      "feeOptions": [
        {
          "id": "curro-somerset-west-sitari-fee-1",
          "label": "Groups 1–5, half day",
          "session": "half",
          "year": 2027,
          "monthly": 4235,
          "instalments": 12,
          "annualTuition": 50820,
          "minAgeMonths": 3,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 4000,
              "refundable": false,
              "conditions": "On approval of application"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "curro-somerset-west-sitari-s2"
          ]
        },
        {
          "id": "curro-somerset-west-sitari-fee-2",
          "label": "Groups 1–5, full day",
          "session": "full",
          "year": 2027,
          "monthly": 5920,
          "instalments": 12,
          "annualTuition": 71040,
          "minAgeMonths": 3,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 4000,
              "refundable": false,
              "conditions": "On approval of application"
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "curro-somerset-west-sitari-s2"
          ]
        },
        {
          "id": "curro-somerset-west-sitari-fee-3",
          "label": "Groups 1–5, half day",
          "session": "half",
          "year": 2026,
          "monthly": 4060,
          "instalments": 12,
          "annualTuition": 48720,
          "minAgeMonths": 3,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 5300,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "curro-somerset-west-sitari-s3"
          ]
        },
        {
          "id": "curro-somerset-west-sitari-fee-4",
          "label": "Groups 1–5, full day",
          "session": "full",
          "year": 2026,
          "monthly": 5680,
          "instalments": 12,
          "annualTuition": 68160,
          "minAgeMonths": 3,
          "maxAgeMonths": 60,
          "mandatoryMonthly": [],
          "onceOff": [
            {
              "label": "Enrolment / registration",
              "amount": 5300,
              "refundable": false,
              "conditions": null
            }
          ],
          "unknownCharges": [
            "Any further mandatory charges and refundable deposit require confirmation."
          ],
          "allRecurringDisclosed": false,
          "allUpfrontDisclosed": false,
          "notes": [],
          "sourceIds": [
            "curro-somerset-west-sitari-s3"
          ]
        }
      ],
      "availability": {
        "status": "unconfirmed",
        "statement": null,
        "sourceIds": []
      },
      "sources": [
        {
          "id": "curro-somerset-west-sitari-s1",
          "label": "Official links to 2026/2027 fee schedules and current fact sheet",
          "url": "https://curro.co.za/schools/curro-somerset-west-sitari-estate-preschool/downloads",
          "year": null,
          "accessedAt": "2026-10-25",
          "notes": "Official links to 2026/2027 fee schedules and current fact sheet"
        },
        {
          "id": "curro-somerset-west-sitari-s2",
          "label": "2027 tuition/enrolment/meal/swimming and exclusions",
          "url": "https://curro.co.za/media/pi1bp2rz/curro-somerset-west-2027-preschool-fee-letter-final-for-web.pdf",
          "year": 2027,
          "accessedAt": "2026-10-25",
          "notes": "2027 tuition/enrolment/meal/swimming and exclusions"
        },
        {
          "id": "curro-somerset-west-sitari-s3",
          "label": "2026 tuition/enrolment",
          "url": "https://curro.co.za/media/4yvjihjn/curro-somerset-west-2026-preschool-fee-letter-finalv2-for-web.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "2026 tuition/enrolment"
        },
        {
          "id": "curro-somerset-west-sitari-s4",
          "label": "Age band, address, contact, hours and meal policy",
          "url": "https://curro.co.za/media/0fal0mkj/curro-somerset-west-preschool-fact-sheet-2026-01.pdf",
          "year": 2026,
          "accessedAt": "2026-10-25",
          "notes": "Age band, address, contact, hours and meal policy"
        }
      ],
      "notes": [
        "2027 fee letter dated 31 August 2026; 2026 fee letter dated 4 September 2025. Different enrolment fees are year-specific, not combined.",
        "2026 fact sheet: breakfast and morning snack included; full-day lunch included; half-day lunch optional; parent packs afternoon snack. Holiday opening dates require calendar check.",
        "2027 exclusions include school photos and therapists/psychologists, amounts not published. No claim these services are mandatory.",
        "School hours/age evidence is 2026 fact sheet, not a 2027 timetable.",
        "Optional (2027): Half-day meal option; R325 monthly",
        "Optional (2027): Learn 2 Swim, 1 session/week; R535 monthly; Starts May 2027; annual amount is for eight months, not twelve.",
        "Optional (2027): Learn 2 Swim, 2 sessions/week; R800 monthly; Starts May 2027; annual amount is for eight months."
      ]
    }
  ]
}
