Spreadsheet Import API

From spreadsheet chaos to clear records.

Make the handoff between a spreadsheet and your application understandable. Explore CSV and XLSX parsing decisions, column mapping, and correction-friendly previews.

CSVXLSX

Agree on the table before importing it

Select the intended worksheet and header row explicitly. Check duplicate or blank column names before mapping. Keep instructional rows and totals outside the accepted data region. A recurring import should reuse an approved mapping rather than silently guessing on every new export.

Keep a representative input file that includes ordinary rows, an optional blank field, and an identifier with leading zeroes. That fixture makes the agreed handoff concrete.

Preserve the meaning of each cell

Do not treat a digit-only identifier as a number by default. Write down date conventions, decimal separators, currency rules, and how blank cells behave. For workbook formulas, test the chosen parser and define whether stored results or values-only exports are required.

CSV quoting is a parsing concern, not a field-mapping shortcut. The complete guide covers quoted commas and line breaks and links to the documented CSV format.

Make corrections easy to find

Return a source row and column reference with each rejected value. Distinguish an unsupported file layout from a record that violates a business rule. Show the intended destination field beside the original header so the operator can correct the right source.

Test updates as well as inserts. Existing destination records and duplicate rows within one file need different policies, particularly when a corrected batch is submitted again.

Turn the idea into a test

Use a small, representative source and write down the expected result for one accepted record, one correction, and one repeated attempt. Keep the original values and the destination expectations visible throughout the review.

Use the format guides for source decisions and the local quickstart to see a simple mapping in action.

From Import Notes

A little reading. A better workflow.

All articles

Your next import starts here.

Pick a source. Get a clearer plan. Build something useful.

Explore import types ↗