> ## Documentation Index
> Fetch the complete documentation index at: https://docs.conformly.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Corporate Templates

> Export audit-ready documents in your company's own DOCX / PDF template

<style>
  {`
      p, li {
        text-align: justify;
        text-justify: inter-word;
      }
    `}
</style>

## Why this exists

Large OEMs — Volvo, Bosch, Continental, ZF and similar — have corporate
document templates they've used for 20+ years. Their compliance
deliverables MUST match that template exactly: header tables, footer
text, fonts, numbering, table styling. A Conformly-branded PDF, however
polished, won't pass internal review at these organisations.

**Corporate templates (Tier 2 branding)** let you upload your company's
template once, mark a handful of placeholders, and have every Conformly
export come out looking like your document. Same fonts, same cover page,
same "Subject to NDA" footer — filled with compliance content.

Tier 1 (the default) is Conformly's own branded PDF / DOCX with your
logo and company name. Tier 2 is your template, filled by us. You
switch between them in **Settings → Workspace Branding & Templates**.

## The two-minute version

1. Take an existing corporate DOCX template (or use ours as a starting
   point — "Download sample" in Settings).
2. Replace the bits you want Conformly to fill with `{{placeholder}}`
   tags. Example: change the cover-page title from "ACME Safety Case" to
   `{{document_name}}`, the version field from "v1.0" to `{{document_version}}`.
3. Upload the `.docx` to your workspace. Conformly validates the
   placeholders and activates Tier 2 automatically.
4. Export any artifact — you get your template, filled. Done.

## Supported placeholders

25 placeholders across four categories. Unknown placeholders in your
template render as blank — they won't break the export.

### Document control (11)

| Placeholder             | What it resolves to                                  |
| ----------------------- | ---------------------------------------------------- |
| `{{document_id}}`       | Unique document identifier (`RP-2026-007`)           |
| `{{document_version}}`  | Semantic version (`1.0`)                             |
| `{{document_revision}}` | Revision number, Volvo-style (`009`)                 |
| `{{document_name}}`     | Artifact title                                       |
| `{{document_type}}`     | e.g. "Resolution Plan", "Safety Case Section"        |
| `{{classification}}`    | Confidentiality marking (Confidential, Proprietary…) |
| `{{release_date}}`      | ISO release date                                     |
| `{{approver_name}}`     | Approver full name                                   |
| `{{approver_title}}`    | Approver title ("Functional Safety Manager")         |
| `{{author_name}}`       | Document author                                      |
| `{{author_email}}`      | Author email                                         |

Inheritance rule: each field checks the artifact first (per-document
override), then workspace defaults (set in **Settings → Workspace
Branding**), then falls back to blank. So you can set a workspace-wide
default approver and override it per document when needed.

### Workspace context (4)

| Placeholder          | What it resolves to                                |
| -------------------- | -------------------------------------------------- |
| `{{company_name}}`   | Workspace company name                             |
| `{{workspace_name}}` | Workspace label                                    |
| `{{product_name}}`   | Product the artifact addresses (if product-scoped) |
| `{{product_asil}}`   | Product ASIL classification (ASIL A–D)             |

### Compliance content (8)

| Placeholder          | What it resolves to                         |
| -------------------- | ------------------------------------------- |
| `{{findings_count}}` | Total findings addressed                    |
| `{{critical_count}}` | Critical-severity findings                  |
| `{{high_count}}`     | High-severity findings                      |
| `{{medium_count}}`   | Medium-severity findings                    |
| `{{low_count}}`      | Low-severity findings                       |
| `{{standards_list}}` | Standards covered (`ISO 26262, ASPICE 3.1`) |
| `{{sections}}`       | Jinja loop variable — see below             |
| `{{findings_table}}` | Pre-formatted table of all findings         |

### Generation metadata (3)

| Placeholder                | What it resolves to                     |
| -------------------------- | --------------------------------------- |
| `{{generated_at}}`         | Render timestamp (ISO 8601)             |
| `{{generated_by}}`         | Conformly version + model (audit trail) |
| `{{evaluation_trace_url}}` | Link back to the artifact in Conformly  |

## Common patterns

### Cover page

Use the document-control placeholders directly:

```
{{company_name}}

{{document_type}}
{{document_name}}

Document No: {{document_id}}
Version: {{document_version}}
Revision: {{document_revision}}
Classification: {{classification}}
Release date: {{release_date}}
Approved by: {{approver_name}}, {{approver_title}}
```

### Running header / footer

In Word, go to Insert → Header / Footer. Insert placeholders like:

```
{{company_name}} — {{document_id}} rev. {{document_revision}}
```

or

```
{{classification}} — {{generated_at}}
```

Word treats the header as regular text, so placeholders inside it work
just like placeholders in the body.

### Body sections — the `{% for %}` loop

Conformly's artifacts are broken into sections (e.g. "Scope",
"Remediation plan", "Verification strategy"). To render each section
with its own heading and body, use a Jinja loop:

```
{% for section in sections %}
  {{section.title}}

  {{section.content}}
{% endfor %}
```

Each `section` has `.title` and `.content` (rendered markdown — bold,
italic, lists, and tables are preserved in the DOCX output).

### Findings table

Drop `{{findings_table}}` anywhere you want a full gap table with
columns: severity, standard, clause, title, status.

Or, use counters in a custom summary:

```
This report addresses {{findings_count}} findings:
- {{critical_count}} critical
- {{high_count}} high
- {{medium_count}} medium
- {{low_count}} low

across {{standards_list}}.
```

## Getting started

1. Open **Settings → Workspace Branding & Templates**.
2. Click the **Corporate Template** tier.
3. Use **Download sample** to get a working `.docx` starting point with
   most placeholders already in place — or drag in your own template.
4. Upload. Conformly validates and shows you any unknown placeholders
   (which render blank — they won't break the export).
5. Use **Preview** to render the template with sample compliance data
   before shipping to a real artifact.

## PDF templates (AcroForm)

DOCX is the primary path and what we recommend. If you already have a
branded PDF with AcroForm fields (the input boxes you get from
`Prepare Form` in Adobe Acrobat), Conformly will fill those fields
using the same placeholder names. The PDF output keeps every pixel
of the original — but it's flat, so any Jinja loops or markdown-rich
content won't work. Use DOCX unless you have a hard requirement for
PDF-source fidelity.

## Troubleshooting

### "Unknown placeholder" warnings

The template contains tags like `{{foobar}}` that aren't in our spec.
They render as blank. Either remove them, or rename them to one of the
supported placeholders above.

### Template renders blank

Check you're on the right tier — **Settings → Branding** shows whether
the active tier is Conformly Branding or Corporate Template. Switching
back to Conformly Branding doesn't delete the template, just deactivates
it.

### Export looks like the template but missing content

You probably have a `{{sections}}` tag without the surrounding
`{% for section in sections %}…{% endfor %}` wrapper. The loop is
required — `{{sections}}` alone renders as the literal string.

### Fonts look different from my original

Word's font substitution: if your template uses "Segoe UI" but the PDF
generator's font stack doesn't have it, Word falls back. Stick to
commonly-available fonts (Arial, Times New Roman, Calibri) for maximum
fidelity.

## Audit trail

Every template upload, edit, and activation is recorded in the audit
log (the `workspace.template.uploaded` event family). When exporting,
the `{{generated_at}}` + `{{generated_by}}` placeholders give you an
inline record of which Conformly version produced the document —
important for an audit reader who wants to verify provenance.
