Products and Product Collections
In the Products section in the dashboard, you can add your products and group them into collections. Using standard and custom product attributes (metadata), you can create product-specific rules limiting promotion and loyalty-earning rules. This article shows how to manage products and use them in campaigns.
Contents
- Glossary
- Add Products
- Import Products and SKUs with CSV
- Product Metadata
- Product Filters
- Creating a Product Collection
- Using Products
- Products and Collections Maintenance
Glossary
The glossary explains the terms used when working with products and product collections.
Product ID
When adding a product to your account (using the Dashboard or API), a unique internal identifier is assigned to it. You can find it in the URL address when viewing product details. The product ID is generated by Voucherify automatically when adding a new product and it cannot be edited. Here is an example of a product ID:
prod_09268673c85013482b
Source ID
Source ID is an optional attribute that reflects a unique product identifier from your system (also known as an external ID). Besides the source ID, each product is automatically assigned to a special internal ID (product ID) generated by Voucherify when adding a new product.
Filters Editor
The Filters Editor builds filters using standard and custom product attributes. You can use it to browse particular products or to group inventory into product collections. To open the Filters Editor, click Find and apply filters in the Products section.
Product Collection
Product collections group products under predefined criteria. You can create static collections that remain unchanged with time or dynamic collections that update the product list with ongoing changes. Adding products to Voucherify is not required to create dynamic collections.
Validation Rules
You can attach optional limits to your incentives and earning rules (loyalty program). A customer's order needs to meet all assigned rules to make a successful redemption or get loyalty points.
Order
The order entity lets you pass your transactional data to the Voucherify account. Passing order items with a redemption request is required to execute product-specific limits.
Product Metadata
Standard attributes and metadata can describe products. Metadata lets you extend product characteristics with custom attributes. Each custom attribute stores data in a key and value pair, for example – "color": "blue".
Discount Effect
When creating discounts (in-cart discounts, coupons) or gift cards, you must choose how they will be applied to the customer's order. Different discount effects are available for different campaign types. Amount and percent discounts can be applied to the whole order or particular items, while unit discounts can add new or only missing items to the customer's cart.
SKU
A stock-keeping unit (SKU) is a product variant. You can define many product SKUs (variants) for each product. Each SKU has its metadata and attributes. During the validation process, SKUs are treated as products. This means that the SKU inherits the metadata assigned to the product and combines product and SKU attributes.
Add Products
You can add a new product in the Products section in the dashboard or with the Create Product API. Adding products to Voucherify is not required to create dynamic collections and product-specific campaign rules.
Add a new product in the dashboard
Creating a new product is a three-step process:
- Adding product details.
- Adding product variants (SKUs) (optional).
- Adding custom attributes as metadata (optional).
Go to the Products section and click Create product.
Add product Details:
- Provide the product name (required).
- Provide the source ID (unique external identifier) (optional).
- Provide the product price (optional).
- Create an attribute(s) corresponding to variants. Confirm the attribute with the enter key. The next step will fill it with different values when creating particular variants (SKUs).
- Upload the product image (optional).
- Click Next step.
Add SKUs (optional):
- Click Create SKU.
- Fill in the Details:
- Name (required).
- Source ID (optional)
- SKU Price (optional)
- Add an image (optional)
- Enter values to attributes (optional).
- Add metadata (optional)
- Click Save.
- Click Next step.
Add Metadata (optional). Use metadata definitions added firstly to the Metadata Schema:
- Configure values for the metadata keys.
- If necessary, Add next property to configure new metadata.
- Click Next step.
Review the product data in the Summary and click Save to add the product.
Add a new product via API
With the Voucherify Product API, you can create new products and SKUs as well as manage items that have already been created.
Import Products and SKUs with CSV
Using a CSV file, you can import products and SKUs into your project. This method can also be used to update the names of existing products in Voucherify.
Import Products with CSV
Prepare a CSV file with your products.
Before you start
- Create a comma-separated value (CSV) file or download the CSV import template (see below).
- Name is a required field. The remaining fields in the CSV template are optional.
- Override/Update products' names in Voucherify using this method. Data will be updated for each product included in the CSV file whose source_id matches a source ID in Voucherify. No other data can be updated other than the product name.
- Dates and date-time attributes need to be provided in the the ISO 8601 standard. For example, 2022-03-11T09:00:00.000Z or 2022-03-11.
- Columns that cannot be mapped to standard fields will be mapped to Custom attributes and added as the product metadata. The number of custom attributes you can import as metadata is unlimited. To provide the proper data type, you need to add all custom attributes to the metadata schema before importing the file.
- Product attributes (not custom attributes) need to be separated by a comma and enclosed in double quotes, i.e., "attribute1,attribute2".
- Headers with metadata names cannot contain white-space characters.
- If you import metadata defined in the schema as arrays (multiple), you need to separate each value using a comma, for example:
- an array of strings: "subscribed, premium"
- an array of numbers: "123,234"
- an array of dates: "2000-01-01,2000-01-02"
CSV File Template
When the CSV file is ready, go to the Products section and click on the Import CSV tool in the top right corner.
- Select Import products.
- Upload the CSV file and go to Map fields.
- Map data from the CSV columns to Voucherify fields. On the left, there are the CSV column names that need to be mapped to Voucherify fields from the Select property list or to Custom attributes and their property name.
- After selecting the matching field, click the plus button to confirm the mapping.
- When all fields are mapped, click Import.
The import process can take some time, depending on the number of products or SKUs being added. When the import is finished, Voucherify will notify you about the result in the Notifications Center. Click Notifications and select Go To Notification Center at the bottom, then select Personal Settings > Import products to set up notifications for importing products.
Import SKUs with CSV
Before you start
- You must import products first, then import SKUs.
- Required fields are source_id and product_id (this value is the parent product's source_id).
- SKU source_id must be unique in the entire product catalog, no duplicates allowed.
- SKU attributes need to be in the form of a stringy-fied JSON, i.e.
"{'color':'blue'}"
. These attributes must be defined in the product beforehand in order for you to be able to import them to the SKU. - You can use this method to update the following parameters in bulk: SKU and the SKU price.
CSV File Template
When the CSV file is ready, go to the Products section and click on the Import CSV tool in the top right corner.
- Select Import products.
- Upload the CSV file and go to Map fields.
- Map data from the CSV columns to Voucherify fields. On the left, there are the CSV column names that need to be mapped to Voucherify fields from the Select property list or to Custom attributes and their property name.
- After selecting the matching field, click the plus button to confirm the mapping.
- When all fields are mapped, click Import.
The import process can take some time, depending on the number of products or SKUs being added. When the import is finished, Voucherify will notify you about the result in the Notifications Center. Click Notifications and select Go To Notification Center at the bottom, then select Personal Settings > Import products to set up notifications for importing products.
Product Metadata
With metadata (custom attributes) in products and SKUs, you can create and execute product-specific campaign rules whether you decide to sync your inventory with Voucherify or not. You can upload products and use metadata to extend their characteristics with custom attributes or skip adding products and still use metadata to validate the customer's cart while redeeming the code.
Metadata Schema
With the Metadata Schema, you can reflect the custom product and SKU properties. In effect, every product or SKU will get a set of custom fields (each for a corresponding level or in an array form), which you can fill in if you decide to add or import your product catalog to Voucherify. If you do not want to import your catalog, you can pass added metadata attributes with order line items in the redemption request and still execute metadata-specific validation rules in your campaigns.
Products and SKUs share the same dedicated schema that stores all their custom attributes and ensures data integrity. To add new metadata to a schema:
- Go to the Project Settings and the Metadata schema tab.
- Expand the list of Standard schemas and choose Product to add a new definition of metadata attribute.
- Choose Add new definition to define custom attribute details.
- You do not attach these attributes to specific products or SKUs; you define their names, types, and values (optional). If you check the mandatory option, defining this attribute value will be required when adding a new product or SKU to your account.
- For string and number properties, you can define additional conditions for accepted property values.
When a new definition is ready, confirm with Save. For the list of all metadata types and available configurations, go to the Getting started guide.
Product Filters
You can use filters for standard searching (to browse particular items) and for grouping products into collections. To find product filters, go to the Products tab in the Campaign Hub section, and click Add filter.
Standard product filters:
- Source ID
- Name
- Creation date
- Price
How to Use Standard Filters?
- Go to the Products section in your dashboard and click Add filter.
- Click the name of the filter, for example, Price.
- Use available conditions. You can create many filters for a single attribute. For example, two conditions: more than or equal $25; less than or equal $50.
- Once ready, Save the filter.
- You can add another filter from the list to refine the results. Use the AND/OR logical conjunctions to define if items need to match all added filters (AND) or only one of them (OR).
The results that meet the filters are updated in real time. From this view, you can group products into collections.
How to Use Custom Product Filters (Metadata)
WIth the Custom attributes (metadata), you can filter results that are not available by default. You can choose to filter by metadata already added to the Products schema or filter by a new metadata attribute. Although you can create filters with a new metadata attribute, it is highly encouraged to add all needed metadata to your Product schema first.
Creating a Filter with a Custom Property
- Add a new metadata attribute to the schema (if necessary).
- Go to the Products section and click Add filter.
- Select Metadata.
- Choose a previously added metadata attribute.
- Use available conditions. You can create many filters for a single attribute.
- Once ready, Save the filter.
- You can add another filter from the list to refine the results. Use the AND/OR logical conjunctions to define if items need to match all added filters (AND) or only one of them (OR).
The results that meet the filters are updated in real time. From this view, you can group products into collections.
Creating a Product Collection
Collections group products that share the same attributes (standard and custom ones). Product collections can be used in validation rules to model product-specific limits. Collections can be created using the filters in the Products section or in the Product Collection section in the dashboard. There are two types of collections:
- Static collection that remains unchanged after it is saved. Each static collection may contain up to 20 products.
- Dynamic collection that checks each incoming order item against collection criteria and updates its product list in real time.
Both static and dynamic collections are built on top of applied filters. Additionally, a static collection can be created by manually selecting items from the main products list.
You can create up to 100 product collections in each project.
Creating a Static Collection
Follow the steps below to create a static collection.
Note
- Unlike dynamic collections, static collections are not updated even when new items match collection criteria in the future.
- Each static collection may contain up to 20 products.
- Adding a product to the static collection equals adding all product SKUs to the static collection.
- Go to Products in the dashboard and browse the products you want to include in the collection by using the filters. Alternatively, go to the Product Collections and click Create collection.
- Mark the checkboxes next to the items you want to add to the collection.
- Click Save as collection and select Static collection.
- Name your collection and click Save. In the Product Collections, name your collection and click Save as collection.
Once saved, the collection is created and it cannot be updated.
When a product that is added to the static collection has SKUs, all its SKUs are also added to the static collection.
Creating a Dynamic Collection
Follow the steps below to create a dynamic collection.
- Go to Products in the dashboard and apply filters to define the criteria for the products included in the collection. In the Product Collections, click Create collection and apply filters.
- Click Save as collection and select Dynamic collection.
- Name your collection and click Save. In the Product Collections, name your collection and click Save as collection.
Once saved, products dynamically join and leave the collection depending on whether they meet the criteria or not.
SKUs and Dynamic Collections
Adding a product to the static collection equals adding all product SKUs to the static collection. When it comes to the dynamic collections, the validation is performed separately on the product level and separately on its SKU level. If the product matches the collection filters, only the product enters the collection. The product's SKUs are validated individually against collection filters and need to match them to enter the dynamic collection. In the dynamic collection, the SKUs do not enter the collection just because the product enters the collection.
Predefined collection
In each Voucherify project, you can find a predefined collection All Products that gathers all items already added to your account and items that come with each request. You can use this collection to build product-specific validation rules that will be checked for each product coming in the customer's order.
Using Products
If you pass orders with validation or redemption requests, they will be validated against product-specific campaign rules and limits. The order object needs to provide the list of order line items and their attributes. Voucherify validates each item from the customer's cart, whether it is added to your account or not. You can read more about the Order object in this API reference.
Using products in Voucherify in short:
- You can use discount effects and apply discounts to specific items only, including the cheapest or most expensive items.
- You can create order-related validation rules to model the required cart structure that qualifies customers for redemption or earning new loyalty points.
- You can create coupons and auto-applied promotions with unit discounts. Redeeming a unit discount gives a customer a free product in a predefined number.
- Read the Product-Specific Campaigns article to learn more
Product and Collection Maintenance
You can manage your products and collections using the dashboard – Products and Product Collections, respectively – or Products API.
Managing Products
In the Products section, you can:
- View the product list
- Create static and dynamic collections through fitlers
- Create products
- Import CSV files with products or SKUs
- View product details (in the three-dot menu or by clicking the product name)
- Product dashboard: Name, source ID, price, and attributes
- SKUs – all SKUs of a given product
- Metadata – all custom attributes attached to the product
- Activity – all actions performed with regard to the product or its SKUs. Open the event or go to log to learn more details about a given activity.
- Edit product details (in the three-dot menu)
- Delete a product by moving it to the bin or deleting it permanently (in the three-dot menu)
Managing Product Collections
In the Product Collections section, you can:
- View the collection list
- View collection details, including the products included in the collection and the filters used to create the dynamic collection
- Delete a collection
Once saved, you cannot edit the collection.