Welcome to Zuora Product Documentation

Explore our rich library of product information

Nested objects handling for CSV templates

This guide walks you through preparing a CSV file for Data Loader, with a focus on nested objects and marker columns that simplify the data import process.

Preparing the CSV file for Data Loader

Nested objects are data structures in which one object is placed within another, creating a hierarchy of related information. Imagine it as a series of containers within containers, each holding a specific set of related data. This structure helps organize data and shows the connection between the main object and its sub-components.

For example, an Invoice in Zuora Billing contains a collection of Invoice Items and Custom Rates. Each Invoice Item includes its own details, like Tax and Discount Items, creating a clear and organized data relationship. In Data Loader, this hierarchy is clearly defined using IsMarker columns, which help identify when a new object needs to be created within another, streamlining the data import process.

Nested Object CSV file Template for Standalone Invoices:

Nested object CSV template
  • The IsMarker column in Data Loader templates shows when a new object needs to be created. For example, in the Standalone Invoices template, the fields IsNewInvoiceItem and IsNewCustomRates indicate when a new item or rate needs to be added.
  • The IsNew marker columns in the CSV file are used to signal when new records should be created in the context of the file, not within Zuora Billing. For example, when adding an Invoice with multiple Invoice Items, the first row for that Invoice will have IsNewInvoice = True . The IsNewInvoiceItem = True indicates a new Invoice Item. Subsequent rows, representing additional Invoice Items for the same Invoice, will have IsNewInvoice = False or can be left blank since it is not a new Invoice anymore. This approach allows the CSV to maintain hierarchical relationships within a flat-file format.
CSV file column values
  • For data accuracy, mapping the IsMarker column in the Field Mapping Interface is mandatory when the value of the IsMarker column is TRUE.
  • You may provide the value of Ismarkercolumn for the child object as True or False, depending on the nesting of the records required for creation.
  • When IsMarker = True all mandatory fields for the main object are required.

  • When preparing a CSV for updating records for a nested object, for example productrateplancharge the first IsMarker Column should be set to TRUE so that Data Loader is aware that a record has to be modified.

Refer to the following sample CSV files: