CRM Nested Pricing and Lists

Overview

FlexData can display lists of data from your CRM, like pricing line items, in a Text Table. When your CRM organizes that data in levels, such as groups that contain items, you can display it as a single list, a nested list, or both. Build it once in your template, and every document linked to a CRM record fills in automatically.

This works with any CRM integrated with Proposify, including HubSpot, Salesforce, Microsoft Dynamics, Pipedrive, and Aspire.

CleanShot 2026-09-24 at 9.03.59 AM@2x.jpg 2026-09-30 at 4.59.29 PM.jpg

How It Works

In the Variables side panel, fields that come through as a list are labelled array. Any field labelled array can be repeated across the rows of a Text Table. If an array contains another array, the data has multiple levels, and you can display those levels as well.

You format the first row as a template row, and FlexData repeats that row for every item in the list. Formatting applied to the template row (bold, size, or colour changes) applies to every row it creates.

Note: CRM data can only be displayed in Text Tables right now.

Before You Start

  • Connect your CRM and select the objects and fields you need during configuration. You can adjust these at any time from the integration card.
  • Build your table in a document, rather than a template, the first time. With a record linked, you can see the output and confirm it displays properly. When you're happy with it, save it as a template.

Display a List

Use this option to show one level of data, such as a list of groups with their prices.

  1. Add a Text Table to your document.
  2. Open the Variables side panel and go to Integrations, then your CRM, then the list you'd like to display, such as your groups.
  3. Add a field to the first cell, such as the group name. The table creates a row for every group in your CRM.
  4. Add the price to the next cell, and add a currency symbol beside it.
  5. To add a description, place it in the cell below the name. Repeat the pattern in each row.
  6. Apply your formatting to the first row. For example, make the name bold with a larger font size, and the description smaller.

If a field has no value in your CRM, the cell displays as empty.

Display Nested Items on Their Own

Use this option to show the items inside your groups, without the group names.

  1. Add a Text Table.
  2. In the Variables side panel, go to Integrations, then your CRM, then your groups, then the items inside them.
  3. Add a field, such as the display name, to the first cell. The table creates a row for every item across all groups.
  4. Add the price and description using the same pattern as above.

Display Groups and Nested Items Together

Use this option to show each group with the items that make it up nested below it.

  1. Add a Text Table and set up your group row as shown above, with the group name and price.
  2. Open the row settings for that row and change the row type to Group Row. A nested row is created below it automatically.
  3. Anything you place in the group row doesn't repeat by itself. Only variables from the nested list repeat.
  4. In the nested row, add a variable from your nested list, such as the item display name. Indent it so it's clear which items belong to the group.
  5. Add the item price to the next cell, and add a currency symbol.
  6. Adjust the formatting to show the hierarchy. For example, make the group price larger so it's clear it's the overall cost, and the item prices smaller so they show what makes up that price.

Tip: If you only want to show the group total, leave the price out of the nested row. You can also add more columns for any other field coming from your CRM.

Add a Total

To show an overall total, add a regular field at the bottom of the table, such as your CRM's total amount or estimated cost field.

Preview Your Table

Open the preview and refresh it to confirm each table displays as expected. When you're ready, save the document as a template.

FAQs

How do I know which fields I can display as a list?

In the Variables side panel, look for fields labelled array. These come through as lists and can be displayed in a Text Table.

Can I display more than one level of data?

Yes. If a list contains another list, you can display the levels together using a Group Row, or display only the nested items.

Can I use something other than a Text Table?

Not right now. CRM data displays in Text Table cells only.

Can I show the group total without the item breakdown?

Yes. Leave the price out of the nested row, and the table only shows the group total.

Does this work with every CRM?

Yes. It works with any CRM integrated with Proposify. The names of your groups, items, and fields depend on how your CRM is set up.

Why build the table in a document first?

With a CRM record linked, you can preview the output and confirm the table displays properly. Once it does, save it as a template to use again.

Still have questions? Reach out to our support team and we'll be happy to help!

Was this article helpful?
0 out of 0 found this helpful

Articles in this section