Export and import data

Gem Logic allows you to export and import data in bulk using CSV and other file formats. This is useful for migrating data from another system, making bulk updates, or generating reports.

See also

Migrating data from another system for a step-by-step guide on migrating your data from another system to Gem Logic.

Export and import actions are available from the Actions menu on most list views.

Exporting data

To export data, navigate to the list view of the records you want to export (e.g. Products, Contacts, Orders) and click the Actions menu. Select the download icon to open the export dialog.

You can choose between several export formats:

  • Excel (.xlsx)

  • PDF (.pdf)

  • CSV - EU format (semicolon-separated)

  • CSV - US format (comma-separated)

The exported file contains all records that match your current filters. Apply filters before exporting to narrow down the data.

Export history

Every export is logged. You can view past exports from Actions ‣ Export history on the corresponding list view. From there you can re-download previously exported files.

Importing data

To import data, navigate to the list view and click Actions ‣ Import. This opens the import dialog where you can upload a CSV file.

Downloading an empty template

Before importing, download an empty CSV template from the import dialog. The template is available in two formats:

  • US format (comma-separated)

  • EU format (semicolon-separated)

The template contains all available columns with two header rows: the first row describes each field, and the second row contains the internal field names. Do not modify or remove these header rows.

Fill in your data starting from the third row. You can delete columns you don’t need and rearrange them as needed.

Creating new records

To create new records, leave the id column empty. Gem Logic will automatically assign an ID to each new record upon import.

Updating existing records

To update existing records, include the id column with the correct database ID of the record you want to update. You can obtain these IDs by first exporting the existing data.

When the id column contains a value that matches an existing record, Gem Logic will update that record with the values from the CSV row instead of creating a new one.

Tip

A common workflow is to first export your existing data, modify the values you need in the exported file, and then re-import it. Since the exported file includes the database IDs, the import will update the existing records.

Import history

Every import is logged. You can view past imports from Actions ‣ Import history on the corresponding list view. Each import entry shows the status and allows you to download the original file or a report with any errors that occurred.

Importing products

The product import follows the same general flow as other imports — download an empty CSV template (US comma-separated or EU semicolon-separated), fill in your rows, and upload the file from Stock ‣ Products ‣ Actions ‣ Import.

Two product-specific details:

  • Existing products are matched by ``item_sku``, not by ``id``. If a row’s item_sku already exists in Gem Logic, that product is updated with the values from the row. Rows with a new or empty item_sku create a new product (an SKU is auto-generated when the field is left blank).

  • The first header rows of the product template are reserved and must not be modified or removed. You can delete columns you don’t need and rearrange them freely.

After upload, the status of each import is visible from Actions ‣ Import history, where you can also download an error report for rows that failed.

Pricing rules in product import

When importing products, pricing for each sales channel is set through three columns that work together as a triple:

  • price — the amount used by the rule (not always the final selling price)

  • pricing_rule — how the selling price is calculated from price

  • sales_channel_price — the sales channel this price applies to

You can set up to 5 of these triples per product (price, price_2price_5, each with a matching pricing_rule_* and sales_channel_price_*). Empty triples are ignored.

Allowed values for pricing_rule

The pricing_rule column must be one of these four values — anything else will reject the row:

  • fixed_price — selling price equals price as-is

  • cost_multiplier — selling price is cost × price (where cost is the sum of the product’s metals, gems and component costs)

  • price_per_carat — selling price is price × total carat weight of the product’s gems

  • cost_based — selling price equals the product’s cost; price is ignored

How the triple is applied

  • If price is set and sales_channel_price is empty, the rule and amount are applied to all sales channels for that product.

  • If both price and sales_channel_price are set, the rule and amount are applied only to that sales channel. Use the second and third triples for additional channels.

  • If price is empty, no pricing changes are made for that triple — even if you fill in pricing_rule or sales_channel_price.

Re-importing to update prices

When re-importing existing products:

  • A blank pricing_rule always sets the rule to fixed_price, both for new products and when updating existing ones. If you want to keep a different rule (such as cost_multiplier or price_per_carat), fill in that value in the pricing_rule column.

After import, Gem Logic automatically recalculates the selling price for each sales channel based on the rule, so you don’t need to also fill in the regular price column.

Supported record types

The following record types support export and import:

  • Attributes

  • Brands

  • Categories

  • Certificates

  • Collections

  • Contacts

  • Customer purchases

  • Email addresses

  • Email templates

  • Giftcards

  • Incoming invoices and credit notes

  • Materials

  • Memos and memo items

  • Outgoing invoices and credit notes

  • Products

  • Projects

  • Quotes and quote items

  • Repairs and repair items

  • Sales and sale items

  • Shipments

  • Storages

  • Supplier orders

  • Tasks

  • Transactions