---
id: ADR-COM-FUL-009
title: Execute document-requested financial work under stable step keys
product_area: commerce
module: fulfillment
revision: 1
status: proposed
design_intent: proposed
source_sha:
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
decision: >-
  Retain a document-requested sequence of financial commands under stable step
  keys and resume unfinished work forward.
constrains:
  - WF-COM-FUL-006
  - STATE-COM-FUL-003
  - DOM-COM-FUL-003
  - SVC-COM-FUL-fulfillment
  - SVC-COM-FUL-operations
origin: >-
  services-commerce:docs/migrations/operations/README.md#D-P5-05, #D-P5-06,
  #D-P5-15 (build decisions); docs/milestones/COMM-M1-repairs-6-report.md#R6-2,
  COMM-M1-repairs-7-report.md#R7-2 (repair reports)
alternatives:
  - option: Use one Accounting operation for the whole post-sale reversal.
    why_not: >-
      The integration exposes separate document commands rather than one
      complete reversal operation.
  - option: Reverse completed financial steps when a later step fails.
    why_not: >-
      Automatically reversing issued financial documents would require a
      separate correction policy.
  - option: Give adjustments a dedicated execution queue.
    why_not: >-
      Current callers resume the keyed worker directly; there is no dedicated
      adjustment queue.
consequences:
  - An issued credit can stand while a later refund remains unfinished.
  - Stable step keys permit recovery of a lost Accounting answer.
  - >-
    Processor-pending refund settlement does not consume the retryable failure
    budget.
supersedes: []
evidence:
  - >-
    services-commerce at c8b66a98:
    modules/fulfillment/services/adjustments/*.ts;
    services/persistence/financial-adjustments.ts.
---

# Execute document-requested financial work under stable step keys

## Context

Post-sale money work can require several Accounting documents and lose an answer partway through.

## Decision

Retain a document-requested sequence of financial commands under stable step keys and resume unfinished work forward.

## Alternatives Considered

Use one Accounting operation for the whole post-sale reversal. The integration exposes separate document commands rather than one complete reversal operation.

Reverse completed financial steps when a later step fails. Automatically reversing issued financial documents would require a separate correction policy.

Give adjustments a dedicated execution queue. Current callers resume the keyed worker directly; there is no dedicated adjustment queue.

## Consequences

Completed financial documents stand after a later failure. Staff see the stopped step and can retry or record external settlement.
