---
id: JNY-MBR-STR-001
title: Prepare the association’s structure and local dues
feature: FEAT-MBR-STR-02
product_area: membership
module: structure
revision: 1
status: draft
product_intent: proposed
implementation_evidence: observed
supersedes:
  - MBR-ACC-0001
  - MBR-ACC-0006
  - MBR-ACC-0021
  - MBR-ACC-0023
  - MBR-ACC-0024
source_sha:
  services-membership: 5994c270e8a37a30f848e99ba5b5ee6b87c08893
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
actor: ACT-MBR-001
goal: Establish the national and local units with the information needed to operate chapters.
capabilities:
  - CAP-MBR-STR-001
  - CAP-MBR-STR-002
  - CAP-MBR-STR-006
  - CAP-MBR-STR-007
  - CAP-MBR-STR-008
screens: []
steps:
  - 'n': 1
    surface: createOrganizationalUnitType
    action: Save the association’s unit categories and allowed parent choices.
    capability: CAP-MBR-STR-001
    expected: The categories retain the submitted placement choices.
    provenance: test
    source: >-
      services-membership:tests/e2e/structure-api.e2e.spec.ts#the structure API, end to end in process ›
      creates unit types with their allowed parents
  - 'n': 2
    surface: createOrganizationalUnit
    action: 'Build the national, regional, zone and chapter records beneath their selected parents.'
    capability: CAP-MBR-STR-002
    expected: The returned units have valid placements and computed depths.
    provenance: test
    source: >-
      services-membership:tests/e2e/structure-api.e2e.spec.ts#the structure API, end to end in process ›
      creates units in the tree
  - 'n': 3
    surface: replaceOrganizationalUnit
    action: 'Save Atlanta’s mailing, contact, geographic, visibility and custom information.'
    capability: CAP-MBR-STR-006
    expected: A single-unit read returns Atlanta’s saved details.
    provenance: test
    source: >-
      services-membership:tests/acceptance/structure/MBR-ACC-0006.acceptance.ts#MBR-ACC-0006 a complete
      chapter, recorded and read back
  - 'n': 4
    surface: linkOrganizationalUnitOrganization
    action: Associate Atlanta Chapter Inc. as the chapter’s legal organization.
    capability: CAP-MBR-STR-007
    expected: The legal relationship begins on its specified date.
    provenance: test
    source: >-
      services-membership:tests/e2e/structure-api.e2e.spec.ts#the structure API, end to end in process › links
      an organization as the unit’s legal entity
  - 'n': 5
    surface: setOrganizationalUnitFinancialSettings
    action: Save Atlanta’s local Commerce ordering-profile choice.
    capability: CAP-MBR-STR-008
    expected: The initial finance record returns its first version.
    provenance: test
    source: >-
      services-membership:tests/acceptance/structure/MBR-ACC-0023.acceptance.ts#MBR-ACC-0023 a chapter's
      financial settings
  - 'n': 6
    surface: createOrganizationalUnitDuesProduct
    action: Create Atlanta’s catch-all dues extension from its existing Accounting product.
    capability: CAP-MBR-STR-008
    expected: The extension returns the product’s shared name and status.
    provenance: test
    source: >-
      services-membership:tests/e2e/packages-as-products.e2e.spec.ts#packages as products, through the API ›
      extends a product of type chapter_dues as a unit’s dues product, under the product’s id, with the
      product’s name
alternates:
  - from_step: 2
    condition: The selected regional parent is not allowed for chapters.
    path: The placement attempt fails.
    outcome: Staff select a permitted zone parent before retrying.
    provenance: test
    source: >-
      services-membership:tests/e2e/structure-api.e2e.spec.ts#the structure API, end to end in process ›
      refuses a parent of a type not allowed, 409 parent_type_not_allowed
failures:
  - from_step: 4
    condition: Atlanta already has an overlapping open legal relationship.
    path: The new relationship is rejected.
    outcome: The existing legal organization remains the sole open legal relationship.
    provenance: test
    source: >-
      services-membership:tests/e2e/structure-api.e2e.spec.ts#the structure API, end to end in process ›
      refuses a second open legal entity, 409 legal_entity_already_open
rules_in_play:
  - BR-CAP-MBR-STR-001-01
  - BR-CAP-MBR-STR-001-02
  - BR-CAP-MBR-STR-002-01
  - BR-CAP-MBR-STR-002-07
  - BR-CAP-MBR-STR-006-06
  - BR-CAP-MBR-STR-007-03
  - BR-CAP-MBR-STR-008-01
  - BR-CAP-MBR-STR-008-06
  - BR-CAP-MBR-STR-008-07
assertions:
  - id: AS-JNY-MBR-STR-001-01
    statement: Created example units occupy eligible root or parent placements.
    provenance: test
    source: >-
      services-membership:tests/e2e/structure-api.e2e.spec.ts#the structure API, end to end in process ›
      creates units in the tree
  - id: AS-JNY-MBR-STR-001-02
    statement: The example chapter rejects a second open legal organization.
    provenance: test
    source: >-
      services-membership:tests/e2e/structure-api.e2e.spec.ts#the structure API, end to end in process ›
      refuses a second open legal entity, 409 legal_entity_already_open
  - id: AS-JNY-MBR-STR-001-03
    statement: The example dues extension returns shared information from its Accounting product.
    provenance: test
    source: >-
      services-membership:tests/e2e/packages-as-products.e2e.spec.ts#packages as products, through the API ›
      extends a product of type chapter_dues as a unit’s dues product, under the product’s id, with the
      product’s name
e2e_policy: optional
e2e_reason: >-
  Existing evidence exercises service operations without an administration screen. The product should require
  browser coverage when that screen supports this workflow.
proved_by: []
---

# Prepare the association’s structure and local dues

## Story

An administrator prepares the structure before the association begins operating in Rhythm. The work moves from category definition to individual units and then to Atlanta’s local record. The administrator associates its legal organization and settlement profile, then connects its prepared Accounting dues product. The result is a configured chapter whose structural, organizational and selling contexts can be inspected together.
