Skip to content

Algemene voorwaarden (stalniveau) + stalreglement/bijlagen samengevoegd tot één ondertekenbare contract-PDF #143

Description

@MiniMaxi-user

Doel

Eén ondertekenbaar contractdocument opleveren: de gegenereerde contract-PDF samen met
de algemene voorwaarden, het stalreglement, het voerschema en de prijslijst — zodat de
ontvanger in één keer alles ondertekent. De algemene voorwaarden zijn een op stalniveau
geüploade PDF en worden per contract aan/uit gezet.

Begrippen (belangrijk — in de UI met een info-tooltip "i" tonen)

Algemene voorwaarden = de juridische voorwaarden die bij de overeenkomst
horen (bijv. aansprakelijkheid & risico, verzekering, privacy/AVG, betalings- en
opzegvoorwaarden, gedrags-/welzijnsbepalingen). Eénmalig per stal als PDF geüpload,
per contract aan/uit te zetten en meegevoegd in het ene contractdocument.

Stalreglement = de praktische huisregels van de stal (bijv. openingstijden,
gebruik van faciliteiten, veiligheid, parkeren, gedrag op het erf). Een document
dat als pagina's wordt meegezonden met het contract (geen contractuele clausules).

Deze twee mogen in de UI niet door elkaar lopen; beide krijgen een eigen "i"-tooltip met
bovenstaande uitleg.

Besluiten (verwerkte open punten)

  • Algemene voorwaarden = geüploade PDF op stalniveau. Géén configuratie met secties
    of tekstvelden.
    Te uploaden/vervangen in het stalbeheer, vergelijkbaar met het
    bestaande stallogo (Stable.logoPath).
  • Geen aparte sectie-/tekstversionering. De op het moment van genereren actuele
    AV-PDF wordt meegevoegd; doordat het samengevoegde document per generatie als
    ContractDocument wordt opgeslagen, ligt het vast per contractversie. Werkt de stal
    later de AV-PDF bij, dan blijft een eerder gegenereerd (ondertekend) document
    ongewijzigd.
  • Geldt voor zowel stalling- als lease-contracten.
  • Meegevoegde onderdelen = de aanwezige/aangevinkte (PDF-)documenten: de
    stalniveau-AV-PDF + de per-contract bijlagen stalreglement, voerschema en prijslijst
    (ContractBijlage). De gestructureerde prijslijst/extra diensten blijven in de
    contract-PDF zelf (geen dubbeling).

Functionele eisen

  1. Algemene voorwaarden op stalniveau (PDF-upload)
    • Een staleigenaar kan per stal één algemene-voorwaarden-PDF uploaden, vervangen en
      verwijderen in het stalbeheer.
  2. Per contract aan/uit
    • Bij het opstellen van een contract is de algemene voorwaarden aan te vinken
      (default aan wanneer de stal een AV-PDF heeft). Aangevinkt = meegevoegd in het
      samengevoegde document.
  3. Eén samengevoegde PDF
    • Eindresultaat is één PDF, in deze volgorde (alleen aanwezige/aangevinkte delen):
      1. Contract-PDF (afhankelijk van de contractversie).
      2. Algemene voorwaarden (stalniveau-PDF).
      3. Stalreglement-pagina's.
      4. Voerschema.
      5. Prijslijst.
    • De ontvanger ondertekent dit ene document in één keer.

Technische notities (te verfijnen)

  • Stalniveau-AV-PDF: nieuw Stable.algemeneVoorwaardenPath (storage-pad in een
    privé Supabase Storage-bucket), spiegelt het stallogo-patroon (logoPath,
    logoStorage.ts). Plus een aan/uit-vlag op het contract (config).
  • Samenvoegen tot één PDF: de gegenereerde contract-PDF combineren met de
    PDF-bijlagen → waarschijnlijk pdf-lib (pagina's samenvoegen). Niet-PDF-uploads
    (bijv. afbeeldingen) eerst naar PDF-pagina's omzetten, of beperken tot PDF-uploads.
  • Bestaande bouwstenen: ContractBijlage (STALREGLEMENT/VOERSCHEMA/PRIJSLIJST),
    bijlagenDiensten.ts, pdf.ts/pdfData.ts/ContractPdfDocument.tsx,
    bijlagenStorage.ts. Samenhang met Lease-PDF-inhoud: leasecontract rendert eigen lease-secties #140 (lease-PDF-inhoud): zelfde
    generatie-/merge-pipeline; op elkaar afstemmen.

Niet in scope

  • Een rich-text/sectie-editor voor algemene voorwaarden (bewust vervangen door PDF-upload).
  • Digitale handtekening-flow zelf (bestaat al); hier alleen het samengestelde document.
  • Manege-/ruiterbond-clausules en verplichte-les-administratie; betaalwijze/incasso
    (facturatie).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions