Short walkthroughs that turn the platform into your operations team: automated pipelines, instant follow-ups, AI-handled admin. One video, one less thing to do manually.
Create spreadsheets from templates, import data via CSV or PDF (with optional auto-merge for contiguous rows), attach them to opportunities, and let clients populate them directly via a form field.
A Standalone Spreadsheet is a free-standing, editable grid you create directly in TrustPager — not tied to a CRM export query. Think of it as a structured table you design once (as a template) and then populate many times: once per opportunity, once per client, once per project.
Standalone Spreadsheets differ from Workspace Spreadsheets in one key way: a Workspace Spreadsheet reads CRM data into a grid; a Standalone Spreadsheet is a grid you write data into — manually, via CSV import, by extracting from a PDF, or by having a client fill it in through a form.
Templates define the column structure every new spreadsheet will inherit. Go to https://app.trustpager.com/operations/spreadsheets and click New Template. Give it a name, then add columns.
Each column has a label and a type. The available types are:
A good worked example is a Tasks template — a task tracker you create once and reuse across every opportunity. Here is how to configure it:
| Column | Type | Notes |
|---|---|---|
| Title | Text | The task name |
| Assignee | User | Picks from your team |
| Due Date | Date | Used as the primary sort key |
| Status | Dropdown | Todo (slate), In Progress (amber), Completed (green), Blocked (red) |
| Priority | Dropdown | Low, Medium, High |
| Notes | Long text | Free-form detail |
Once you have added your columns, click Sort in the template toolbar to set a default sort order — for example, Due Date ascending as the primary key, then Priority descending as a tiebreaker. Any spreadsheet created from this template opens with rows already in that order, so you never have to re-sort by hand after adding data.
Save the template. It now appears as an option whenever you create a new spreadsheet or wire a Spreadsheet field in a form.
Templates are intentionally hard to delete by accident. From the templates list at https://app.trustpager.com/operations/spreadsheets, deleting a template asks you to type its exact name to confirm — the same safeguard you will see when deleting a CRM pipeline or a workspace. From inside a populated spreadsheet, the trash icon on the only remaining spreadsheet under a template clears its rows instead of deleting the template itself. Template deletion is reserved for the list page, where the intent is explicit.
Every column header in the spreadsheet editor shows a Bolt icon on its right side, next to the type badge. Click it to open the Column settings panel in the sidebar — this replaces the default "Add columns" form for as long as you are in that column's settings.
The Column settings panel lets you:
To return to the main sidebar, click ← Back to columns at the top of the Column settings panel.
When you open a Standalone Spreadsheet at https://app.trustpager.com/operations/spreadsheets/standalone/<id>, the canvas sub-header (directly above the column headers) contains:
From https://app.trustpager.com/operations/spreadsheets, click New Spreadsheet, choose a template, and give the spreadsheet a name. The grid opens with 12 visible rows — every cell is a real input you can type into straight away. Rows are not created until you start typing: entering data in row 5, for example, materialises rows 1 through 5 (with rows 1–4 left empty). Tabbing out of an empty cell without typing anything does not create a row. Data saves automatically as you go.
Every column in the spreadsheet has a Σ TOTAL cell directly under its header. Click any cell to set a total for that column — a small picker offers four options:
Pick one and the result computes live. Sum and Average are available on text and number columns only — they are disabled in the picker for boolean, date, dropdown, and reference column types. Count works on every column type except reference columns. Results are formatted in Australian locale with thousand separators and two decimal places — for example, 479,236.47.
To remove a total, click the cell again and pick No total.
Every template has an optional default sort that is applied whenever a spreadsheet based on that template opens. Set it from the Sort button in the template-edit toolbar at https://app.trustpager.com/operations/spreadsheets — pick up to three sort keys, each with a column and a direction (ascending or descending).
The Tasks template example above uses Due Date ascending as the primary key, then Priority descending as a tiebreaker — upcoming tasks surface at the top, and within the same due date, higher-priority work comes first.
If you are building automations or scripts that create templates programmatically, you can pass default_sort in the API body instead — see the API section below for the JSON shape.
From any open spreadsheet, click the Import button (to the left of the Columns tab) and choose Spreadsheet in the picker. A wizard opens — the same step-by-step flow used for pipeline imports:
The wizard validates data before writing rows and handles encoding automatically.
If your data lives in a PDF — invoices, payment summaries, tax returns, anything structured — you can extract it directly into a spreadsheet without manual typing. From any open spreadsheet, click the Import button and choose Document in the picker. Pick one of your workspace document mappers, upload the PDF, and the extractor reads the file, shows you a preview of every row it found with a confidence score, and lets you skip individual rows before committing them to the spreadsheet.
Document mappers are template-aware: each mapper is configured to extract specific fields from a specific document type (for example, one mapper for ATO Payment Summaries, another for Centrelink statements). Mappers are currently set up per workspace by the FinalPiece team — reach out if you have a recurring document type you want extracted into a spreadsheet.
Some workflows produce one row per period that really represents one continuous run — six years of payments from the same employer, twelve months of subscription charges from the same vendor, a year of weekly shift logs from the same site. A spreadsheet template can be configured with merge rules so imports collapse those into a single row, with the per-period values concatenated into a chosen column.
Merge rules need three things:
ABN + Payment Type)When merge rules are set, importing the same row across multiple documents extends the matched row's period and appends the new value — same employer + same payment type + a new financial year contiguous with the existing range = one row, not two. Non-contiguous gaps stay as separate rows by design, so the extractor never has to guess about when one period ended and another began.
Merge rules are configured via the TrustPager API — see the JSON shape in the API section below.
Open an opportunity from https://app.trustpager.com/opportunities. In the opportunity detail panel, find the Spreadsheets section and click Attach Spreadsheet. Select an existing spreadsheet or create a new one from a template. Once attached, any team member can open and edit it directly from the opportunity.
This is the killer use case for variable-row client data. Instead of asking a client to fill in a CSV and email it back, you embed a live spreadsheet grid directly inside a TrustPager form.
Here is how to set it up:
When the client fills in the form, they see a live editable grid. They add rows, fill cells, and submit. On submission, TrustPager automatically creates a populated Standalone Spreadsheet from their input and links it to the opportunity. No CSV, no back-and-forth.
For more on the Spreadsheet field type and other form field options, see https://trustpager.com/help-center/build-send-forms.
Standalone Spreadsheets are available via the TrustPager REST API. Authenticate with a key that has the appropriate scopes — see https://trustpager.com/help-center/api-access.
Required scopes: spreadsheets:read, spreadsheets:write, spreadsheets:delete
REST API endpoints:
GET /api/v1/spreadsheets/templates — list templatesPOST /api/v1/spreadsheets/templates — create a template (accepts columns with type definitions, merge_rules, and default_sort)GET /api/v1/spreadsheets/templates/:id — get a templatePATCH /api/v1/spreadsheets/templates/:id — update a template (incl. columns, merge_rules, default_sort)DELETE /api/v1/spreadsheets/templates/:id — delete a templatePOST /api/v1/spreadsheets — create a spreadsheet from a templateGET /api/v1/spreadsheets/:id — get a spreadsheetGET /api/v1/spreadsheets/:id/rows — list rows in a spreadsheetPOST /api/v1/spreadsheets/:id/rows — add rows to a spreadsheetPATCH /api/v1/spreadsheets/:id/rows/:row_id — update a rowDELETE /api/v1/spreadsheets/:id/rows/:row_id — delete a rowPOST /api/v1/spreadsheets/:id/import_from_document — extract rows from a PDF using a document mapper and import them (runs merge rules + default sort if configured)JSON shape — column type values (used in the columns array when creating or updating a template):
[
{ "label": "Title", "type": "text" },
{ "label": "Assignee", "type": "user_ref" },
{ "label": "Client", "type": "contact_ref" },
{ "label": "Opportunity", "type": "opportunity_ref" },
{ "label": "Due Date", "type": "date" },
{ "label": "Status", "type": "dropdown",
"options": [
{ "label": "Todo", "color": "slate" },
{ "label": "In Progress", "color": "amber" },
{ "label": "Completed", "color": "green" },
{ "label": "Blocked", "color": "red" }
]
},
{ "label": "Notes", "type": "long_text" }
]
Supported type values: text, long_text, number, date, dropdown, user_ref, contact_ref, opportunity_ref, boolean.
user_ref — links to a workspace team member. Cell shows the user name.contact_ref — links to a CRM contact. Search by name, email, or phone; cell shows the contact name as a chip (falls back to email if no name is set). Useful for associating imported rows with the client each row belongs to — for example, each line of a commission statement linked to the relevant contact.opportunity_ref — links to a CRM opportunity. Cell shows the opportunity name as a chip.For dropdown columns, each option takes a label (required) and an optional color string. Supported colours: slate, gray, zinc, red, orange, amber, yellow, lime, green, emerald, teal, cyan, sky, blue, indigo, violet, purple, fuchsia, pink, rose.
JSON shape — merge_rules (set on a template; controls auto-merge on import). Pass null to clear.
{
"group_by": ["ABN", "Duties"],
"period_start": "Start Date",
"period_end": "End Date",
"tolerance_days": 1,
"concat_columns": {
"Payments": {
"separator": " ",
"first_value_prefix": "$ ",
"order_by": "End Date",
"direction": "desc"
}
}
}
All column references are header strings (case-insensitive). tolerance_days defaults to 1, which collapses adjacent financial-year periods but keeps genuine gaps as separate rows.
JSON shape — default_sort (set on a template; applied after every import and when the spreadsheet first opens). Pass null to clear.
[
{ "column": "Due Date", "direction": "asc" },
{ "column": "Priority", "direction": "desc" }
]
Entries are applied in order — the second entry breaks ties on the first, and so on. The same sort can be configured interactively via the Sort button in the template-edit toolbar at https://app.trustpager.com/operations/spreadsheets.
Talk to Evie right now, or book a real human for a deeper walkthrough. Whichever feels right.
Hear her in 10 seconds.

60 minutes with a real human · Google Meet · Free.