Mosce ERP · Help Center
Data

Import products

How to load your product catalog from a CSV file - download the template, validate, and confirm the import.

Import products

If you are setting up Mosce ERP for the first time or need to update your catalog in bulk - the cost price of your entire line, a distributor's list, a database exported from another system - the Import button lets you upload a CSV file and load all the products in a single step. Mosce ERP validates the file before saving anything.

Before you start

  • You need the products:bulk-import permission. If the Import button does not appear in the toolbar of the products list, ask whoever administers the account to assign it to you.
  • The file must be in CSV format (comma-separated values), encoded in UTF-8.
  • There is a limit on rows per file and files per month depending on your plan (see "Limits" below). For products, this limit is strict - see "Large files" below.

Step 1 - Download the template

On the Products page, click the Import button in the toolbar. On the first screen of the wizard, download the template with the Download CSV template button.

The template includes two example rows (a physical product and a service) and all the headers that Mosce ERP expects. The columns are:

ColumnRequiredDescription
nameYesName of the product or service.
skuNoInternal SKU code. Primary key for duplicate lookup - always recommended to include it.
referenceNoAlternative reference. May contain only letters, numbers, hyphens, and underscores.
barcodeNoBarcode (EAN-13, EAN-8, or another). If left empty on a new product, Mosce ERP can generate it automatically.
descriptionNoLong description of the product.
categoryNoExact name of the category. If the category does not exist, the row will fail validation.
unitPriceYesSale price (decimal number, for example 450.00). Must be greater than zero.
costPriceNoCost price (decimal number). When creating a product the cost is required in the record; in an import that updates an existing product, if you leave this column empty the current cost is kept (the import never erases an already saved cost). It is only overwritten when you specify a value.
taxableNotrue if the product is subject to taxes, false if not. Defaults to true.
typeNoPRODUCT for a physical good, SERVICE for a service. Defaults to PRODUCT.
unitNoUnit of measure (for example, UND, KG, LT, HR).
isActiveNotrue for active, false for inactive. Defaults to true.

Important: the column names must be exactly as they appear in the template. Do not translate or rename them.

Step 2 - Validate your file

With your file ready, drag it into the window or select it with the file explorer. Mosce ERP reviews it without saving anything yet.

If everything is correct, you will see a preview of the first rows and the Continue button becomes enabled.

If there are errors, a table appears with the row number, the problematic field, and the reason for the error (for example, "Sale price is required", "Category not found", or "Reference contains invalid characters"). You can download the full report with the Download errores.csv button, fix the file, and upload it again.

The most common errors in product imports are:

  • unitPrice empty or with text instead of a number.
  • category with a name that does not exactly match any existing category (including uppercase/lowercase).
  • reference with disallowed special characters (spaces, periods, commas).

Step 3 - Confirm the import

Before loading the data, choose a mode:

  • Create new records only - if a row matches a product that already exists (by SKU, barcode, or reference), it is discarded without error. Useful for a clean initial load.
  • Create new and update existing - if a row matches an existing product, its data is updated. If there is no match, a new product is created.

Click Import to begin. When it finishes, you will see a summary with the number of products created and the number of products updated.

How does Mosce ERP identify duplicate products?

Mosce ERP compares each row of your CSV with the existing products using the following logic, in order of priority:

  1. SKU (sku): if the SKU matches an existing product, it is considered the same product.
  2. Barcode (barcode): if there is no SKU in the row, Mosce ERP looks up by barcode.
  3. Reference (reference): if there is no barcode either, Mosce ERP looks up by internal reference.
  4. If there is no match on any of the three, the product is created as new (Create new and update existing mode) or discarded (Create new records only mode).

Always including the sku is recommended to avoid unintentional duplicates.

Large files

For products, the rows-per-file limit is strict (see the table in "Limits"). If your file exceeds that limit, Mosce ERP will show you an error and ask you to split it into smaller files and upload them one by one. Product files cannot be processed in the background due to restrictions related to automatic code generation.

If you have a very large catalog, split the CSV into batches of the maximum size allowed by your plan.

Limits

PlanRows per fileFiles per month
Free1 0003
Starter10 00020
Professional100 000unlimited
Enterpriseunlimitedunlimited

The files-per-month counters reset on the first day of each month.

Frequently asked questions

What if Excel saves my CSV with semicolons instead of commas? Mosce ERP only accepts commas as the delimiter. When saving from Excel, choose CSV (comma delimited) or CSV UTF-8 (comma delimited).

What about prices in other currencies? Importing prices in multiple currencies is not available via CSV. The unitPrice field corresponds to the base price in the main currency configured in your account. Additional prices per currency are configured individually from each product's record.

Can I import product images? No. The CSV import does not include images. To upload images, open each product's individual record and use the image upload button.

What about accents and the letter ñ in names? Make sure to save the file in UTF-8 encoding. If special characters look wrong after importing, save the CSV as UTF-8 and try again.

Can I import columns that are not in the template? No. Mosce ERP only reads the columns from the template. Any extra column is ignored without causing an error.

Must the category exist before importing? Yes. The category field only accepts names of categories that already exist in your account. If the category does not exist, that row will fail validation. Create the categories first (or import them using the category import wizard) and then import the products.


Last updated: 2026-05-11