Skip to main content

Importing Presentation Profiles

Create and update presentation profiles in bulk by uploading a CSV file instead of configuring them manually in the UI.

The presentation profile import lets you create and update presentation profiles in bulk by uploading a CSV file.

You can also create and edit profiles manually in Settings > Data Management > Presentation Profiles. See Presentation Profiles for an overview of how profiles work and how they are applied in allocation and assortment planning.

Use Cases

Use the import when:

  • Setting up profiles for the first time across many sizes and stores

  • Updating min/max values seasonally without editing each profile manually in the UI

  • Migrating presentation standards from an external system or spreadsheet

File Format

The column schema is fixed by Toolio -- only the fields listed below are recognized. Any additional columns in the import file are ignored.

Each row represents one size (and optionally one location) within a profile. Rows that share the same Presentation Profile Name are grouped and processed together as a single profile.

Supported Fields

Field

Type

Required

Purpose

Presentation Profile Name

String

Yes

Name of the profile. Maximum 100 characters.

SKU

String

Yes (if no Size)

External ID of a variant. The size is derived from the variant's size attribute. Case-insensitive.

Size

String

Yes (if no SKU)

A size option value (e.g., XS, M, XL). Must match an existing option value in Toolio.

Location

String

No

External ID of a store. When provided, the row is store-level. When absent, the row applies to all locations. All rows in a profile must be consistent -- see below.

Min

Integer

No

Minimum presentation units for this size/location. Must be a whole number of 0 or greater.

Max

Integer

No

Maximum presentation units for this size/location. Must be a whole number of 0 or greater, and not less than Min when both are provided.

At least one of SKU or Size is required on every row. If both are provided, they must resolve to the same size -- the importer validates this and rejects the row if they conflict.

File Naming

The importer recognizes files whose name contains any of the following (case-insensitive):

  • presentation_profile

  • presentation-profile

  • presentationprofile

Examples: acme_presentation_profile_spring2026.csv, presentation-profile-q1.csv

Example

Presentation Profile Name

SKU

Size

Location

Min

Max

Standard Profile

JACKET-BLK-M

2

4

Standard Profile

XL

3

6

NYC Flagships

S

NYC-001

1

3

NYC Flagships

M

NYC-001

2

5

NYC Flagships

L

NYC-001

2

5

[Screenshot: Example CSV open in a spreadsheet showing Presentation Profile Name, SKU, Size, Location, Min, and Max columns with sample rows]

Import Modes

The presentation profile import supports two modes, selected when running the import: Incremental (the default) and Full Replace. The right mode depends on whether you want to update part of a profile or replace it entirely.

[Screenshot: Import dialog showing the mode selector with Incremental and Full Replace options]

Incremental

Incremental mode upserts rows -- each row is created if it does not exist or updated if it does. Rows not included in the file are left unchanged in Toolio.

Use Incremental when:

  • Adding new sizes or stores to an existing profile

  • Updating Min or Max values for specific size/location combinations

  • Making targeted changes without affecting the rest of the profile

Partial updates: You can include only Min or only Max in a row to update a single value. This is only permitted on rows that already exist in Toolio -- a new mapping with only one of Min or Max is rejected. When updating one value, the result must not invert the range (e.g., updating Min to a value that exceeds the existing Max is rejected).

Full Replace

Full Replace overwrites the entire profile with the contents of the file. After import, any size/location combination that exists in the profile but does not appear in the file is zeroed out -- its Min and Max are set to 0.

Use Full Replace when:

  • The uploaded file is the single source of truth for the profile

  • You want to ensure no stale sizes or stores carry over from a previous import

Both Min and Max are required on every row in a Full Replace import. Rows missing either value are rejected.

Only profiles that appear in the uploaded file are affected. All other profiles in Toolio are untouched.

Store-Level vs. System-Wide Profiles

Whether a profile is store-level or system-wide is determined by the presence of a Location value:

  • System-wide: No rows include a Location. The profile applies to all stores.

  • Store-level: Every row includes a Location. The profile defines min/max per store.

All rows in a profile must be consistent -- mixing rows with and without a Location within the same profile name causes the entire profile to be rejected.

Errors and Skipped Profiles

Profiles are processed all or nothing. If any row in a profile is invalid, the entire profile is skipped and an error is reported for every affected row -- including rows that were individually valid but skipped because a sibling row failed.

Row-Level Errors

Error

Cause

Name required

Presentation Profile Name is blank or missing

Name too long

Profile name exceeds 100 characters

Neither SKU nor Size provided

Both fields are blank

SKU not found

SKU does not match any variant External ID in Toolio

Size not found

Size does not match any size option value in Toolio

Size mismatch

Both SKU and Size were provided but resolve to different sizes

Location not found

Location does not match any location External ID or alias in Toolio

Invalid Min or Max

Value is not a whole number of 0 or greater

Min greater than Max

Both values are present and Min exceeds Max

Profile-Level Errors

Error

Cause

Inconsistent store-level

Some rows in the profile have a Location, others do not

New mapping with partial Min/Max

Incremental mode: a row has only Min or only Max, and this size/location combination does not yet exist in Toolio

Partial update would invert range

Incremental mode: adding only Min or only Max to an existing mapping would result in Min > Max

Full Replace requires explicit Min and Max

Full Replace mode: a row is missing Min or Max

FAQs

Does the import create new profiles or only update existing ones?

Both. If a profile name in the file does not yet exist in Toolio, the import creates it. If it already exists, rows are merged in (Incremental) or the profile is replaced entirely (Full Replace).

My file mixes rows with and without a Location for the same profile. What happens?

The entire profile is rejected. All rows for a profile must either all include a Location (store-level) or all omit it (system-wide). Mixing the two within one profile name is not supported.

I used Full Replace but some sizes still show old values. Why?

Full Replace zeroes out sizes not in the file -- it sets Min and Max to 0 but does not remove the size entries from the profile. If you need to remove a size entirely, edit the profile manually in the UI after import.

What SKU format should I use?

Use the External ID as it appears in your Product & Variant feed. SKU matching is case-insensitive.

Can I include multiple profiles in one file?

Yes. A single file can contain rows for any number of profiles. Each profile is identified by its name and processed independently -- an error in one profile does not affect others.

Did this answer your question?