---
id: SVC-COM-ORD-participants
title: Participants Service Module
product_area: commerce
module: orders
repository: services-commerce
source_module: modules/participants
revision: 1
status: draft
design_intent: proposed
implementation_evidence: observed
inference: []
source_sha:
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
  macroservice-libraries: 54536a441935c6e09fdb7f96f0bec71c52ba4e03
owns:
  - DOM-COM-ORD-003
does_not_own:
  - 'Sellers retain product rules, protected resources and domain delivery.'
  - Checkout hosts selling-type discovery over the registry.
  - Fulfilment retains the dispatcher that invokes seller delivery and reversal.
operations:
  - operation_id: registerParticipant
    intent: >-
      Validate and reconcile a deployment manifest through the registration function under invocation
      authority.
    access: internal
    permission: 'IAM: the commerce-participant-registration-invoke policy attached to the application deploy role'
    realises:
      - CAP-COM-ORD-012
    published_to_submissions: >-
      not published: deployment registration supplies integration declarations rather than submitted business
      work.
events: []
jobs: []
integrations:
  - system: 'Selling applications (Membership, Events, Merchandise and others)'
    direction: outbound
    contract: >-
      Version-one seller contracts validate requests and replies, bound advice to five seconds, preparation
      and lease confirmation to ten, and delivery or change work to sixty; compatibility includes the current
      major and its predecessor.
  - system: Selling applications' database functions
    direction: outbound
    contract: >-
      Owner-provided privileged database functions commit, release and fence resource claims within Commerce
      transactions, using the claimer role and canonical ordering.
  - system: Selling application deploys
    direction: inbound
    contract: The shared declaration schema governs registration requests and their replies.
consistency:
  - rule: Registration either reconciles the complete declaration or retains the previous registry.
    kind: transactional
    compensation: Validation or transaction refusal makes no partial accepted declaration.
  - rule: 'Timed, schema-validated seller calls return unavailable when they cannot supply a usable response.'
    kind: transactional
    compensation: The calling workflow handles refusal or later retry rather than automatic client replay.
evidence:
  - >-
    services-commerce at c8b66a98: modules/participants/aws/lambda/REGISTRATION.ts,
    aws/logic/participant-registration.lambda.ts (no HTTP routes); services/**; db/*.table.ts;
    modules/orders/services/persistence/claims.ts.
  - >-
    macroservice-libraries at 54536a44: packages/commerce-contracts (README, envelope, operations, claims,
    policies).
controls: [TC-IAM-001, TC-IAM-002, TC-IAM-004, TC-IAM-005, TC-IAM-006, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-AZ-005, TC-CRY-001, TC-CRY-002, TC-CRY-003, TC-DAT-001, TC-LOG-004, TC-CHG-001, TC-CHG-002, TC-CHG-003, TC-CHG-004, TC-CHG-005, TC-CHG-006, TC-CHG-007, TC-AVL-002, TC-AVL-003, TC-AVL-004, TC-MON-001, TC-MON-002, TC-MON-003, TC-MON-004, TC-PI-001, TC-PI-002, TC-PI-003, TC-PI-004]
---

# Participants Service Module

## What This Service Is For

Participants routes purchase work to each product's seller. Its global declarations let specialized applications and local Commerce participants share checkout and delivery contracts.

## Boundary

Registry and invocation policy belong here; customer purchase records do not. Sellers own resource and domain behavior. The shared package supplies wire schemas, and Commerce separately validates supported manifest extensions.

## Operations in Words

Registration is a deployment function with invocation authority, not an HTTP endpoint. It validates the manifest and claim functions before atomic reconciliation. Checkout exposes the sellable-type read over this registry. No Submissions operation is declared.

## Events and Jobs

The module declares neither business events nor scheduled jobs. Registration runs synchronously with concurrency one.

## Consistency Guarantees

A rejected registration retains the existing registry. Participant calls validate timed responses; unavailable answers return control to the caller's recovery path. Claim, release and fence functions participate in the caller's domain transaction.
