L1 System Context Diagram Example
The L1 Context diagram shows one central system, its actors (people), and the external systems it depends on. It is the highest-level diagram in the C4 zoom hierarchy and the most accessible for non-technical audiences.
See Example C4 Diagrams for an overview of all diagram types and when to use each.
To use this example in Nodinite, copy the Mermaid markup below and follow the Creating Your First C4 Diagram import walkthrough to create a Diagram Set, import the markup, and bind nodes to your Repository.
When to Use
- Onboarding stakeholders — executives, business analysts, board members
- Establishing the system boundary before zooming into L2
- Documenting high-level integrations without technical detail
- Avoids databases, APIs, or protocols — those belong in L2
Example: O2C Portal System Context
This example uses the Order-to-Cash (O2C) demo data and places the Portal system at the centre. The three O2C systems it connects to (ERP, tax authority, payment gateway) are shown as external actors. Two external database and queue systems are also included to demonstrate SystemDb_Ext and SystemQueue_Ext. The BiRel connector between Portal and the EDI gateway demonstrates two-way document exchange.
| Preview | Mermaid Code |
|---|---|
|
C4Context
title Portal — O2C System Context Diagram
Person(customer, "Customer", "Places orders and receives order confirmations")
Person_Ext(logistics_partner, "Logistics Partner", "External carrier providing delivery status updates")
System(portal, "Portal", "Receives customer orders and delivers order confirmations")
System_Ext(erp, "ERP", "Processes order entries and returns production schedule confirmations")
System_Ext(payment_gateway, "Payment Gateway", "Processes customer credit card payments")
System_Ext(tax_authority, "Tax Authority Portal", "Receives and validates electronic invoice submissions")
SystemDb_Ext(carrier_tracking, "Carrier Tracking DB", "External database providing real-time parcel tracking data")
SystemQueue_Ext(edi_gateway, "EDI Gateway", "External B2B message queue for trading partner document exchange")
Rel(customer, portal, "Places orders and receives confirmations", "HTTPS / JSON")
Rel_D(portal, erp, "Forwards order for entry", "XML / O2C.Order.Entry/1.0")
Rel_Back(erp, portal, "Returns order confirmation", "CSV / O2C.Order.Confirmation/1.0")
Rel(portal, payment_gateway, "Processes payment at order placement", "REST API")
Rel(portal, tax_authority, "Submits e-invoices", "REST API")
Rel(logistics_partner, carrier_tracking, "Updates parcel tracking status", "REST API")
Rel(portal, carrier_tracking, "Reads delivery confirmation for orders", "REST API")
BiRel(portal, edi_gateway, "Exchanges order and despatch documents", "AS2")
|
|
Shape Coverage
This example exercises the following L1 shape vocabulary from the toolbox plan:
| Shape used | Macro | Notes |
|---|---|---|
| Person (internal) | Person |
Customer |
| Person (external) | Person_Ext |
Logistics Partner |
| System (central) | System |
Portal |
| System (external) | System_Ext |
ERP, Payment Gateway, Tax Authority |
| Database System (external) | SystemDb_Ext |
Carrier Tracking DB |
| Queue System (external) | SystemQueue_Ext |
EDI Gateway |
| Directional connector Down | Rel_D |
Portal → ERP order flow |
| Reverse connector | Rel_Back |
Confirmation returned without swapping FROM/TO |
| Bidirectional connector | BiRel |
Portal ↔ EDI Gateway two-way exchange |
Next Step
Zoom into the Portal with the L2: Container Diagram Example to see its domain and service structure.
Related Topics
- Example C4 Diagrams — Overview of all diagram types
- System Landscape Example — All four O2C systems in one view
- L2: Container Diagram Example — O2C domain and integration services
- What is C4 Diagrams?