XSL-FO Formatting Engine

Convert XSL-FO to PDF, Microsoft® Word, and 20+ output formats through a REST API. Process millions of documents per day in real-time or batch mode. Used by system integrators and software developers worldwide for production-scale document generation.

XSL-FO to PDF • REST API • 20+ Output Formats • Batch + Real-Time • Millions of Docs/Day • SOC 2 Type 2

XSL-FO Formatting Engine

What the XSL-FO Formatting Engine Does

MHC Automation logo with diagram showing XML to PDF, Word, PowerPoint, and PDF conversions for automation solutions.

The MHC XSL-FO formatting engine is the rendering layer of the MHC NorthStar Developer Toolkit. It accepts XSL-FO content (either pre-composed or generated from XML/JSON data through stored templates) and produces formatted documents in PDF, Microsoft® Word, HTML, and 20+ additional output formats.

The engine operates through a REST API. Applications send data and a template reference via HTTP POST. The engine merges data with layout instructions and returns the rendered document. Both real-time single-document requests and batch processing of millions of documents per run are supported.

System integrators embed the engine into enterprise solutions for insurance, healthcare, financial services, government, and manufacturing. Software developers use the API to add document generation to their applications without building a rendering engine from scratch.

How XSL-FO to PDF Conversion Works

XSL-FO (Extensible Stylesheet Language Formatting Objects) is a W3C standard that describes how XML data should be formatted into paginated documents. XML contains the data. XSL-FO contains the layout instructions: page size, margins, fonts, tables, headers, footers, conditional content, barcodes, and color profiles. The formatting engine reads both and produces the output.

1. 

Design the Template

Use MHC Studio’s Visual XSL-FO Designer to build the template with drag-and-drop operations. Or write XSL-FO directly for full control. The template defines the document layout, data field mappings, conditional logic, and output rules. Save the template to the MHC server.

2. 

Call the API with Data

Your application sends a REST API request with the data payload (XML, JSON, or raw XSL-FO) and the stored template reference. The formatting engine merges data with the template and returns the rendered document in the requested output format (PDF, Microsoft® Word, HTML, or any of 20+ formats).

3. 

Receive the Document

The API returns the rendered document as a binary response. For real-time requests, response time is typically sub-second for standard documents. For batch processing, the engine processes entire data sets in a single run, producing millions of documents per batch.

XSL-FO to PDF API Example

				
					// Send XSL-FO content directly to the rendering engine
POST /api/v1/render
Content-Type: application/xml

<request>
  <outputFormat>PDF</outputFormat>
  <xslfo>
    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
      <fo:layout-master-set>
        <fo:simple-page-master master-name="letter"
          page-height="11in" page-width="8.5in"
          margin="1in">
          <fo:region-body/>
        </fo:simple-page-master>
      </fo:layout-master-set>
      <fo:page-sequence master-reference="letter">
        <fo:flow flow-name="xsl-region-body">
          <fo:block font-size="24pt">
            Account Statement
          </fo:block>
          <fo:block font-size="12pt">
            Account: 4821-7739-0012
          </fo:block>
        </fo:flow>
      </fo:page-sequence>
    </fo:root>
  </xslfo>
</request>

// Response: Binary PDF document
				
			

XML Data + Stored Template Example

				
					// Send XML data with a stored template reference
// The engine applies the XSL-FO template to the XML data
POST /api/v1/render
Content-Type: application/json

{
  "template": "monthly-statement-v4",
  "outputFormat": "PDF",
  "data": "<account><holder>Jane Rodriguez</holder><number>4821-7739</number><balance>12450.00</balance><transactions><txn date='2026-05-01' amount='-250.00' desc='Wire Transfer'/><txn date='2026-05-03' amount='3200.00' desc='Deposit'/></transactions></account>"
}

// Response: Rendered PDF with full statement layout,
// dynamic transaction table, and conditional disclosures
				
			

Features

Formatting Engine Capabilities

Real-time rendering

Sub-second response for on-demand document requests through the REST API

Batch processing

Millions of documents per run for statements, tax forms, and regulatory mailings

Conditional content

Show or hide document sections based on data values, business rules, or regulatory requirements

Dynamic tables

Repeated tables with data-driven rows that span hundreds of pages (transaction histories, line-item invoices)

Barcode generation

Dynamic barcodes (Code 128, QR, PDF417, Data Matrix) rendered directly in the document

Print production

RGB, CMYK, and ICC color profiles for production-quality print output

Bookmarks and TOC: 

Auto-generated bookmarks, cross-references, and table of contents in PDF output

Interactive HTML5: 

Responsive, interactive document output for digital delivery alongside traditional PDF

Output Formats

Supported Output Formats

Category

Formats

Use Case

Print Production

PDF, PDF/A (archival), PostScript, PCL, AFP

High-volume transactional print, production printing, check printing, archival

Accessible Documents

PDF/UA

Section 508 compliance, European Accessibility Act, ADA compliance

Digital Documents

PDF, Microsoft® Word (DOCX), HTML

Email delivery, web portals, digital archives, customer self-service portals

Interactive

Interactive HTML5, Responsive HTML

Mobile-friendly documents, digital-first customer communications, web viewing

Images

TIFF, PNG, JPEG

Fax output, image-based archiving, thumbnail generation

Data Interchange

XPS, SVG

Cross-platform document exchange, vector graphics output

Category

Formats

Use Case

Print Production

PDF, PDF/A (archival), PostScript, PCL, AFP

High-volume transactional print, production printing, check printing, archival

Accessible Documents

PDF/UA

Section 508 compliance, European Accessibility Act, ADA compliance

Digital Documents

PDF, Microsoft® Word (DOCX), HTML

Email delivery, web portals, digital archives, customer self-service portals

Interactive

Interactive HTML5, Responsive HTML

Mobile-friendly documents, digital-first customer communications, web viewing

Images

TIFF, PNG, JPEG

Fax output, image-based archiving, thumbnail generation

Data Interchange

XPS, SVG

Cross-platform document exchange, vector graphics output

Interactive Code Samples

Try Our API Code Samples for Yourself

We’ve prepared code samples showcasing how to convert XML, JSON, and XSL-FO to PDF using stored templates, as well as how to merge multiple documents into a single PDF. Get in touch with our tech team to explore these examples and see how easily you can integrate with MHC.

Convert XML to PDF

Send an XML string with a stored template reference. The engine applies the XSL-FO template to the XML data and returns a rendered PDF. Supports conditional content, dynamic tables, and barcode generation from XML field values.

Convert JSON to PDF

Send a JSON object with a stored template reference. JSON properties map to template placeholders. The engine renders the document and returns PDF or any supported output format.

Convert XSL-FO to PDF

Send pre-composed XSL-FO content directly to the rendering engine. For teams that generate their own XSL-FO from XSLT transformations or custom pipelines and need a high-performance rendering engine to produce the final output.

Merge Multiple Documents

Combine multiple rendered documents (cover letter, statement, disclosures, attachments) into a single PDF through one API call. Supports documents stored on the server or generated on the fly in the same request.

MHC XSL-FO Engine vs. Alternatives

Capability

MHC XSL-FO Engine

Apache FOP (Open Source)

Antenna House (Commercial)

Output Formats

PDF, Microsoft® Word, HTML, and 20+ formats

PDF, PostScript, PNG (limited set)

PDF, Microsoft® Word, HTML, and others

REST API

Built-in, production-ready

Not included (must build)

Available as add-on

Batch Processing

Millions of documents per run

Not optimized for high volume

Supported

Visual Template Designer

MHC Studio (WYSIWYG, drag-and-drop)

None (hand-code XSL-FO)

None (hand-code or third-party tools)

Print Color (CMYK/ICC)

Full support

Limited

Full support

Barcode Generation

Built-in (Code 128, QR, PDF417, Data Matrix)

Plugin required (fop-barcode)

Built-in

Interactive HTML5 Output

Yes

No

No

PDF/UA Accessibility

Supported

Limited

Supported

Enterprise Support

MHC support team, SLA-backed

Community only

Commercial support

Security Certification

SOC 2 Type 2

None

Varies

JSON Input Support

Yes (native)

No (XML only)

No (XML only)

Multi-Document Merge

Single API call

Custom code required

Available

Capability

MHC XSL-FO Engine

Apache FOP (Open Source)

Antenna House (Commercial)

Output Formats

PDF, Microsoft® Word, HTML, and 20+ formats

PDF, PostScript, PNG (limited set)

PDF, Microsoft® Word, HTML, and others

REST API

Built-in, production-ready

Not included (must build)

Available as add-on

Batch Processing

Millions of documents per run

Not optimized for high volume

Supported

Visual Template Designer

MHC Studio (WYSIWYG, drag-and-drop)

None (hand-code XSL-FO)

None (hand-code or third-party tools)

Print Color (CMYK/ICC)

Full support

Limited

Full support

Barcode Generation

Built-in (Code 128, QR, PDF417, Data Matrix)

Plugin required (fop-barcode)

Built-in

Interactive HTML5 Output

Yes

No

No

PDF/UA Accessibility

Supported

Limited

Supported

Enterprise Support

MHC support team, SLA-backed

Community only

Commercial support

Security Certification

SOC 2 Type 2

None

Varies

JSON Input Support

Yes (native)

No (XML only)

No (XML only)

Multi-Document Merge

Single API call

Custom code required

Available

Document Types Generated by Industry

Insurance

Document Types:

Policy documents, declarations pages, claims correspondence, explanation of benefits (EOBs), regulatory notices, state-specific disclosures, renewal notices

Healthcare

Document Types:

Patient communications, HIPAA-compliant notices, EOBs, provider statements, clinical summaries, billing statements

Financial Services

Document Types:

Account statements, regulatory disclosures, loan documents, trade confirmations, tax reporting documents, compliance notices

Government

Document Types:

Citizen communications, regulatory filings, tax forms (W2, 1099), benefit notices, compliance documents

Manufacturing

Document Types:

Purchase orders, invoices, shipping documents, packing lists, quality certifications, supplier communications

Complete Document Generation Toolkit

MHC NorthStar Developer Toolkit

The XSL-FO Formatting Engine is one component of the MHC NorthStar Developer Toolkit. Related capabilities include:

Drag-and-drop template builder. WYSIWYG interface for building XSL-FO templates without coding.

High-volume XML data to PDF rendering using stored templates and the REST API.

Convert JSON application data to formatted PDF documents through the same REST API.

AI content generation, tone optimization, one-click translation across 60+ languages, and plain-language rewriting for customer-facing documents.

Why teams choose MHC

Analyst-Validated. Enterprise Compliant. Customer-Proven.

Ranked by the industry’s leading analysts, built for regulated industries, and trusted by the teams using it every day.

Real feedback from IT teams

“ MHC has been a great partner in figuring out [our issues], to understand our business, to understand what we’re trying to accomplish, to understand the things that we are doing with the tool that again may not be in documentation, that may not be something that you all planned on. We found that MHC is part of our team. ”

Ryan Boyd Headshot

~ Ryan Boyd,
Senior Vice President, 2-COM 

Recognized by Leading Analysts

MHC - CCM Leader Badge from QKS Group
MHC - Aspire Any Prem CCM Software Leader
Badges_Gartner

Enterprise-Grade Security & Compliance

SOC 2 TYPE 2 Badge

Frequently Asked Questions

XSL-FO Formatting Engine

What is the MHC XSL-FO formatting engine?

The MHC XSL-FO formatting engine is a high-performance rendering engine that converts XSL-FO content into PDF, Microsoft® Word, and 20+ output formats. It operates through a REST API, accepting XSL-FO input and returning rendered documents. The engine supports both real-time rendering for individual documents and batch processing for millions of documents per run. It is part of the MHC NorthStar Developer Toolkit.

How does XSL-FO to PDF conversion work?

Design an XSL-FO template using MHC Studio’s visual designer or write XSL-FO directly. Call the MHC REST API with your XML or JSON data and a template reference. The engine merges data with the template’s layout instructions and returns a rendered PDF, Microsoft® Word document, or other output format. Real-time and batch modes are both supported.

How does the MHC engine compare to Apache FOP?

Apache FOP is an open-source XSL-FO processor with a limited output format set and no built-in API. The MHC engine supports 20+ output formats, includes a production-ready REST API, is optimized for millions of documents per batch, provides CMYK/ICC print support, generates barcodes natively, produces interactive HTML5 output, accepts JSON input, and is SOC 2 Type 2 certified. Apache FOP is suitable for development and small-volume use. The MHC engine is designed for production-scale document generation.

What output formats are supported?

PDF (including PDF/A for archival and PDF/UA for accessibility), Microsoft® Word (DOCX), HTML, Interactive HTML5, PostScript, PCL, AFP, TIFF, PNG, JPEG, XPS, SVG, and additional formats. Print-ready formats support RGB, CMYK, and ICC color profiles.

Can the engine process millions of documents?

Yes. The engine supports real-time single-document rendering (sub-second for standard documents) and batch processing for millions of documents per run. Batch mode is used for monthly statements, annual tax documents, regulatory mailings, and other high-volume production jobs.

What is XSL-FO?

XSL-FO (Extensible Stylesheet Language Formatting Objects) is a W3C standard XML vocabulary for describing how data should be formatted into paginated documents. It specifies page layout, margins, fonts, tables, headers, footers, and conditional content. XSL-FO separates data from presentation, allowing the same data source to produce different layouts for print, email, and web channels.

How do developers integrate the engine?

Through the MHC REST API. Send POST requests with XML, JSON, or XSL-FO data and a template reference. Receive the rendered document back. Code samples are available for all common operations. The API integrates with Salesforce, Microsoft Dynamics, web services, and custom applications.

What industries use this engine?

Insurance (policy documents, claims, EOBs), healthcare (patient communications, HIPAA notices), financial services (statements, disclosures, loan documents), government (regulatory filings, tax forms), and manufacturing (invoices, POs, shipping documents).

Do I need to write XSL-FO code?

No. MHC Studio’s Visual XSL-FO Designer provides a drag-and-drop WYSIWYG interface for building templates without writing code. Developers who prefer direct XSL-FO access can also write code manually. The engine processes XSL-FO from either source.

See the XSL-FO Formatting Engine in Action

Ready to see how the XSL-FO formatting engine handles your document production workload?

Scroll to Top