Auth
API key or user and password
Update method
Polling
Resources
Products, Categories
What you get
Products
Products as parent records, variants as children - with prices and stock per subshop, category assignments, options, and custom product fields.
Categories
Power category pages, attach category context to product records, and drive navigation.
Connection settings
Add an integration using the WEBSALE connector, then fill in the base URL and pick one way to authenticate.string
required
The base URL of your WEBSALE shop, for example
https://demo-shop.com.toggle
Authenticate with a WEBSALE API key. Turn it on and enter the API Key.
toggle
Authenticate with a WEBSALE user. Turn it on and enter the Username and Password.
config/setup endpoint, and the settings panel shows the error WEBSALE returned when the test fails.
Channels
A WEBSALE channel in Frontic has a selection of currencies available. Translations come from the languages set up in your WEBSALE shop.string
required
A label for the channel in Frontic.
multiselect
required
Locale keys this channel covers. Populated from WEBSALE’s languages.
select
required
The translation used when a value is missing in another locale.
multiselect
Currencies the connector pulls in, chosen from the currencies set up in WEBSALE. Each product record is emitted once per currency and translation.
Data Feeds
The WEBSALE connector exposes two feed types:
The standard Settings → Updates → Schema setup wizard applies - see Data Feeds in the overview. For WEBSALE specifically:
- Updates step - Polling is the only update method. WEBSALE doesn’t send webhooks, and the connector doesn’t accept pushes through the Ingest API.
- Incremental polling - scheduled polls fetch only products updated since the last successful poll. Categories are always fetched in full.
- Manual refresh - every WEBSALE feed exposes a Refresh action that downloads the export feeds again and re-runs the feed against the source in full.
Product Feed
Prices, stock levels, and category assignments don’t come from the WEBSALE API. They come from Frontic export feeds: JSON files that WEBSALE generates, one per subshop, each stating the subshop’s currency and language. Set them up in WEBSALE, then list their URLs on the Products feed.list
The URLs of the Frontic export feeds in WEBSALE. Add one URL per subshop you want prices and stock for.
What the data looks like
Variants
- Products with variants - the product becomes the parent record, each variant becomes a separate record with
parentIdpointing back to the product. A variant inherits every field it leaves empty from its parent. - Simple products - emitted as a self-parented record using the same source ID on both sides. See Product Models for how this shape composes at the API layer.
Prices and stock per subshop
The connector reads your WEBSALE subshops with their currency and language, and takes each product’s price and stock from the export feed of the matching subshop. A channel record for a given currency and translation carries:$price- the product’s price in that currency, asamountandcurrency. Map it into the Price composite in the Value Composer.$stock- the stock level from the same subshop. A variant that no export feed lists gets-1.
Translations
The connector fetches products and categories once per subshop. Fields whose value differs from the shop’s default become that subshop language’s translation, so each translation on your channel gets the localized text of the subshop with that language.Attributes split into options and properties
The connector stamps attributes onto the feed record under the reserved$-prefix namespace:
$options- the variant’s selection, as a flat list ofnameandvaluepairs. Drives variant selectors (size, colour, etc.).$properties- WEBSALE’s custom product fields, each with itsname,label, andvalue. Labels come from the custom product field settings in WEBSALE. Fields with an empty value are left out.
Category relations
The connector adds a flat list of category IDs onto each parent product record under$rel.categoryIds, taken from your export feeds. Category-link blocks and syncs that need only the IDs can map this directly in the Value Composer.
Auto-delete reconciliation
On every poll and manual refresh, the connector compares what Frontic holds with the source and emits deletes for records that have disappeared. For categories the source is the WEBSALE API; for products it’s the set of products and variants in your export feeds.Good to know
- Read-only. The WEBSALE connector pulls from WEBSALE; it doesn’t push back. Catalog edits happen in WEBSALE.
- One subshop per language. Translations are keyed by language. When two subshops share a language, only the first one provides that language’s texts.
- Reserved
$-prefix keys. The connector emits$options,$properties,$price, and$stockon product records. Don’t use$-prefixed keys for your own custom attributes - Frontic reserves that namespace for connector-side normalization.
Related
Product Models
How WEBSALE’s products and variants compose at the API layer.
Xentral
Another polling connector with the same
$options / $properties split.