---
id: ADR-COM-ORD-007
title: After-sale money moves through one adjustment plan
product_area: commerce
module: orders
revision: 1
status: proposed
design_intent: proposed
source_sha:
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
  macroservice-libraries: 54536a441935c6e09fdb7f96f0bec71c52ba4e03
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
decision: >-
  Represent after-sale settlement as a stored adjustment plan executed by the shared fulfilment worker,
  normally after cancellation reversal.
constrains:
  - WF-COM-ORD-005
  - WF-COM-ORD-010
  - WF-COM-ORD-011
  - WF-COM-ORD-012
  - WF-COM-ORD-013
  - DOM-COM-ORD-005
  - SVC-COM-ORD-orders
origin: >-
  services-platform docs/proposals/commerce-orders/04-financial-integration.md section 6 and ADR-13 (refund
  after the domain), as cited by the code (FND-COM-ORD-048)
alternatives:
  - option: Implement financial sequencing separately for every change kind
    why_not: 'Each change kind would duplicate financial ordering, replay and recovery logic.'
  - option: Refund before application reversal completes
    why_not: Refunding before domain reversal can return money without returning the purchased benefit.
consequences:
  - The document transaction persists the financial plan with its change.
  - 'Financial effect follows eventually through retry, confirmation or operational escalation.'
  - Fulfilment owns adjustment persistence and execution.
supersedes: []
evidence:
  - >-
    services-commerce at c8b66a98: modules/orders/services/cancellations/*.ts, amendments/*.ts, returns/*.ts,
    orders/void-order.ts; modules/fulfillment/services/adjustments/adjustment-worker.ts.
---

# After-sale money moves through one adjustment plan

## Context

Voids and several change kinds share credit, charge and refund sequencing.

## Decision

Store the required settlement steps with the domain execution and use one worker to perform keyed financial requests. Cancellation normally waits for application reversal.

## Alternatives Considered

Direct Accounting code in every document repeats financial sequencing and recovery. Immediate refunds before reversal can pay for work that was not undone.

## Consequences

Requested adjustments are atomic with domain execution, but their effect is eventual. Refusal or unresolved work can leave documents awaiting settlement or completed with exceptions.
