Ulta Beauty: marketplace guide
About this guide
This is a ChannelEngine guide on the US-based Ulta Beauty Marketplace. Here you can find information on how to request an Ulta Beauty Marketplace account, how to configure this marketplace on ChannelEngine, and what the specific requirements are.
Table of contents
Marketplace-specific requirements and exceptions
About the marketplace
Ulta Beauty Marketplace (also called UB Marketplace) is the curated, Mirakl-powered marketplace of Ulta Beauty, the largest specialty beauty retailer in the United States. It launched in October 2025 with more than 100 brands across beauty, wellness, and adjacent lifestyle categories, and it is integrated into the Ulta Beauty shopping experience on ulta.com and in the Ulta Beauty app with unified search, cart, and checkout.
Commercial information
| Founded | 1990 (Ulta Beauty); October 2025 (Ulta Beauty Marketplace) |
| Founder | Richard E. George and Terry Hanson |
| Headquarters | Bolingbrook, Illinois, United States |
| Area served (orders) | United States (lower 48 states) |
| Area served (shipments) | United States (lower 48 states) |
| Revenue | $12.4 billion (Ulta Beauty, Inc. net sales, fiscal 2025) |
| Number of monthly visits | 42.7 million (2026) |
| Website | www.ulta.com |
| Product categories | makeup, skin care, hair care, fragrance, body care, wellness, men's grooming, beauty tools and tech, luxury beauty, and global beauty, e.g.: K-beauty |
| Input language | English (US) |
| Input currency | USD |
| Content creation | no |
| Minimum number of SKUs | no |
| Advertisement options | yes |
How to request an account
To start selling on Ulta Beauty Marketplace, apply at ulta.com/company/marketplace. Ulta Beauty reviews every application and invites approved brands to join, so you cannot create an account on your own.
Who can apply
- Brands only. Distributors and resellers are not accepted.
- Your business must be registered in the United States.
- You must be able to provide a valid W-9 form (W-8 forms are not accepted), an Employer Identification Number (EIN), a U.S. business address, and U.S. bank information.
- You must fulfill from a U.S.-based fulfillment center, pick, pack, and ship orders within two business days, ship with DHL, FedEx, UPS, or USPS, and provide a tracking number for every shipment.
- Every item, including bundles, needs a UPC.
To sell on any US-based marketplace, the following seller requirements apply to you in general:
- US Taxpayer Identification Number (TIN)
- US-based warehouse
- Ability to process returns
- Customer service available by email, at a minimum
Associated costs
The terms in your Ulta Beauty Marketplace agreement are the ones that apply to you, so confirm the commission, any other fees, and the payment schedule there.
Marketplace features
| Supported | Not supported |
| Product content | Sales channels |
| Product offers | Refurbished products |
| Orders (no split) | Repricing |
| Shipments | Cancelations (marketplace) |
| Returns (merchant) | Returns (marketplace) |
| Carrier mapping | Multiple stock locations |
| Product variations (manual) | Marketplace fulfillment service |
| Invoice uploads | Last-mile delivery/shipping labels |
| Settlements |
Settings and configuration
Setting up each channel on ChannelEngine follows the same flow, though not every channel includes the steps listed below.
- Go through the Setup.
- Create a Product selection.
- Complete the Categorization.
- Set up the Mappings: content, offers, and carriers.
- Configure the Pricing: rules and currency conversion.
- Fill in the Stock settings.
- Finish the Activation.
- Check the Listed products overview.
Marketplace-specific requirements and exceptions
The section below describes exceptions to the standard settings and configuration steps required to set up this channel on ChannelEngine.
Setup
On ChannelEngine
Connection
This channel is a Mirakl-based channel. Therefore, you connect to it with your Mirakl Connect SSO account. For more information on configuring Mirakl Connect SSO with ChannelEngine, check out the Mirakl-based channels: SSO authorization article.
Invoice uploads
To configure your invoice settings, go to Advanced settings. Then, select one option from the dropdown menu in the Enable invoice uploading field, which contains the following options:
- ChannelEngine invoices - when ChannelEngine receives a shipment, ChannelEngine automatically generates an invoice and attaches it to the shipment before exporting the shipment.
- Merchant invoices (optional) - when ChannelEngine receives a shipment, ChannelEngine exports the shipment – even if there is no invoice attached to it.
- Merchant invoices (required) - when ChannelEngine receives a shipment, ChannelEngine only exports the shipment if an invoice is attached to it. If not, you receive a notification.
- None - when ChannelEngine receives a shipment, ChannelEngine takes no action other than notifying you that no invoice is present.
If you select one of the Merchant invoices options, make sure to upload the invoice to ChannelEngine via the Merchant API or via the web interface. To learn more, check out the article ChannelEngine: upload merchant invoices.
Mappings
Content
All products (required)
The following required attribute is common to all Mirakl-based marketplaces:
-
Export strategy - choose a strategy for exporting product data. Select from:
- Yes - export all product content to the marketplace, including the EAN (GTIN), category, and other mapped attributes. This option is ideal if you manage both product content and offers on ChannelEngine for the marketplace. Ensure that you map all required attributes.
- No - do not export product content to the marketplace. Choose this option to keep product content excluded from exports and only export the offers. This option is ideal if you do not want to export the product content yet, or you want to export only the product offers because the product content already exists on the marketplace.
- Brand - the brand name of the product. Use the exact brand name that was approved for your Ulta Beauty Marketplace account, because Ulta Beauty matches it against its brand list.
- Description 1 - the main product description shown on the product page, paired with Header 1. Write plain, customer-facing copy based on what is on the pack. Do not include pricing, shipping, or promotional claims.
- FSA/HSA eligible - indicates whether the item qualifies for purchase with a flexible spending or health savings account. Ulta Beauty uses this value to power its FSA/HSA Eligible shopping filter.
- Has CBD - indicates whether the product contains CBD.
- Hazard class - the U.S. DOT hazard class of the item, e.g.: 3-Flammable Liquids for flammable liquids. Fill this in only when Is this item hazardous material? is Yes. Take the value from the product's safety data sheet (SDS).
- Hazardous disposal classification (FED) - the federal disposal classification for the item when it becomes waste, for example when a unit is returned or damaged. Take the value from the SDS. Fill this in only for hazardous items.
- Header 1 - the heading displayed above Description 1 on the product page, e.g.: 'About the product'.
- Is Prop 65 - indicates whether the product requires a California Proposition 65 warning. If Yes, add the warning text to Product warnings.
- Is this item consumer commodity/ limited quantity? - indicates whether the item ships under the U.S. DOT consumer commodity or limited quantity provisions for hazardous materials. Your carrier uses this to label and handle the parcel correctly.
- Is this item hazardous material? - indicates whether the item is regulated as a hazardous material in transport, which is common for aerosols, nail lacquers, and fragrances. When Yes, also complete Hazard class and Hazardous disposal classification (FED).
- Item visibility - controls whether the item is visible active or inactive. Choose one of the values.
- Main image - the URL of the primary product image. Brands supply their own imagery, and the Ulta Beauty team edits it to fit the product pages, so send the highest-quality original you have. The URL must be publicly reachable.
- Master SKU - the SKU of the parent product. Give every variant of the same product (e.g.: all shades of one lipstick) the same Master SKU. For a product without variants, use the same value as Seller SKU.
- Qualifies for the ethyl alcohol exemption for perfumery products - indicates whether the item meets the DOT exception for retail cosmetics that contain ethyl alcohol (49 CFR 173.150(g)). The exception generally applies to products with no more than 70% ethyl alcohol by volume that meet the quantity limits and carry the marking "Contains Ethyl Alcohol" on the package. Confirm eligibility with your compliance team.
- Return : dispose in store ? - indicates whether a returned unit should be disposed of in the store instead of being sent back to you. Guests can return Ulta Beauty Marketplace items at any Ulta Beauty store, so use Yes for items that cannot be resold or safely re-shipped, such as hazardous or hygiene-sensitive products.
- Seller SKU - your unique SKU for the sellable item. It identifies the product in your content and offer, and it comes back on order lines. On ChannelEngine, this is the Merchant product no.
- Short web copy - a short marketing line (one or two sentences) for the product page and product cards. Keep it distinct from Description 1.
- Tax category - the tax category of the product, used for sales tax classification. Select from one of the available options.
- Unit height (in) - the height of the packaged sellable unit in inches. Enter a decimal value without a unit.
- Unit length (in) - the length of the packaged sellable unit in inches. Enter a decimal value without a unit.
- Unit weight (lb) - the weight of the packaged sellable unit in pounds. Enter a decimal value without a unit.
- Unit width (in) - the width of the packaged sellable unit in inches. Enter a decimal value without a unit.
- Variant order - a whole number that sets the position of this variant within its variant group on the product page. Lower numbers appear first.
- Web product name - the product title shown on ulta.com. Use the product name and, where it helps guests tell items apart, the size or type. The brand is shown separately, so leave it out of the title.
All products (optional)
- AltImage SKU - the URL of the first additional product image, such as a back-of-pack or in-use view.
- AltImage SKU02-07 - the URLs of the second through seventh additional product images.
- Description 2-3 - additional description blocks, paired with Header 2-3.
- Hex code - the hex color value of the shade, e.g.: 'C68642'. Use it for color and makeup products so the shade can be displayed accurately.
- How to use - usage directions, shown in the How to Use section of the product page. Copy them from the pack.
- Ingredients - the full ingredient list, in the order and spelling printed on the pack. Guests and AI shopping assistants rely on this field to evaluate products, so include it for every item that has one.
- Item size - the net content of the product as a number, e.g.: '1.7'. Pair it with Item size unit of measure.
- Item size unit of measure - the unit for Item size, e.g.: oz, in, ct. Choose one of the values Ulta Beauty accepts.
- Kit/set value - the combined retail value of the items in a kit or set, in U.S. dollars. Enter a decimal value without a currency. Use it only for kits and sets.
- Pricing category - Ulta Beauty's pricing grouping for the item. Use the value Ulta Beauty provides during onboarding.
- Product warnings - warning text from the pack, such as "For external use only" or a Proposition 65 warning.
- Shade description - the shade or color name of a variant, e.g.: 'Medium Warm'.
- Smoosh image - the URL of an image that shows the product's texture or color as a smear, commonly used for makeup and skin care.
- Swatch image - the URL of a small image of the shade or color, shown in the shade selector on the product page.
- Tax - drug label - indicates whether the product carries a Drug Facts label, as with sunscreen and acne treatments. Some states tax these items differently.
- Variant group code - a code shared by all variants that belong on the same product page. Give every shade or size of the same product the same code.
- Variant SKU value [variant attribute] - the value that tells this variant apart within its group, for example the shade name or the size. The attribute name in brackets depends on the Variant type you choose.
- Variant type - the attribute that differs between variants in a group, for example shade or size.
- Video - the URL of a product video.
- Video 2 - the URL of a second product video.
- Video 2 VTT text - the WebVTT caption text for Video 2, used for accessibility.
- Video VTT text - the WebVTT caption text for Video, used for accessibility.
- Web brand ID - the identifier Ulta Beauty assigns to your brand on its website. Use the value Ulta Beauty provides during onboarding.
- Web brand name - the brand name as displayed on ulta.com.
Offer
Required
- Price - (appears in Pricing if using pricing v2) the item's base price/regular sales price. Enter a decimal value in U.S. dollars. Do not enter a currency.
- UPC number - the Universal Product Code of the item. Ulta Beauty requires a UPC on all items, including bundles. Enter the digits only, with no spaces or dashes.
Optional
The following offer attributes are common to some Mirakl-based marketplaces:
- ECO #1-5 amount - the amount due for the eco-contribution related to the product. E.g.: 2.50.
- ECO #1-5 EPR category code - the extended producer responsibility (EPR) code that applies to the product. For a list of category codes, check out the article Providing data to comply with circular economy regulations in Mirakl's help center (note that you need to be logged in to Mirakl to access this page). E.g.: DE-WEEE, FR-DEA, etc.
- ECO #1-5 producer ID - your producer ID, received upon registering with a packaging register, such as Germany's LUCID. The maximum number of characters is 255.
- Category-specific ECO attributes - depending on your sales country, you might be required to map additional ECO attributes for products in specific categories. Review which ECO attributes to map within each category.
If pricing v2 is activated in your environment, you will see the following offer attributes, which are common to all Mirakl-based marketplaces:
- Allow promotion below min price - set to true to allow the promotion price to drop below your product's minimum price. To learn more, check out the article ChannelEngine: promotions.
- Strike price - the regular selling price. Only map this if you set up a discount. For guidance, check out the Working with discounts section of this article.
- Map your current selling price in Price in Pricing, Price rules.
- Additionally, the Fee groups attribute appears in Mappings, Fee group mappings, if pricing v2 is activated. Map the marketplace fee group ID of the product there.
The following offer attributes are also common to all Mirakl-based marketplaces:
- Available start date - the date from which the product becomes available for sale on the marketplace. The date format is YYYY-MM-DD HH:MM:SS ZZ.
- Available end date - the date from which the product is no longer available for sale on the marketplace. The date format is YYYY-MM-DD HH:MM:SS ZZ.
- Discount start date - the date from which the product's sale price is valid, if applicable. Input the date as a fixed value. The date format is YYYY-MM-DD HH:MM:SS ZZ. All dates follow ISO month-day formatting, and all times follow 24-hour formatting in the UTC timezone. E.g.: 2026-10-25 15:30:00 +01 will start your discount on 25 October 2026 at 3:30 PM, one hour ahead of UTC time.
- Discount end date - the date until which the product's sale price is valid, if applicable. Input the date as a fixed value. The date format is YYYY-MM-DD HH:MM:SS ZZ. All dates follow ISO month-day formatting, and all times follow 24-hour formatting in the UTC timezone. E.g.: 2026-10-30 23:59:59 +01 will end your discount on 30 October 2026 at 11:59 PM and 59 seconds, one hour ahead of UTC time.
- Discount price - (appears only if you use pricing v1) the product's sale price, if applicable. This attribute must have a lower value than the Price attribute.
- Discount quantity threshold - the minimum quantity required for the discount rate to become available.
- Leadtime to shipment - the number of days before you ship the product. You can create your own unique rules, if applicable. For more information on this, check out the article Lead time to ship in Mirakl's help center.
- Minimum quantity alert - map this attribute to receive a notification from Mirakl if your stock drops below the threshold defined.
- Offer state - the product's condition. Find your option from the dropdown menu by selecting the fixed value to apply to all.
- Product tax code - the taxation code applicable to the product.
- Logistic class - your optional shipping class. Make sure to map the shipping class using the marketplace’s codes and not with the labels that are visible in the partner portal's user interface. These codes vary per marketplace. If this marketplace makes use of logistic class codes, they can be found below.
Logistic class codes
| Code | Label | Description |
INIT |
Default logistic family | The default logistic class. Ulta Beauty does not configure any other classes. |
Carrier
Carrier mapping is not required on Mirakl-based marketplaces. However, with carrier mapping, you can map your carrier to a specific list of carriers maintained by this marketplace. Carrier mapping enables ChannelEngine to automatically send the tracking codes to this marketplace, allowing buyers to eventually track the shipment themselves. If your carrier is missing from the list, please directly contact the marketplace.
Pricing
Working with discounts
These instructions apply to most Mirakl marketplaces. If there are any exceptions on this marketplace, these are noted below.
Pricing v1
- To set up a discount, map the Discount price, Discount start date, and Discount end date attributes. If you want to set a permanent discount, map the Discount end date attribute with a date in the far future instead of leaving it unmapped. Otherwise, the offer is not exported, and errors are shown on the Validation and feedback tab.
- The discounted price is only exported if it is lower than the base price.
- If you do not want to set a bulk discount, leave the Discount quantity threshold attribute unmapped.
- To set a bulk discount, the Discount quantity threshold must be set to a value higher than 1. For example, a value of 2 indicates that the buyer must purchase two or more products at the same time to benefit from the discount.
Pricing v2
- To set up your strikethrough price, map the Strike price attribute to your regular price in Offer mappings.
- Then, indicate the discount period. Map the Discount start date and Discount end date attributes to indicate the start and end dates of your discount.
- If you do not want to set a bulk discount, leave the Discount quantity threshold attribute unmapped.
- If you do not set up a bulk discount, set up your discount price:
- Go to Pricing, Promotions.
- Choose your discount method, e.g.: percentage discount, and configure the start and end dates.
- Select the products to which the discount is applied.
- Keep in mind:
- Your discount price and Strike price cannot have the same value.
- ChannelEngine only sets a discount if your discount price is lower than Strike price.
- If set up correctly, your product displays a discount label and a strikethrough price on the channel.
You can run discounts alongside Ulta Beauty promotional events, but Ulta Beauty does not guarantee that your products are included in its event marketing.
Listed products
If you have problems with products not appearing on Mirakl-based marketplaces – especially if you are trying to create products, check the Listed products page for more information. Use the Channel status filter or the Validation and feedback tab to view all known errors for specific products.
If you see either of the below statuses, refer to the article ChannelEngine: why is my product listed as 'Product not found' in the inventory report?:
- Product not found in inventory report
- Product not in offer file
Products that ChannelEngine has failed to export are shown as Invalid, e.g.: products with an empty GTIN or that do not yet exist on the marketplace.
Alternatively, download the error report generated by Mirakl. To do so:
- Log onto the Mirakl platform and go to Catalog, Product imports.
- Identify the latest report and click the See details button.
- Download the CSV file Non-integrated products report.
Additional information
Order extra data items
When an order is imported to ChannelEngine, ChannelEngine also retrieves extra data items related to the order itself – or to order lines. This extra data is specific to this marketplace. An explanation of each can be found below:
Order extra data
| Keys | Conditional* | Description |
orderheaderkey |
yes | The Ulta Beauty order header key. Read-only, so ChannelEngine only displays it. |
*Conditional fields are only displayed if the marketplace provides a value.
FAQs
Can I sell on Ulta Beauty Marketplace as a distributor or reseller?
No. The marketplace is open by invitation to brands only.
Can I ship internationally?
No. Products must ship from a U.S.-based warehouse to guests in the lower 48 states.
How quickly do I need to ship an order?
Within two business days, using DHL, FedEx, UPS, or USPS, with a tracking number.
Do guests know they buy from a brand?
Yes. Product pages show a clear indicator that the item is sold and shipped directly by a brand.
Can guests return Marketplace items in store?
Yes. Guests can return Ulta Beauty Marketplace items at any Ulta Beauty store, at a UPS store, or by mail with a pre-printed label from ulta.com.
Do guests earn Ulta Beauty Rewards points?
Yes. Guests earn points on Marketplace purchases.
Do I need a UPC?
Yes. Every item, including bundles, must have a UPC.
How often does each task run on Mirakl-based marketplaces?
By default, Mirakl-based marketplaces follow the schedule below.
Task schedule on Mirakl-based marketplaces
| Task | Frequency |
|---|---|
| Export product data to marketplace | every 60 minutes |
| Export product offers to marketplace | every 15 minutes |
| Import product offers from marketplace | every 15 minutes |
| Import orders from marketplace | every 15 minutes |
| Export order shipments to marketplace | every 15 minutes |
| Export returns to marketplace | every 30 minutes |
Can I map attributes on ChannelEngine and on the Mirakl platform?
No. Mapping attributes on the Mirakl marketplace platform interferes with ChannelEngine's content export. Therefore, it is recommended to categorize and map content only on ChannelEngine.
Why am I not receiving feedback on my content and/or offer exports?
Some Mirakl-based marketplaces manually review content and/or offers before products can go live. Because of this, feedback reports may take a few hours or several days to become available.
Offer feedback - error reports are mostly generated automatically and are imported quickly.
Content feedback
- Transformation error report - automatically generated and usually imported within a maximum of one day.
- Conventional error report - requires a manual review by the Mirakl-based marketplace, and not all do so. It can take several days for this report to be imported.
Note that the previous feedback report is not removed from ChannelEngine until both the latest transformation and the conventional reports have been fully processed by ChannelEngine. If there are no errors to report, no new reports are generated.
Comments
0 comments
Article is closed for comments.