# C4 Architecture Document - Level 1: System Context (Landing Page)

This document describes the system context of the **Sales Landing Page**, focusing on supporting sales agents in presenting and initiating insurance policies.

## 1. System Overview
The **Landing Page Sales Party** is a web application that helps sales agents log in, manage customer data (OCR), and generate illustration boards (PDFs) for insurance products (UVL-IC, UVL-EL) across multiple devices.

## 2. Personas (Actors)

### Sales Agent
- **Type**: Primary User.
- **Description**: Uses a Laptop or Mobile device to consult directly with customers.
- **Goal**: Rapid data entry (OCR), instant presentation of illustration boards, and on-the-spot contract closure.
- **Key Features**: Login, Scan ID Card, Select Product, View/Download PDF, Submit Application.

## 3. External Systems

### API Authentication (Existing)
- **Role**: Authenticates the Sales Agent's account.
- **Protocol**: REST API / OIDC.

### OCR Service
- **Role**: Extracts customer information from ID Card images.
- **Protocol**: REST API.

### Illustration PDF API (PDF Engine)
- **Role**: Calculates benefits and renders the illustration PDF file.
- **Protocol**: REST API.

### Core Insurance System (Core System)
- **Role**: Receives the insurance application (upon Sales submission).
- **Protocol**: REST/SOAP API.

## 4. System Context Diagram (C4 Context Diagram)

```mermaid
C4Context
    title System Context Diagram - Landing Page Sales Party

    Person(sales_agent, "Sales Agent", "Uses the Landing Page to consult and close deals.")

    System(landing_system, "Landing Page System", "Allows customer data entry, viewing illustrations, and submitting applications.")

    System_Ext(auth_api, "Auth API", "Sales account authentication system.")
    System_Ext(ocr_service, "OCR Service", "Extracts ID Card data.")
    System_Ext(pdf_engine, "PDF Generator API", "Generates the illustration PDF file.")
    System_Ext(core_system, "Core Insurance System", "Records the contract.")

    Rel(sales_agent, landing_system, "Accesses, inputs data, views PDF", "HTTPS")

    Rel(landing_system, auth_api, "Authenticates user", "REST/JSON")
    Rel(landing_system, ocr_service, "Sends ID image", "REST/JSON")
    Rel(landing_system, pdf_engine, "Sends data to fetch PDF", "REST/JSON")
    Rel(landing_system, core_system, "Submits application", "REST/JSON")
```

---
*Authored by: Agent mbl-landing-page-architecture*
