API ReferenceEvent Referenceaccounting.transaction.posted.v1

accounting.transaction.posted.v1

Constant

import { EVENT_NAMES } from "@platform/contracts";
 
EVENT_NAMES.ACCOUNTING_TRANSACTION_POSTED_V1;

Publishers

Subscribers

Payload schema

z.object({
  transaction_id: z.string(),
  type: z.enum(["payout", "earning", "redemption", "refund", "adjustment"]),
  external_ref: z.string().nullable(),
  entries: z.array(
    z.object({
      account_id: z.string(),
      amount_cents: z.number().int(),
      memo: z.string().nullable(),
    }

Delivery semantics

  • At-least-once delivery. Consumers must dedupe by event ID.
  • Fanned out to both NATS (in-cluster) and EventBridge (durable). See Events concept.