Skip to content

Payments — Daily settled payments

binding spec data-contracts/payments-daily.odcs.yaml @ 1.0.0 — the spec of record. It states what must be; implementations converge on it, never the reverse.

Enforced by
  • check:version — any change must bump the artifact and service versions; a silent edit fails CI
  • datacontract-cli validation
  • Spectral house rules for attribute and value naming
Version history
VersionFirst releasedService version
1.0.02026-08-231.0.0
Consume it

Status: active · Domain: Commerce ·Data product: payments

Purpose

Daily reconciliation of settled payments for finance. One row per settled payment, partitioned by settlement date.

Usage

Finance close and chargeback investigation. Not a source for real-time balances — use the payments service API for that.

Limitations

Settlement date is the processor's, not ours, so late arrivals can backfill up to 3 days. Do not treat a partition as final until D+3.

Schema

erDiagram
    payments_daily_settled {
        string payment_id PK
        string order_id
        date settled_at
        integer amount_pence
    }

payments_daily_settled

FieldTypeRequiredKeyConstraints
payment_idstring (uuid)yesprimary key, unique
order_idstring (uuid)yes
settled_atdate (timestamp)yespartition
amount_penceinteger (bigint)yes≥ 0

SLA

  • frequency: 1d
  • latency: 4h

Ownership & support

  • team-payments (owner)
  • slack: #payments-support