Skip to content

Marketing Engine

Status: Draft for review

Purpose

Own tenant marketing concepts independent of external ad providers: campaigns, offers, landing-page intent, attribution, conversion events, audience definitions and marketing automation rules.

Owns

  • Marketing campaigns and objectives
  • Offers/promotions as marketing artifacts (commerce discount execution remains Commerce)
  • Campaign landing-page bindings
  • UTM/source/medium/campaign attribution context
  • Conversion-event taxonomy and attribution facts
  • Marketing audiences/segments at platform abstraction level
  • Campaign templates and automation definitions
  • Marketing analytics aggregates

Non-goals

It does not own Meta/TikTok/provider-native campaign identifiers/credentials, site page rendering, customer bookings or payment settlement.

API contract — functional surface

These are contract-level resources and operations, not final controller/file names.

Method Route Primary actor Contract intent
POST /api/tenant/v1/marketing/campaigns Marketing Manager Create platform marketing campaign.
PATCH /api/tenant/v1/marketing/campaigns/{id} Marketing Manager Update campaign lifecycle/configuration.
POST /api/tenant/v1/marketing/offers Marketing Manager Create offer metadata and link commerce promotion as applicable.
POST /api/tenant/v1/marketing/landing-pages Marketing Manager/Editor Create campaign landing-page binding.
GET /api/tenant/v1/marketing/attribution Marketing Manager Query attribution/conversion reporting.
POST /api/public/v1/events/conversions Managed/Custom Site Record permitted conversion event with attribution context.
POST /api/tenant/v1/marketing/audiences Marketing Manager Define reusable audience/segment abstraction.

All mutating operations apply the global tenant, authorization, audit and idempotency rules where relevant.

Events

  • marketing_campaign.created
  • marketing_campaign.activated
  • offer.activated
  • conversion.recorded
  • audience.updated
  • automation.triggered

Roles & responsibility matrix

Legend: A accountable, R responsible, C consulted, I informed, none.

Capability Platform Admin Tenant Owner Tenant Admin Specialist/Manager Customer/Visitor
Marketing policy/templates C A C R I
Campaign/offer creation A C R I
Attribution reporting I A C R I
Landing page coordination A C R I

Dependencies

  • CRM Engine for customers/leads/consent
  • Commerce Engine for booking/order conversions and discount execution
  • Site Engine for landing pages/visibility
  • Channel Engine for external advertising publication
  • Platform Engine for entitlements

Internationalization Contract

  • Campaigns may contain locale/market-specific copy and landing-page variants while referencing the same canonical offering/campaign.
  • Locale and target market are separate fields; one does not imply the other.
  • Marketing automation resolves customer-facing content using explicit campaign/recipient locale policy.

Security / isolation requirements

  • Conversion collection observes consent/privacy settings.
  • Attribution identifiers do not grant authorization.
  • Audience exports honor provider/consent constraints.

Acceptance criteria

  • Platform can answer campaign -> lead -> booking/order/revenue where data permits.
  • Marketing campaigns exist independently of Meta/provider APIs.
  • Landing pages can bind to managed pages or Custom-site destinations.