Models

Cette page n'est disponible qu'en anglais.

The Channel account object

Every field of the Channel account object, with types, required flags and validation rules.

ChannelAccount

FieldTypeDescription
idstringOpaque. Kept when an expired login is reconnected (channel_account_id). Disconnecting removes it: connecting that account again gives a NEW id, the old one answers 404 channel_account_not_found, and the listings it had now carry the new id in channel_account_id. e.g. chac_66a1f09b2
objectstringalways channel_account
channelstringBase channel (e.g. ebay, shopify, etsy). New channels appear over time. e.g. ebay
labelstringDisplay name of the channel. e.g. eBay
currencystring · nullableISO 4217 currency the shop sells in (e.g. USD for an eBay.com account, GBP on OnBuy), looked up when the account connects; for accounts connected earlier, at the first read of the account (the read waits for it). null = not known: the channel has no single currency (Meta, Pinterest), or it couldn't be read (then a currency_unknown warning says so). Nembol publishes the store's prices as numbers, with no conversion. e.g. USD
warningsarray of objectThings to fix on this account that don't stop it. Today: currency_mismatch, when currency differs from the store's currency (GET /store): 19.90 EUR is published as 19.90 USD; and currency_unknown, when Nembol couldn't read the shop's currency (check it matches the store's). Set a price rule (pricing.mode / pricing.value) to adjust. The same warning appears in the issues of its listings
warnings[].codestringe.g. currency_mismatch
warnings[].messagestring
shop_namestring · nullableThe seller's account/shop name on the channel. e.g. carboagez
statusstringone of: connected, error, disconnected
syncobjectThe seller's per-channel sync switches. A newly connected account has every switch off (false), on every channel and through the API as in the dashboard: turn on the ones you need with PATCH. null means the switch isn't there: the channel doesn't have it, or an older account never stored it (it then behaves as off). Only the switches listed in writable can be changed. See the guide "Edit a product: what actually reaches the channels"
sync.product_editsboolean · nullableWhen false, Nembol pushes only quantity to this channel (content and price stay channel-side)
sync.quantity_from_ordersboolean · nullableSales on this channel adjust stock everywhere
sync.quantity_from_channel_editsboolean · nullableChannel-side quantity edits flow into Nembol
sync.content_from_channel_editsboolean · nullableThis channel is the content leader (at most one channel per store): its title/description edits become the product's and replace every listing's own texts (overrides). To keep a channel's content untouched, turn off content updates for that channel
sync.transfer_ordersboolean · nullableOrders received on this channel are transferred to the store's fulfillment channel (at most one channel per store)
pricingobjectPer-channel price rule applied when Nembol pushes prices to this channel
pricing.modestringpercentage: price × (1 + value/100). absolute: price + value (in the store currency). Negative values lower the price. One of: off, percentage, absolute
pricing.valuenumber · nullableThe adjustment; null when mode is off
pricing.roundingboolean · nullableRound the pushed price to the nearest whole amount minus 0.01 (e.g. 21.37 → 20.99)
inventoryobjectPer-channel stock control, active when control is true. On channels that receive quantities (eBay, Etsy, Faire…) threshold is a cap: the channel shows at most that many units (threshold 5 with 40 in stock → 5). On Google Merchant Center, which only receives availability, it is a minimum: the product shows in stock only while quantity ≥ threshold
inventory.controlboolean · nullable
inventory.thresholdinteger · nullableThe cap; null while control is off
defaultsobjectThe channel objects new listings use by default. Present only for channels that have them (eBay: shipping/return/payment policy; Etsy: shipping/return policy; Shopify: collection). null = not picked yet. Ids come from GET .../policies and GET .../collections
defaults.shipping_policystring · nullablee.g. pol_6178493000
defaults.return_policystring · nullable
defaults.payment_policystring · nullable
defaults.collectionstring · nullablee.g. col_344508170434
policy_validationobject · nullableeBay only. eBay's verdict on the selected policies, checked with a dry-run listing every time they change. valid: false means publishing will fail until another policy is picked
policy_validation.validboolean
policy_validation.invalid_policiesarray of string
policy_validation.messagestring · nullable
policy_validation.checked_atstring · nullableISO 8601
writablearray of stringDotted paths this account accepts in PATCH /channel_accounts/{id} (e.g. sync.transfer_orders, defaults.collection). e.g. sync.product_edits,pricing.mode,pricing.value,inventory.threshold,defaults.shipping_policy
discoveryobjectWhich discovery endpoints this channel supports
discovery.categoriesbooleanReserved: always false until category discovery is available
discovery.attribute_schemabooleanReserved: always false until category discovery is available
discovery.policiesboolean
discovery.collectionsboolean

Policy

FieldTypeDescription
idstringe.g. pol_6178493000
objectstringalways policy
typestringone of: shipping, return, payment
namestringe.g. Standard shipping EU
marketplacestring · nullableThe marketplace the policy belongs to (eBay site, e.g. US); null where the channel has a single marketplace. e.g. US

Collection

FieldTypeDescription
idstringe.g. col_344508170434
objectstringalways collection
namestringe.g. Summer 2026

Request models

What you send when creating or updating. Fields not listed are ignored.

ChannelAccountUpdate

Any subset of the account's settings. Only the paths listed in the account's writable are accepted. null is accepted where the read model can return it, so an event's previous_attributes can always be sent back as-is: a null switch is left unchanged, a null pricing.value / inventory.threshold is valid only while the mode / control is off, a null default clears it.

FieldTypeRequiredDescription
syncobjectoptional
sync.product_editsboolean · nullableoptional
sync.quantity_from_ordersboolean · nullableoptional
sync.quantity_from_channel_editsboolean · nullableoptional
sync.content_from_channel_editsboolean · nullableoptionalTurning it on turns it off on every other account
sync.transfer_ordersboolean · nullableoptionalTurning it on turns it off on every other account
pricingobjectoptional
pricing.modestringoptionalone of: off, percentage, absolute
pricing.valuenumber · nullableoptionalRequired (non-zero) when turning a mode on. Percentage must be > -100 and ≤ 1000
pricing.roundingboolean · nullableoptional
inventoryobjectoptional
inventory.controlboolean · nullableoptional
inventory.thresholdinteger · nullableoptionalmin 0
defaultsobjectoptional
defaults.shipping_policystring · nullableoptionalA shipping policy id; null clears it (the channel then needs one before publishing)
defaults.return_policystring · nullableoptionalA return policy id; null clears it
defaults.payment_policystring · nullableoptionalA payment policy id (eBay); null clears it
defaults.collectionstring · nullableoptionalA collection id (Shopify); null = no collection

Dernière mise à jour le 18 octobre 2026

Besoin d'aide ?

Écrivez-nous et une personne vous répond, généralement sous un jour ouvré.

Sur cette page