Skip to content

URD: Campaign

ModuleEXT-03Versionv0.1
StatusIn-progressDate2026-05-30

1. Purpose

Let merchants drive sales with targeted promotions — discounts, bundles and BuyGet offers — that apply automatically or via coupon, scoped by customer, product, and date.

2. Scope

IncludedExcluded
Promotion setup, rules, lifecycleLoyalty points (Loyalty module)
BuyGet, bundles, couponsMessage delivery (Marketing module)
Discount application at checkoutTax calculation (Pricing tax engine)

3. Definitions

TermDefinition
PromotionA campaign with eligibility rules and a discount method
MethodHow the discount works (percentage/fixed, target, allocation)
RuleA condition controlling who/what qualifies
BuyGetConditional "buy X, get Y" offer

4. Conceptual Model

Conceptual only — full schema lives in the developer promotion docs.

5. Functional Requirements

Priority = MoSCoW. Setup/lifecycle are built; application is planned.

5.1 Promotion Setup & Lifecycle (PRM)

IDPRequirementStatus
URD-PRM-001MCreate a promotion with method and rules atomicallyIn-progress
URD-PRM-002MMove a promotion through DRAFT → ACTIVATED → DEACTIVATED/EXPIRED/ARCHIVEDIn-progress
URD-PRM-003SDefine eligibility, source, and target rulesIn-progress
URD-PRM-004SEnforce usage limits per promotionIn-progress

5.2 Discount Application (APP)

IDPRequirementStatus
URD-APP-001MAuto-apply eligible promotions during checkoutPlanned
URD-APP-002SApply a manual coupon code at checkoutPlanned
URD-APP-003CReport promotion usage and ROIPlanned

6. Acceptance Criteria

AC-PRM-01: Atomic promotion creation
GivenWhenThen
A promotion, method, and rules payloadThe aggregate create is submittedAll entities are created together, or none on error

7. Constraints & Non-Goals

Constraints

IDConstraint
C-01A promotion must have a valid method before it can activate
C-02Deleting a promotion cascades to its method and rules

Non-Goals

  • Loyalty point earning/redemption (owned by Loyalty)
  • Sending promotional messages (owned by Marketing)

8. Version History

DateAuthorDescriptionVer
2026-05-30PMInitial stub; setup/lifecycle live, application plannedv0.1

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.