Skip to content

Bulk import

Bulk Import in the app menu creates alerts from a spreadsheet. Each row of the file becomes one alertAlertOne rule that watches the stock of one variant, or one Assemblified item, at one location. When the available stock is at or below the alert's threshold, Alertified notifies the alert's recipients on the channels it uses. Read more → : one variant at one location, with a threshold and email recipients. You can also reach the page with Import alerts on the Stock Alerts page.

  1. Open Bulk Import and click Download template. You get alertified-bulk-template.xlsx with the five column headings.
  2. Fill in one row per alert, as described below.
  3. Under Upload your file, click the upload area and choose the file, or drop the file on it. The file name and size appear; the remove button takes it off again.
  4. Click Import alerts.
  5. Read the Import results table to see which rows were imported, skipped or refused.
  • An .xlsx file. Other formats, such as CSV, are not accepted.
  • Alertified reads the first sheet only.
  • Row 1 holds the column headings. Each row below it is one alert.
  • The headings must be exactly these five, with this capitalization:

| Column | What goes in it | |---|---| | productId | The Shopify ID of the product. | | variantId | The Shopify ID of the variant. It must belong to the product in productId. | | locationId | The Shopify ID of the location. | | threshold | The thresholdThresholdThe stock level an alert watches for: 0 or higher. The alert fires when the available stock is at or below this number. Read more → : a whole number, 0 or higher. | | emails | One or more email addresses, separated by commas, spaces or semicolons. |

All five columns are required in every row. Alertified ignores any other columns. You don’t enter product, variant or location names: Alertified looks them up in Shopify.

To watch a variant at several locations, add one row per location.

| productId | variantId | locationId | threshold | emails | |---|---|---|---|---| | 8234567890123 | 45678901234567 | 76543210987 | 5 | ops@shop.com, alerts@shop.com | | 8234567890123 | 45678901234567 | 76543210988 | 2 | ops@shop.com | | 8234567890123 | 45678901234568 | 76543210987 | 0 | warehouse@shop.com; buyer@shop.com |

The first two rows watch the same variant at two locations, so they create two alerts. The third row watches another variant of the same product and notifies when its available stock reaches 0. The IDs are examples; use the IDs from your own store.

Each ID is the number at the end of the page address in your Shopify admin:

  • Product ID: open the product under Products. The address ends in /products/8234567890123; the number is the product ID.
  • Variant ID: on the product page, click the variant. The address ends in /products/8234567890123/variants/45678901234567; the last number is the variant ID.
  • Location ID: open Settings → Locations and click the location. The address ends in /locations/76543210987; the number is the location ID.

Alertified accepts the plain number, as above, or Shopify’s full ID form, such as gid://shopify/ProductVariant/45678901234567, gid://shopify/Product/8234567890123 or gid://shopify/Location/76543210987.

Alertified checks each row in this order and stops at the first check the row fails. The message appears in the row’s Status in the results.

| Check | Message | |---|---| | A column is empty | Missing productId, Missing variantId, Missing locationId, Missing threshold or Missing emails | | The threshold is not a whole number of 0 or more | Threshold must be an integer ≥ 0 | | An email address is not valid | Invalid emails format | | No variant with this ID in your store | Variant not found in Shopify | | The variant belongs to a different product | Variant does not belong to productId | | No location with this ID in your store | Location not found in Shopify | | The variant already has an alert at this location | Skipped duplicate (already exists) | | An earlier row in the file has the same variant and location | Skipped duplicate (in file) |

For two rows with the same variant and location, the first row is imported and the later one is skipped.

  • Valid rows import even when other rows fail. Fix the refused rows and import the file again; rows that were imported the first time are then skipped as duplicates.
  • Existing alerts are never overwritten. A row for a variant and location that already has an alert is skipped. To change existing alerts, edit them.
  • Imported alerts notify by email. The file has no channels column. To add Telegram, Slack or another channel, select the imported alerts on the Stock Alerts page and use Bulk edit.
  • New alerts start as Waiting. Like any new alert, an imported alert is checked at the next stock change Shopify reports for its variant at its location. See How alerts fire.
  • The variant and location are not limited to the ones the Create alert page lists: any variant and location in your store can be imported by ID.

After the import, a banner sums it up:

  • Import successful: “Created N alerts. Skipped N duplicates.” Rows refused by a check are not counted here; they show in the table.
  • Import failed: no row could be imported (No valid rows to import.), or the file could not be read (Could not read XLSX file.).

The Import results table lists every row of the file with badges for how many are ready, skipped and errors. Its columns are Row (the row number in your sheet, where the heading row is row 1), Product, Variant and Location (the IDs), Threshold, Emails and Status. Status shows OK for an imported row, or the message from the checks above.