Zopping

Extensions

Zopping ships a large feature set as extensions — optional capabilities a retailer turns on per organization. An extension being off is the most common reason an endpoint, field, or behaviour appears "missing." Check what's enabled before assuming something isn't supported — or before building it yourself.

Browse every extension and what it unlocks in the Extensions catalog, and manage them via the Extensions API. This page explains the concept and how to check what's on.

Why this matters to you

  • The API surface and behaviour vary by enabled extensions. For example, store-scoped reads behave differently with MultiStoreSupport on; products expose multiple variants only with MultiVariantSupport; custom metadata is only honoured with EntityMetaData.
  • Many things you might be tempted to build externally already exist as an extension (returns, disputes, bundles, customer credit, pricing tiers, loyalty). Check here first.

The two calls you need

1. What's enabled for this organization — the single most useful call. Branch your integration on this set, exactly as Zopping's own apps do:

curl "https://zopping.com/api/account-service/extension?organizationId=<org-id>&status=ENABLED" \
  -H "Authorization: Bearer $ZOPPING_TOKEN"

2. The full catalog, including not-enabled — every extension with its per-org status, so you can see what could be turned on and prompt the retailer to enable it:

curl "https://zopping.com/api/account-service/extension?organizationId=<org-id>" \
  -H "Authorization: Bearer $ZOPPING_TOKEN"

Each extension carries metadata worth reading: slug (the key you branch on), description, pricing, isStoreConfigurable, prerequisites, and incompatibleExtensions (ones that can't be enabled together). Narrow to one with &slug=MultiStoreSupport, or fetch a single record at /api/account-service/extension/{id}.

Extensions you'll likely care about

ExtensionWhat it unlocks
MultiStoreSupportMultiple stores; store-scoped price/stock/orders
MultiVariantSupportProducts with multiple variants
PricingTierQuantity/segment pricing tiers
EntityMetaDataCustom fields / metaData on entities
ProductBundlesProduct bundles
ProductRestrictionsAge/region restrictions on products
CustomerTags / CustomerGroupsSegmentation
B2BManagementB2B order flows
DeliverySlots / DeliveryAreaSupportSlots & serviceability
OrderReturns / OrderDisputesReturns & dispute flows
OnlinePaymentSupportOnline payment capture
CustomerCreditStore credit / pay-later
MultiLingualSupportLocalized catalog (Accept-Language)
BulkOrderSupport / PreOrderSupportBulk and pre-orders

…and more (multi-brand, marketing/campaigns, in-store processing, picking, etc.). The list above is the integration-relevant subset; query the endpoint for the authoritative set on a given org.

Working with extensions

  • Read once at startup, cache, and branch behaviour.
  • Degrade gracefully — if an extension your feature needs is off, surface a clear message asking the retailer to enable it rather than failing obscurely.
  • Don't hard-code assumptions about multi-store or variants; check the flags.

Next: Custom fields & metaData · Core concepts.