Skip to content
arch-lab

order.placed event

The envelope and payload every downstream consumer subscribes to — a contract with no table behind it.

Open in the playground

order.placed eventEnvelopeKafkaFIELDTYPERULESMEANINGSOURCEevent_iduuidrequireduniqueDeduplication key. A consumer that hasseen this id has already processed theevent.Values: RFC 4122occurred_attimestamptzrequiredWhen the thing happened, not when themessage was produced. Producers retry;this does not change.versionintegerrequiredSchema version of the payload below. Aconsumer must ignore an envelope whoseversion it does not know.e.g. 3PayloadFIELDTYPERULESMEANINGSOURCEorder_iduuidrequiredThe order this event is about.orders.order.idcustomer_emailstringrequiredpiiDenormalised onto the event so consumersneed no lookup. Personal data — it leavesthe boundary with the event.accounts.customer.emailtotal_minorintegerrequiredThe order total in MINOR units, to avoid afloat. Divide by 100 for a display value.e.g. 128450currencystringrequiredValues: ISO 4217e.g. THBcoupon_codestringdeprecatedNever populated since v2. Read thediscounts array instead; this stays forconsumers not yet migrated.