Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

What integrators do with Exponential

The typical integration jobs around an Exponential site (CRM, ERP, PIM, DAM, identity, search, mail, payment, analytics, other CMSs), what Exponential plays in each, and which surface usually carries the data.

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/integrators/what-integrators-do-with-exponential.md

On this page

What integrators do with Exponential

This page is for integrators who are new to Exponential and want to know what kind of work to expect. It lists the systems that are usually connected to a content management system, says which role Exponential plays in each connection, and names the surface that normally carries the data. The details of each surface are on its own page.

Contents

  1. Exponential's place in a system landscape
  2. Typical integration jobs
  3. Who is the master of which data
  4. What an integrator delivers

Exponential's place in a system landscape

Exponential is a content management system with a content repository (classes, objects, versions, locations in a tree), users and roles, a template engine, a shop module, forms that collect information, and an administration. In a landscape of business systems it usually takes one or more of these roles:

RoleWhat it meansTypical surfaces
PublisherReceives data from other systems and publishes it as pagesPHP import scripts with eZContentFunctions, the REST create route, xrowextract imports, RSS imports
Content hubIs the master of editorial content that other channels readThe REST content API, expservices, RSS and Atom exports, syndication
CollectorGathers form answers, registrations and orders that other systems processInformation collection, the shop, notification and audit hooks, CSV exports
Relying partyLets people sign in with an account that lives elsewhereLogin handlers (LDAP, textfile, your own), single sign-on handlers, social login
Consumer of servicesUses a mail server, a search server, a payment provider, an AI provider[MailSettings], a search plugin, payment gateways, expai

Typical integration jobs

SystemTypical jobDirectionUsual surfacePage
CRMLeads from contact forms go to the CRM; account data shows on member pagesOut, sometimes inWorkflow event or cronjob reading collected information; a login or SSO handler for membersForms and collected information
ERPProduct data and prices come in; orders go outBothImport script keyed by remote_id; shop triggers (shop / checkout, confirmorder)Payment gateways and the shop
PIMProduct pages are created and updated from the PIMInScheduled import (cronjob part) or xrowextract scheduleWriting an import script
DAMImages and files arrive from the asset systemInImport with image and file attributes given by path (storage_dir)Mapping classes to external data
Identity providerStaff or members sign in with their central accountIn (identity)LoginHandler[] (LDAP or your own), SingleSignOnHandlerArray[]Login handlers
Search serverSite search with facets and relevanceOut (index)A search engine plugin ([SearchSettings] SearchEngine), ezfind for SolrSearch engine integration
Mail and newsletterTransactional mail through a provider; newslettersOut[MailSettings] Transport or your own transport class; cjw_newsletterMail and notifications
Payment providerPayments at checkoutBothA payment gateway (paymentgateways.ini), ezpaypalPayment gateways and the shop
AnalyticsPage tracking, statisticsOutTemplates (tracking snippet, mind the Content Security Policy); bcwebsitestatisticsSecurity for integrations
Another CMSMigrate content in, or exchange content both waysIn or bothImport scripts, packages, syndication, RSSMigrating content from another CMS
Mobile or JavaScript appReads content, sometimes publishesBothREST API with OAuth or API keys; expservicesREST API for integrators
Monitoring and SIEMSecurity and change events into a log platformOutAudit trail sinks: syslog, signed webhook, mailOutgoing webhooks from the audit trail

Note

The "usual surface" column is a starting point, not a rule. A daily product import of 50 000 records is a server-side script, even though the REST API could create the same objects one by one. Choosing an integration surface explains the trade-offs.

Who is the master of which data

Every integration needs one clear answer per kind of data: which system is the master (the source of truth), and which systems hold copies. Write it down before writing code.

QuestionWhy it matters in Exponential
Is the external system or Exponential the master of this record?If the external system is the master, editors must not change imported fields, or their changes are overwritten by the next run. Mark such fields in the class description or restrict editing with roles.
What identifies the record in both systems?Use the external ID in the object's remote_id (unique, up to 100 characters), not the Exponential object ID, which differs between installations.
What happens when the record is deleted at the master?Decide between removing to the trash, hiding, or keeping with a state; each has different consequences for URLs and search.
Who may publish?An import publishes through the publish operation; if an approval workflow is on that trigger, imported versions wait for approval.

What an integrator delivers

A complete integration is more than the code that moves data:

  • To do: An interface specification per data flow (template).
  • To do: The integration as an extension in its own Git repository (how).
  • To do: A service account with a narrow role (how).
  • To do: Credentials kept out of Git, in settings/override or the environment (how).
  • To do: A dry-run mode, logging and a monitoring check (how).
  • To do: Tests that run without the external system (how).
  • To do: A runbook and a handover to the people who operate it (how).

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x