---
id: SCR-COM-CAT-017
title: New promotion
route: '/console/{workspace}/configuration/orders/promotions/new'
surface: console
product_area: commerce
module: catalog
revision: 1
status: draft
design_intent: proposed
implementation_evidence: observed
inference: []
source_sha:
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
purpose: Prepare a campaign draft and optionally its initial claim code.
supports:
  - JNY-COM-CAT-004
  - CAP-COM-CAT-014
permission: commerce.promotions.manage
entry_from:
  - SCR-COM-CAT-016
exits_to:
  - SCR-COM-CAT-018
displays:
  - field: >-
      kind, names, offer (parts with area criteria or a promotion-level benefit), combining rules, window,
      limits
    source: listPromotionAreas
actions:
  - label: Create
    operation_id: createPromotion
    permission: commerce.promotions.manage
    confirm: false
  - label: Add first code
    operation_id: createPromotionCode
    permission: commerce.promotions.manage
    confirm: false
states:
  - loading
  - error
validation:
  - BR-CAP-COM-CAT-014-01
  - BR-CAP-COM-CAT-014-02
  - BR-CAP-COM-CAT-014-03
  - BR-CAP-COM-CAT-014-04
  - BR-CAP-COM-CAT-014-07
  - BR-CAP-COM-CAT-014-08
patterns:
  - Standard layout
  - PageHeader
  - PromotionEditor
  - PromotionChangeGate
component: components/commerce/promotions/promotion-create-page.tsx
evidence:
  - >-
    react-console at baf6dae3: components/commerce/promotions/*.tsx; lib/commerce/promotions/live.ts,
    rules.ts; e2e/mock/promotions.mock.spec.ts.
controls: [TC-IAM-001, TC-IAM-002, TC-IAM-004, TC-IAM-005, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-AZ-005, TC-AZ-006, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-CRY-001, TC-LOG-004, TC-PI-001, TC-PI-003, TC-PI-005]
---

# New promotion

## What the Screen Is For

Prepare a campaign draft and optionally its initial claim code.

## What It Shows and Lets People Do

PromotionEditor selects claim method, area parts or a whole-order benefit and combination choices. A supplied first code is saved after the draft.

## States and Errors

Validation reports offer problems together. If the first code fails, the adapter attempts to rename and archive the new draft; failed withdrawal reports the retained draft instead of claiming nothing was saved.

## Patterns It Must Respect

Standard layout delegates to PromotionEditor behind PromotionChangeGate, using the existing labelled campaign sections and action bar.
