Live in production

Click. Document.
Done.

A ribbon button on any Dynamics 365 record. Branded Word + PDF in seconds. Pick which format lands on the record's timeline at the moment of the click — Word, PDF, or both. Your branded documents, rendered the moment your team needs them — without leaving the record.

▶ Playground

Try it. Right here.

This is the actual D365 Sales Hub UI, with a sample sales order loaded. Pick a record, click Generate document, watch Templ8r merge and drop the doc on the timeline. Switch between three orders — every value updates live.

AC
Acme Industrial Pumps — £8,340
GX
Globex Logistics — £12,388
SI
Stark Industries — £3,901
Click here
Dynamics 365 Sales Hub
💡 ? Copilot
Generate document Save ▣→Save & Close Share
AC

Acme Industrial Pumps

- Saved
Order
Form assist
£8,340.00
Total Amount
Active
Status
New
Status Reason
T
Owner
Summary Details Related
* Order ID 🔒
ORD-01034
Customer *
Acme Industrial Pumps
Currency * 🔒
£ British Pound
Order Date
7 May 2026
Owner
Sarah Mitchell
PRODUCTS
Product Qty Total
Detail Amount 🔒£6,950.00
(-) Discount£0.00
Pre-Freight Amount 🔒£6,950.00
Saved to record timeline
▷ Why Templ8r

Built for the real shape of D365 data.

Out-of-the-box document generation in the Microsoft stack stops at single-hop lookups, single-record runs and per-pipeline rebuilds. Premium third-party connectors charge per-call and host your data on their infrastructure. Templ8r ships the parts every D365 team eventually wishes they had — multi-hop traversal, repeating sections, bulk runs, audit trail, ephemeral mode — at a flat per-tenant price, inside your own Azure footprint.

FetchXML-grade relationship traversal

Walk N:1 lookups to any depth in a single token — {{customer.account.parent.owner.fullname}}. Templ8r compiles your bindings into nested Dataverse $expand with column-scoped $select, so one record fetch hydrates the whole document tree. Lookup-type columns (Lookup, Owner, Customer) are auto-translated to _col_value form, and FormattedValue annotations resolve choice fields and currencies for you. No GetRecord-per-hop, no XML, no premium connector hop fees.

🔐

Per-template role visibility

Restrict a template to specific D365 security roles. End-users only see what their role allows — no template proliferation, no "oops I sent the confidential one".

🛡

Ephemeral mode

Strict-tenant flag — generated docs land on your timeline only. Never persisted on our side. Audit log keeps the event row without the payload.

📋

Audit log with snapshots

Every generation logs who ran it, against what record, with which template, and the resulting Note id. Template name is snapshotted — survives rename/delete.

Bulk generate from grid

Select 50 orders, click Bulk generate, fan out async. Progress per record, retry per failure. Designed for monthly invoice runs.

Multi-tenant by construction

One control plane serves every customer. Each tenant's data is isolated by signed credentials and tenant-scoped storage paths. No per-customer code branches.

Visual binding mapper

Click any token in your .docx; pick the column / lookup / relationship to bind it to. No XSLT, no custom code. Conditionals, loops, calculated fields all in the UI.

Replace document, keep template

Edited the layout in Word? Click Replace .docx. Same template id, version bumps, bindings + roles preserved. New tokens auto-detected and surfaced.

Sub-2-second sync path

Small docs render synchronously, in seconds. Big docs queue async with retries. No premium connector tax on either path.

Book a demo

Fifteen minutes. One ribbon click.

We'll merge a real template against a record from your tenant and drop the docx on its timeline — live on screen — in under fifteen minutes. No deck. No follow-up sales calls.