---
id: SCR-COM-CAT-022
title: All Codes
route: '/console/{workspace}/configuration/orders/promotionCodes'
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: Locate a claim code across campaigns and open its owning campaign context.
supports:
  - JNY-COM-CAT-004
  - CAP-COM-CAT-015
permission: commerce.promotions.read
entry_from:
  - Orders & Inventory configuration landing
exits_to:
  - SCR-COM-CAT-021
displays:
  - field: 'code, name, status, promotion name and number'
    source: listAllPromotionCodes
actions: []
states:
  - empty
  - loading
  - error
validation: []
patterns:
  - Full layout
  - PageHeader
  - TableCard
  - SearchPicker
  - PagerBar
component: components/commerce/promotions/all-codes-list.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-006, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-CRY-001, TC-LOG-004, TC-PI-001, TC-PI-003]
---

# All Codes

## What the Screen Is For

Locate a claim code across campaigns and open its owning campaign context.

## What It Shows and Lets People Do

The list filters by campaign and status and searches code or name. Linked rows open the code detail page; this screen defines no direct mutation action.

## States and Errors

Loading and request failure are separate from an empty dataset or no matching result.

## Patterns It Must Respect

Full layout uses TableCard, SearchPicker and PagerBar under PageHeader.
