---
id: FAS-COM-ORD-06
title: Purchase changes and returns
feature: FEAT-COM-ORD-06
product_area: commerce
module: orders
revision: 1
status: proposed
product_intent: proposed
source_sha:
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
  macroservice-libraries: 54536a441935c6e09fdb7f96f0bec71c52ba4e03
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
capabilities:
  - CAP-COM-ORD-014
  - CAP-COM-ORD-015
  - CAP-COM-ORD-016
scenarios:
  - id: FAS-COM-ORD-06-01
    title: A partial cancellation keeps the other line standing
    kind: behaviour
    exercises:
      - CAP-COM-ORD-014
      - CAP-COM-ORD-015
      - CAP-COM-ORD-016
    relies_on:
      - ATS-COM-ORD-014-11
      - ATS-COM-ORD-015-06
      - ATS-COM-ORD-016-01
    preconditions: An accepted two-line sale has one cancellable item and one standing item.
    steps:
      - do: >-
          Cancel the first, inspect the standing line and evaluate its permitted change and return
          options separately.
        provenance: proposed
        source:
          - ATS-COM-ORD-014-11
          - ATS-COM-ORD-015-06
          - ATS-COM-ORD-016-01
    expected: Only the first line’s value is credited; remaining options use the standing quantity.
    negative: false
    data_needs: 'An isolated workspace with the records, permissions and controlled outcomes named above.'
    bound_to: []
    provenance: proposed
    source:
      - ATS-COM-ORD-014-11
      - ATS-COM-ORD-015-06
      - ATS-COM-ORD-016-01
    expected_provenance: proposed
    expected_source:
      - ATS-COM-ORD-014-11
      - ATS-COM-ORD-015-06
      - ATS-COM-ORD-016-01
  - id: FAS-COM-ORD-06-02
    title: Carrier handoff changes the available after-sale path
    kind: interaction
    exercises:
      - CAP-COM-ORD-014
      - CAP-COM-ORD-016
    relies_on:
      - ATS-COM-ORD-014-09
      - ATS-COM-ORD-016-03
    preconditions: A returnable line has been handed to the carrier.
    steps:
      - do: Request cancellation and then an in-window return.
        provenance: proposed
        source:
          - ATS-COM-ORD-014-09
          - ATS-COM-ORD-016-03
    expected: Cancellation redirects to return and the return issues receiving authority.
    negative: false
    data_needs: 'An isolated workspace with the records, permissions and controlled outcomes named above.'
    bound_to: []
    provenance: proposed
    source:
      - ATS-COM-ORD-014-09
      - ATS-COM-ORD-016-03
    expected_provenance: proposed
    expected_source:
      - ATS-COM-ORD-014-09
      - ATS-COM-ORD-016-03
  - id: FAS-COM-ORD-06-03
    title: An upgrade completes through replacement purchase and delivery
    kind: lifecycle
    exercises:
      - CAP-COM-ORD-015
      - CAP-COM-ORD-005
      - CAP-COM-ORD-006
      - CAP-COM-ORD-007
    relies_on:
      - ATS-COM-ORD-015-01
      - ATS-COM-ORD-015-02
      - ATS-COM-ORD-007-05
    preconditions: The accepted original supports the fixture seventy-five-dollar upgrade.
    steps:
      - do: 'Execute, pay the replacement sale and dispatch modification.'
        provenance: proposed
        source:
          - ATS-COM-ORD-015-01
          - ATS-COM-ORD-015-02
          - ATS-COM-ORD-007-05
    expected: The original links its successor and amendment completion follows replacement delivery.
    negative: false
    data_needs: 'An isolated workspace with the records, permissions and controlled outcomes named above.'
    bound_to: []
    provenance: proposed
    source:
      - ATS-COM-ORD-015-01
      - ATS-COM-ORD-015-02
      - ATS-COM-ORD-007-05
    expected_provenance: proposed
    expected_source:
      - ATS-COM-ORD-015-01
      - ATS-COM-ORD-015-02
      - ATS-COM-ORD-007-05
  - id: FAS-COM-ORD-06-04
    title: Review and override remain separate staff privileges
    kind: permission
    exercises:
      - CAP-COM-ORD-014
      - CAP-COM-ORD-015
      - CAP-COM-ORD-016
    relies_on:
      - ATS-COM-ORD-014-08
      - ATS-COM-ORD-014-10
      - ATS-COM-ORD-015-06
      - ATS-COM-ORD-016-04
    preconditions: An ordinary clerk and a portal purchaser can request changes but cannot approve or override them.
    steps:
      - do: Try approval and deadline or final-sale overrides across the three change kinds.
        provenance: proposed
        source:
          - ATS-COM-ORD-014-08
          - ATS-COM-ORD-014-10
          - ATS-COM-ORD-015-06
          - ATS-COM-ORD-016-04
    expected: Unauthorized decisions are refused and existing documents remain unchanged.
    negative: true
    data_needs: 'An isolated workspace with the records, permissions and controlled outcomes named above.'
    bound_to: []
    provenance: proposed
    source:
      - ATS-COM-ORD-014-08
      - ATS-COM-ORD-014-10
      - ATS-COM-ORD-015-06
      - ATS-COM-ORD-016-04
    expected_provenance: proposed
    expected_source:
      - ATS-COM-ORD-014-08
      - ATS-COM-ORD-014-10
      - ATS-COM-ORD-015-06
      - ATS-COM-ORD-016-04
  - id: FAS-COM-ORD-06-05
    title: Withdrawal releases each unexecuted change’s occupancy
    kind: regression
    exercises:
      - CAP-COM-ORD-014
      - CAP-COM-ORD-015
      - CAP-COM-ORD-016
    relies_on:
      - ATS-COM-ORD-014-13
      - ATS-COM-ORD-015-11
      - ATS-COM-ORD-016-10
    preconditions: 'Separate lines carry an approved cancellation, approved amendment and authorized return.'
    steps:
      - do: 'Try duplicates, withdraw each and request again.'
        provenance: proposed
        source:
          - ATS-COM-ORD-014-13
          - ATS-COM-ORD-015-11
          - ATS-COM-ORD-016-10
    expected: Each duplicate initially fails and withdrawal permits its later same-kind request.
    negative: true
    data_needs: 'An isolated workspace with the records, permissions and controlled outcomes named above.'
    bound_to: []
    provenance: proposed
    source:
      - ATS-COM-ORD-014-13
      - ATS-COM-ORD-015-11
      - ATS-COM-ORD-016-10
    expected_provenance: proposed
    expected_source:
      - ATS-COM-ORD-014-13
      - ATS-COM-ORD-015-11
      - ATS-COM-ORD-016-10
evidence:
  - provenance: documented
    source: 'rhythm-v2-docs:specs/commerce/orders/planning/features/FEAT-COM-ORD-06-changes-after-the-sale.md'
  - provenance: observed
    source:
      - >-
        rhythm-v2-docs:specs/commerce/orders/planning/capabilities/CAP-COM-ORD-014-cancel-lines-of-an-accepted-order-with-the-right-fee-and.md
      - >-
        rhythm-v2-docs:specs/commerce/orders/planning/capabilities/CAP-COM-ORD-015-change-a-purchase-after-the-sale.md
      - >-
        rhythm-v2-docs:specs/commerce/orders/planning/capabilities/CAP-COM-ORD-016-take-back-delivered-goods-under-the-return-policy.md
---

# Purchase changes and returns: Feature Acceptance Suite

## What the Feature Must Do as a Whole

After-sale changes coordinate the affected purchase lines, delivery work and financial settlement. The suite asks whether a partial change leaves the rest of the purchase usable and whether unexecuted requests can release their occupancy.

## Interactions Between Capabilities

Cancellation, amendment and return paths meet at line eligibility and delivery state. Carrier handoff changes which path is available, and replacement purchases introduce a payment boundary before delivery completes. These combined chains remain proposed until one executable fixture asserts each complete outcome.

## Regression Record

| Revision | Change | Scenario | Why |
|---|---|---|---|
| 1 | initial | all | Establish the feature’s combined outcomes from the pinned specification and executable evidence. |
