Custom Attributes

circle-info

Quick Answer: Custom attributes let you store any extra data on a product — including planning constraints like MOQ, lead times, and safety stock. Create an attribute on one product, export your catalog to fill in values for all SKUs via CSV, then re-import with overwrite enabled. Your next replenishment plan uses those per-product values automatically.

Custom attributes let you add structured data to your products beyond the standard fields. Use attributes to organize your catalog, filter items on the planning page, and — most importantly — store per-product planning constraints that improve replenishment accuracy.

Time Required: 15–30 minutes (depending on catalog size) Difficulty: Beginner Who can do this: Admin or Manager role

How attributes work

circle-exclamation

Planning attributes (special meaning in Moselle)

These four attributes are recognized by the replenishment engine. Per-product values override the global defaults set when creating a plan — if no value is set on a product, Moselle falls back to the plan-level defaults.

Attribute
Attribute name to use
What it controls

MOQ

moq

Minimum order quantity — Moselle won't recommend ordering fewer units than this value

Transit Lead Time

transit_lead_time

Days from order placement to warehouse arrival — shifts reorder timing forward

Production Lead Time

production_lead_time

Days your supplier needs to manufacture the order before it ships

Safety Stock

safety_stock

Days of inventory buffer to maintain above your demand forecast

Other common attributes

Attribute
Example values
Use case

Product Line

"Summer 2024", "Core Collection"

Filter forecasts by collection

Product Type

"T-Shirt", "Hoodie", "Accessories"

Group similar items

Material

"Cotton", "Polyester", "Blend"

Production planning grouping

Grade

"A", "B", "C"

SKU tier segmentation

Add an attribute to a product

  1. Open the item details page for any product

  2. Scroll to the Custom Attributes section

  3. Click + Add

  4. In the dropdown, either:

    • Select an existing attribute from the list

    • Type a new attribute name and click Add New

  5. Enter the value for this product

  6. Click Save

circle-info

Once you create a new attribute on one product, it becomes available to assign on any other product in your catalog.

Set up planning attributes across your whole catalog (bulk workflow)

Adding MOQ, lead times, and safety stock one product at a time isn't practical for large catalogs. Use the export → fill → re-import workflow to set values for all your SKUs at once.

Step 1: Create the attributes on one product

You only need to do this once per attribute — as soon as it exists on one product, it's available account-wide.

  1. Open any product in your catalog

  2. Scroll to Custom Attributes and click + Add

  3. Type moq and select Add New

  4. Enter any placeholder value (e.g., 100) and click Save

  5. Repeat for each remaining planning attribute:

    • transit_lead_time

    • production_lead_time

    • safety_stock

circle-check

Step 2: Export your product catalog

Exporting after creating the attributes generates a CSV with your new attribute names as column headers, pre-formatted and ready to fill in.

  1. Go to Catalog in the left nav

  2. Select the Products tab

  3. Click Export (top right)

  4. Open the downloaded CSV

You'll see moq, transit_lead_time, production_lead_time, and safety_stock as column headers alongside your standard product fields.

Step 3: Fill in values for your products

Add the appropriate value for each product row in the CSV:

Attribute
Example values
Unit

moq

100, 500, 1000

Number of units

transit_lead_time

7, 14, 21

Days

production_lead_time

30, 45, 60

Days

safety_stock

14, 30, 45

Days of cover

Leave a cell blank for any product where you want to fall back to the plan-level default for that field.

circle-exclamation

Step 4: Re-import with overwrite enabled

  1. Go to Catalog > Products > Import

  2. Upload your completed CSV

  3. Check Overwrite Products with Matching SKUs

  4. Click Import Products

  5. Spot-check a few items after import to confirm values saved correctly

See Import Items via CSV for full import instructions and troubleshooting.

Step 5: Re-run your replenishment plan

With per-product constraints in place, your next plan will use the individual values you just set.

Create a Replenishment or Allocation Planchevron-right

When creating or rebuilding the plan, the Transit Lead Times and Safety Stock fields in plan settings still act as fallbacks for any products without an attribute value set.

View all attributes in your account

To see every attribute currently defined:

  1. Go to any item details page

  2. Click + Add under Custom Attributes

  3. The dropdown lists all available attributes

Attributes in forecasting and reports

Attributes appear as filter options on:

  • The Planning page forecast views

  • Custom reports in Analytics

  • Export files when downloading your catalog

Use consistent attribute naming to get the most value from filtering and reporting.

Attributes and CSV import

triangle-exclamation

Frequently Asked Questions

What if I only want to set MOQ for some products?

Leave the moq cell blank for any products where you want no minimum — Moselle will treat those as having no MOQ constraint.

Can I update these values later?

Yes. Export your catalog again, update the values in the CSV, and re-import with overwrite. Then rebuild your replenishment plan to apply the changes.

Do planning attributes affect my forecast?

No — MOQ, lead times, and safety stock are planning constraints only. They influence reorder recommendations in your replenishment plan but do not change your demand forecast.

What's the difference between transit and production lead time?

Production lead time is how long your supplier takes to manufacture the order. Transit lead time is how long shipping takes after the order is ready. Moselle factors both into reorder timing.

Why isn't my attribute column being imported?

Attribute names are case-sensitive and must match exactly. Check for extra spaces, and note that spaces in attribute names become underscores (e.g., "Lead Time" → lead_time).

Last updated