---
title: "Spreadsheets in Document Authoring"
canonical_url: "https://www.nutrient.io/guides/document-authoring/spreadsheets/"
md_url: "https://www.nutrient.io/guides/document-authoring/spreadsheets.md"
last_updated: "2026-10-14T00:00:00.000Z"
description: "Open, edit, save, and export XLSX spreadsheets in the browser and in Node.js with the Document Authoring spreadsheet API."
---

# Spreadsheets

Document Authoring opens XLSX spreadsheets in a browser editor, where users can edit cells, formatting, formulas, and sheets in a grid. Your app can save the result in SheetJSON or export it as XLSX or PDF. The same API runs in Node.js for server-side conversion without an editor.

Your license must include the Spreadsheet Editing component. XLSX import and export also require the XLSX Support component. [Contact Sales](https://www.nutrient.io/contact-sales/) to add these components to your license.

## What you can build

- An XLSX viewer and editor inside your web app.

- A conversion step on your server that turns XLSX files into PDF.

- Spreadsheet storage in your own backend, using the native SheetJSON format.

- One upload box that opens both documents and spreadsheets.

## How it works

The spreadsheet API uses three objects:

**System**

Create a [`DocAuthSystem`](https://www.nutrient.io/api/document-authoring/types/docauthsystem/) with `createDocAuthSystem()`. One system handles documents and spreadsheets and loads the engine and fonts once. If your app already uses Document Authoring for documents, reuse that system.

**Spreadsheet**

A [`DocAuthSpreadsheet`](https://www.nutrient.io/api/document-authoring/types/docauthspreadsheet/) represents an open spreadsheet. The system returns one when it imports, loads, or creates a spreadsheet, and you use it to save or export that spreadsheet. It doesn’t expose individual cells.

**Spreadsheet editor**

A [`DocAuthSpreadsheetEditor`](https://www.nutrient.io/api/document-authoring/types/docauthspreadsheeteditor/) displays a spreadsheet in a page element and enables users to edit it. The editor runs only in a browser.

A _spreadsheet_ is the complete file. A _sheet_ is one tab in the spreadsheet.

The method names indicate which formats they handle:

- `load` and `save` read and write SheetJSON, the native format. Saving and then loading preserves everything Document Authoring supports.

- `import` and `export` read and write XLSX. `export` also supports PDF, and `importSpreadsheet()` accepts SheetJSON.

```js

import DocAuth from '@nutrient-sdk/document-authoring';

const system = await DocAuth.createDocAuthSystem();

const spreadsheet = await system.createSpreadsheetFromPlaintext('Hello!');

const editor = await system.createSpreadsheetEditor(document.getElementById('editor'), {
  spreadsheet,
});

```

## Guides

Refer to these guides to work with spreadsheets:

- [Getting started](https://www.nutrient.io/guides/document-authoring/spreadsheets/getting-started.md) — Put a spreadsheet editor on a page.

- [Import and load](https://www.nutrient.io/guides/document-authoring/spreadsheets/import-and-load.md) — Open XLSX files and saved spreadsheets, with progress and cancellation.

- [Save and export](https://www.nutrient.io/guides/document-authoring/spreadsheets/save-and-export.md) — Store SheetJSON, and export XLSX and PDF.

- [Editor](https://www.nutrient.io/guides/document-authoring/spreadsheets/editor.md) — What the editor includes, and how to switch spreadsheets or remove the editor.

- [Formulas](https://www.nutrient.io/guides/document-authoring/spreadsheets/formulas.md) — Which functions calculate and how other formulas behave.

- [Node.js](https://www.nutrient.io/guides/document-authoring/spreadsheets/nodejs.md) — Convert spreadsheets on a server.

- [SheetJSON](https://www.nutrient.io/guides/document-authoring/spreadsheets/sheetjson.md) — The native spreadsheet format, with a minimal example.

For a runnable example, refer to the [examples repository](https://github.com/PSPDFKit/pspdfkit-document-authoring-example) on GitHub.
---

## Related pages

- [Spreadsheet editor](/guides/document-authoring/spreadsheets/editor.md)
- [Spreadsheet formulas](/guides/document-authoring/spreadsheets/formulas.md)
- [Get started with spreadsheets](/guides/document-authoring/spreadsheets/getting-started.md)
- [Import and load spreadsheets](/guides/document-authoring/spreadsheets/import-and-load.md)
- [Spreadsheets in Node.js](/guides/document-authoring/spreadsheets/nodejs.md)
- [Save and export spreadsheets](/guides/document-authoring/spreadsheets/save-and-export.md)
- [Spreadsheet JSON support with SheetJSON](/guides/document-authoring/spreadsheets/sheetjson.md)

