@eventcatalog/create-eventcatalog 4.3.2 → 4.3.4-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/dist/index.js +8 -4
  2. package/package.json +1 -1
  3. package/templates/amazon-api-gateway/README-template.md +45 -18
  4. package/templates/asyncapi/README-template.md +39 -31
  5. package/templates/confluent/README-template.md +45 -18
  6. package/templates/default/README-template.md +40 -31
  7. package/templates/default/_data/visualizer-layouts/domains-systems-context/catalog/1.0.0.json +31 -0
  8. package/templates/default/_data/visualizer-layouts/domains-systems-context/customer/1.0.0.json +23 -0
  9. package/templates/default/_data/visualizer-layouts/system-context-map/system-context-map/1.0.0.json +91 -0
  10. package/templates/default/_data/visualizer-layouts/systems-context/customer-management-system/1.0.0.json +23 -0
  11. package/templates/default/components/footer.astro +0 -1
  12. package/templates/default/domains/Catalog/entities/category/index.mdx +36 -0
  13. package/templates/default/domains/Catalog/entities/product/index.mdx +37 -0
  14. package/templates/default/domains/Catalog/entities/product-variant/index.mdx +35 -0
  15. package/templates/default/domains/Catalog/entities/search-document/index.mdx +35 -0
  16. package/templates/default/domains/Catalog/index.mdx +65 -0
  17. package/templates/default/domains/Catalog/systems/product-catalog-system/adrs/adr-001-use-transactional-outbox/index.mdx +43 -0
  18. package/templates/default/domains/Catalog/systems/product-catalog-system/adrs/adr-002-postgres-as-system-of-record/index.mdx +40 -0
  19. package/templates/default/domains/Catalog/systems/product-catalog-system/adrs/adr-003-offload-async-work-to-worker/index.mdx +41 -0
  20. package/templates/default/domains/Catalog/systems/product-catalog-system/containers/product-database/index.mdx +45 -0
  21. package/templates/default/domains/Catalog/systems/product-catalog-system/containers/product-database/schema.sql +33 -0
  22. package/templates/default/domains/Catalog/systems/product-catalog-system/index.mdx +72 -0
  23. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/CreateProduct/index.mdx +32 -0
  24. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/CreateProduct/schema.json +41 -0
  25. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/DeleteProduct/index.mdx +32 -0
  26. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/DeleteProduct/schema.json +19 -0
  27. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/UpdateProduct/index.mdx +32 -0
  28. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/UpdateProduct/schema.json +42 -0
  29. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductCreated/index.mdx +29 -0
  30. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductCreated/schema.json +62 -0
  31. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductDeleted/index.mdx +29 -0
  32. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductDeleted/schema.json +29 -0
  33. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductUpdated/index.mdx +29 -0
  34. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductUpdated/schema.json +55 -0
  35. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/index.mdx +69 -0
  36. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/openapi.yml +219 -0
  37. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/queries/GetProduct/index.mdx +32 -0
  38. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/queries/GetProduct/schema.json +56 -0
  39. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductSearchPublisher/index.mdx +56 -0
  40. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductWorker/index.mdx +48 -0
  41. package/templates/default/domains/Catalog/systems/search-system/containers/search-index/index.mdx +39 -0
  42. package/templates/default/domains/Catalog/systems/search-system/flows/ProductSearchIndexing/index.mdx +130 -0
  43. package/templates/default/domains/Catalog/systems/search-system/index.mdx +66 -0
  44. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/index.mdx +44 -0
  45. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/openapi.yml +138 -0
  46. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/queries/SearchProducts/index.mdx +32 -0
  47. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/queries/SearchProducts/schema.json +108 -0
  48. package/templates/default/domains/Catalog/systems/search-system/services/SearchIndexer/index.mdx +54 -0
  49. package/templates/default/domains/Catalog/ubiquitous-language.mdx +54 -0
  50. package/templates/default/domains/Customer/entities/authentication-session/index.mdx +35 -0
  51. package/templates/default/domains/Customer/entities/customer-account/index.mdx +36 -0
  52. package/templates/default/domains/Customer/entities/customer-address/index.mdx +35 -0
  53. package/templates/default/domains/Customer/entities/customer-profile/index.mdx +33 -0
  54. package/templates/default/domains/Customer/index.mdx +67 -0
  55. package/templates/default/domains/Customer/systems/customer-management-system/containers/customer-database/index.mdx +43 -0
  56. package/templates/default/domains/Customer/systems/customer-management-system/containers/customer-database/schema.sql +14 -0
  57. package/templates/default/domains/Customer/systems/customer-management-system/index.mdx +60 -0
  58. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/RegisterCustomer/index.mdx +32 -0
  59. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/RegisterCustomer/schema.json +24 -0
  60. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/UpdateCustomer/index.mdx +32 -0
  61. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/UpdateCustomer/schema.json +29 -0
  62. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerRegistered/index.mdx +29 -0
  63. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerRegistered/schema.json +45 -0
  64. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerUpdated/index.mdx +29 -0
  65. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerUpdated/schema.json +42 -0
  66. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/index.mdx +72 -0
  67. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/openapi.yml +164 -0
  68. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/queries/GetCustomer/index.mdx +32 -0
  69. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/queries/GetCustomer/schema.json +47 -0
  70. package/templates/default/domains/Customer/systems/identity-provider/containers/user-directory/index.mdx +36 -0
  71. package/templates/default/domains/Customer/systems/identity-provider/index.mdx +54 -0
  72. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/commands/AuthenticateCustomer/index.mdx +32 -0
  73. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/commands/AuthenticateCustomer/schema.json +41 -0
  74. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/events/CustomerAuthenticated/index.mdx +29 -0
  75. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/events/CustomerAuthenticated/schema.json +33 -0
  76. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/index.mdx +59 -0
  77. package/templates/default/domains/Customer/ubiquitous-language.mdx +48 -0
  78. package/templates/default/domains/Fulfilment/entities/inventory-reservation/index.mdx +39 -0
  79. package/templates/default/domains/Fulfilment/entities/shipment/index.mdx +36 -0
  80. package/templates/default/domains/Fulfilment/entities/stock-item/index.mdx +36 -0
  81. package/templates/default/domains/Fulfilment/entities/warehouse-pick/index.mdx +35 -0
  82. package/templates/default/domains/Fulfilment/index.mdx +83 -0
  83. package/templates/default/domains/Fulfilment/systems/carrier/index.mdx +52 -0
  84. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierShippingAPI/index.mdx +40 -0
  85. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentCreated/index.mdx +29 -0
  86. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentCreated/schema.json +15 -0
  87. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentDelivered/index.mdx +29 -0
  88. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentDelivered/schema.json +13 -0
  89. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentFailed/index.mdx +29 -0
  90. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentFailed/schema.json +16 -0
  91. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/index.mdx +44 -0
  92. package/templates/default/domains/Fulfilment/systems/inventory-system/containers/inventory-database/index.mdx +35 -0
  93. package/templates/default/domains/Fulfilment/systems/inventory-system/containers/inventory-database/schema.sql +26 -0
  94. package/templates/default/domains/Fulfilment/systems/inventory-system/index.mdx +49 -0
  95. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/commands/ReleaseInventory/index.mdx +32 -0
  96. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/commands/ReleaseInventory/schema.json +14 -0
  97. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryReserved/index.mdx +29 -0
  98. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryReserved/schema.json +24 -0
  99. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryUnavailable/index.mdx +29 -0
  100. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryUnavailable/schema.json +24 -0
  101. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/index.mdx +67 -0
  102. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/queries/GetStockLevel/index.mdx +32 -0
  103. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/queries/GetStockLevel/schema.json +25 -0
  104. package/templates/default/domains/Fulfilment/systems/shipping-system/index.mdx +47 -0
  105. package/templates/default/domains/Fulfilment/systems/shipping-system/services/CarrierAdapter/commands/CreateShipment/index.mdx +32 -0
  106. package/templates/default/domains/Fulfilment/systems/shipping-system/services/CarrierAdapter/commands/CreateShipment/schema.json +26 -0
  107. package/templates/default/domains/Fulfilment/systems/shipping-system/services/CarrierAdapter/index.mdx +40 -0
  108. package/templates/default/domains/Fulfilment/systems/shipping-system/services/ShippingAPI/index.mdx +40 -0
  109. package/templates/default/domains/Fulfilment/systems/warehouse-system/containers/warehouse-database/index.mdx +35 -0
  110. package/templates/default/domains/Fulfilment/systems/warehouse-system/containers/warehouse-database/schema.sql +21 -0
  111. package/templates/default/domains/Fulfilment/systems/warehouse-system/index.mdx +53 -0
  112. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/PickingWorker/events/OrderPacked/index.mdx +29 -0
  113. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/PickingWorker/events/OrderPacked/schema.json +13 -0
  114. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/PickingWorker/index.mdx +44 -0
  115. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/WarehouseService/events/OrderReadyForShipping/index.mdx +29 -0
  116. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/WarehouseService/events/OrderReadyForShipping/schema.json +23 -0
  117. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/WarehouseService/index.mdx +53 -0
  118. package/templates/default/domains/Fulfilment/ubiquitous-language.mdx +44 -0
  119. package/templates/default/domains/Ordering/entities/checkout-session/index.mdx +36 -0
  120. package/templates/default/domains/Ordering/entities/order/index.mdx +36 -0
  121. package/templates/default/domains/Ordering/entities/order-line/index.mdx +38 -0
  122. package/templates/default/domains/Ordering/entities/order-status-history/index.mdx +35 -0
  123. package/templates/default/domains/Ordering/flows/PlaceAnOrder/index.mdx +158 -0
  124. package/templates/default/domains/Ordering/index.mdx +70 -0
  125. package/templates/default/domains/Ordering/systems/checkout-system/flows/CheckoutSaga/index.mdx +101 -0
  126. package/templates/default/domains/Ordering/systems/checkout-system/index.mdx +57 -0
  127. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutAPI/index.mdx +53 -0
  128. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/AuthorizePayment/index.mdx +32 -0
  129. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/AuthorizePayment/schema.json +29 -0
  130. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/ReserveInventory/index.mdx +32 -0
  131. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/ReserveInventory/schema.json +37 -0
  132. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/index.mdx +59 -0
  133. package/templates/default/domains/Ordering/systems/order-management-system/containers/order-database/index.mdx +39 -0
  134. package/templates/default/domains/Ordering/systems/order-management-system/containers/order-database/schema.sql +24 -0
  135. package/templates/default/domains/Ordering/systems/order-management-system/flows/OrderCancellation/index.mdx +105 -0
  136. package/templates/default/domains/Ordering/systems/order-management-system/index.mdx +53 -0
  137. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/asyncapi.yml +233 -0
  138. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CancelOrder/index.mdx +32 -0
  139. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CancelOrder/schema.json +19 -0
  140. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CreateOrder/index.mdx +32 -0
  141. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CreateOrder/schema.json +55 -0
  142. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCancelled/index.mdx +29 -0
  143. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCancelled/schema.json +25 -0
  144. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCompleted/index.mdx +29 -0
  145. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCompleted/schema.json +21 -0
  146. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCreated/index.mdx +29 -0
  147. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCreated/schema.json +29 -0
  148. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/index.mdx +74 -0
  149. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/queries/GetOrder/index.mdx +32 -0
  150. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/queries/GetOrder/schema.json +64 -0
  151. package/templates/default/domains/Ordering/ubiquitous-language.mdx +53 -0
  152. package/templates/default/domains/Payments/entities/fraud-check/index.mdx +39 -0
  153. package/templates/default/domains/Payments/entities/payment/index.mdx +36 -0
  154. package/templates/default/domains/Payments/entities/payment-authorization/index.mdx +35 -0
  155. package/templates/default/domains/Payments/entities/refund/index.mdx +36 -0
  156. package/templates/default/domains/Payments/index.mdx +69 -0
  157. package/templates/default/domains/Payments/systems/fraud-detection/index.mdx +49 -0
  158. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckFailed/index.mdx +29 -0
  159. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckFailed/schema.json +22 -0
  160. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckPassed/index.mdx +29 -0
  161. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckPassed/schema.json +18 -0
  162. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/index.mdx +51 -0
  163. package/templates/default/domains/Payments/systems/payment-processing-system/containers/payment-database/index.mdx +39 -0
  164. package/templates/default/domains/Payments/systems/payment-processing-system/containers/payment-database/schema.sql +25 -0
  165. package/templates/default/domains/Payments/systems/payment-processing-system/index.mdx +53 -0
  166. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentAPI/index.mdx +51 -0
  167. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/PaymentRequested/index.mdx +29 -0
  168. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/PaymentRequested/schema.json +19 -0
  169. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/RefundRequested/index.mdx +29 -0
  170. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/RefundRequested/schema.json +20 -0
  171. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/index.mdx +66 -0
  172. package/templates/default/domains/Payments/systems/stripe/index.mdx +52 -0
  173. package/templates/default/domains/Payments/systems/stripe/services/StripePaymentsAPI/index.mdx +42 -0
  174. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentFailed/index.mdx +29 -0
  175. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentFailed/schema.json +16 -0
  176. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentSucceeded/index.mdx +29 -0
  177. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentSucceeded/schema.json +15 -0
  178. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/RefundProcessed/index.mdx +29 -0
  179. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/RefundProcessed/schema.json +14 -0
  180. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/index.mdx +44 -0
  181. package/templates/default/domains/Payments/ubiquitous-language.mdx +41 -0
  182. package/templates/default/domains/Reviews/asyncapi.yml +181 -0
  183. package/templates/default/domains/Reviews/containers/rating-cache/index.mdx +29 -0
  184. package/templates/default/domains/Reviews/containers/review-database/index.mdx +33 -0
  185. package/templates/default/domains/Reviews/entities/moderation-decision/index.mdx +38 -0
  186. package/templates/default/domains/Reviews/entities/rating-summary/index.mdx +35 -0
  187. package/templates/default/domains/Reviews/entities/review/index.mdx +63 -0
  188. package/templates/default/domains/Reviews/entities/review-flag/index.mdx +35 -0
  189. package/templates/default/domains/Reviews/entities/review-vote/index.mdx +38 -0
  190. package/templates/default/domains/Reviews/flows/review-submission/index.mdx +120 -0
  191. package/templates/default/domains/Reviews/index.mdx +93 -0
  192. package/templates/default/domains/Reviews/openapi.yml +209 -0
  193. package/templates/default/domains/Reviews/services/RatingAggregator/events/rating-updated/index.mdx +29 -0
  194. package/templates/default/domains/Reviews/services/RatingAggregator/events/rating-updated/schema.json +12 -0
  195. package/templates/default/domains/Reviews/services/RatingAggregator/index.mdx +47 -0
  196. package/templates/default/domains/Reviews/services/ReviewAPI/commands/flag-review/index.mdx +29 -0
  197. package/templates/default/domains/Reviews/services/ReviewAPI/commands/flag-review/schema.json +13 -0
  198. package/templates/default/domains/Reviews/services/ReviewAPI/commands/submit-review/index.mdx +29 -0
  199. package/templates/default/domains/Reviews/services/ReviewAPI/commands/submit-review/schema.json +15 -0
  200. package/templates/default/domains/Reviews/services/ReviewAPI/commands/vote-review-helpful/index.mdx +29 -0
  201. package/templates/default/domains/Reviews/services/ReviewAPI/commands/vote-review-helpful/schema.json +12 -0
  202. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-flagged/index.mdx +29 -0
  203. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-flagged/schema.json +13 -0
  204. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-helpful-voted/index.mdx +29 -0
  205. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-helpful-voted/schema.json +12 -0
  206. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-submitted/index.mdx +29 -0
  207. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-submitted/schema.json +15 -0
  208. package/templates/default/domains/Reviews/services/ReviewAPI/index.mdx +58 -0
  209. package/templates/default/domains/Reviews/services/ReviewAPI/queries/get-product-reviews/index.mdx +24 -0
  210. package/templates/default/domains/Reviews/services/ReviewAPI/queries/get-product-reviews/schema.json +12 -0
  211. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-published/index.mdx +29 -0
  212. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-published/schema.json +13 -0
  213. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-rejected/index.mdx +29 -0
  214. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-rejected/schema.json +12 -0
  215. package/templates/default/domains/Reviews/services/ReviewModerationWorker/index.mdx +50 -0
  216. package/templates/default/domains/Shopping/entities/cart/index.mdx +40 -0
  217. package/templates/default/domains/Shopping/entities/cart-item/index.mdx +38 -0
  218. package/templates/default/domains/Shopping/entities/discount/index.mdx +35 -0
  219. package/templates/default/domains/Shopping/entities/promotion/index.mdx +40 -0
  220. package/templates/default/domains/Shopping/index.mdx +67 -0
  221. package/templates/default/domains/Shopping/systems/cart-system/containers/cart-database/index.mdx +39 -0
  222. package/templates/default/domains/Shopping/systems/cart-system/containers/cart-database/schema.sql +22 -0
  223. package/templates/default/domains/Shopping/systems/cart-system/index.mdx +53 -0
  224. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/AddItemToCart/index.mdx +32 -0
  225. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/AddItemToCart/schema.json +25 -0
  226. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/CheckoutCart/index.mdx +32 -0
  227. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/CheckoutCart/schema.json +23 -0
  228. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/RemoveItemFromCart/index.mdx +32 -0
  229. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/RemoveItemFromCart/schema.json +24 -0
  230. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/events/CartCheckedOut/index.mdx +29 -0
  231. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/events/CartCheckedOut/schema.json +62 -0
  232. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/index.mdx +72 -0
  233. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/openapi.yml +200 -0
  234. package/templates/default/domains/Shopping/systems/promotion-system/containers/promotion-database/index.mdx +40 -0
  235. package/templates/default/domains/Shopping/systems/promotion-system/containers/promotion-database/schema.sql +21 -0
  236. package/templates/default/domains/Shopping/systems/promotion-system/index.mdx +48 -0
  237. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/commands/CalculateDiscount/index.mdx +32 -0
  238. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/commands/CalculateDiscount/schema.json +53 -0
  239. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/events/DiscountCalculated/index.mdx +29 -0
  240. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/events/DiscountCalculated/schema.json +37 -0
  241. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/index.mdx +59 -0
  242. package/templates/default/domains/Shopping/ubiquitous-language.mdx +48 -0
  243. package/templates/default/eventcatalog.config.js +13 -0
  244. package/templates/default/pages/homepage.astro +109 -0
  245. package/templates/default/public/icons/analytics/clickhouse.svg +1 -0
  246. package/templates/default/public/icons/cache/redis.svg +1 -0
  247. package/templates/default/public/icons/database/postgresql.svg +1 -0
  248. package/templates/default/public/icons/languages/go.svg +1 -0
  249. package/templates/default/public/icons/languages/java.svg +1 -0
  250. package/templates/default/public/icons/languages/nodejs.svg +1 -0
  251. package/templates/default/public/icons/payments/stripe.svg +1 -0
  252. package/templates/default/teams/customer-platform.mdx +18 -0
  253. package/templates/default/teams/fulfilment-platform.mdx +20 -0
  254. package/templates/default/teams/ordering-platform.mdx +18 -0
  255. package/templates/default/teams/payments-platform.mdx +18 -0
  256. package/templates/default/teams/product-platform.mdx +20 -0
  257. package/templates/default/teams/reviews-platform.mdx +20 -0
  258. package/templates/default/teams/search-platform.mdx +19 -0
  259. package/templates/default/teams/shopping-platform.mdx +18 -0
  260. package/templates/default/users/dboyne.mdx +1 -1
  261. package/templates/empty/README-template.md +39 -31
  262. package/templates/eventbridge/README-template.md +44 -17
  263. package/templates/graphql/README-template.md +39 -31
  264. package/templates/index.ts +1 -0
  265. package/templates/openapi/README-template.md +37 -33
  266. package/templates/default/channels/inventory.{env}.events/index.mdx +0 -159
  267. package/templates/default/channels/orders.{env}.events/index.mdx +0 -85
  268. package/templates/default/channels/payment.{env}.events/index.mdx +0 -89
  269. package/templates/default/domains/E-Commerce/index.mdx +0 -140
  270. package/templates/default/domains/E-Commerce/ubiquitous-language.mdx +0 -87
  271. package/templates/default/domains/Orders/changelog.mdx +0 -7
  272. package/templates/default/domains/Orders/entities/CartItem/index.mdx +0 -124
  273. package/templates/default/domains/Orders/entities/Customer/index.mdx +0 -59
  274. package/templates/default/domains/Orders/entities/Order/index.mdx +0 -98
  275. package/templates/default/domains/Orders/entities/OrderItem/index.mdx +0 -62
  276. package/templates/default/domains/Orders/entities/ShoppingCart/index.mdx +0 -151
  277. package/templates/default/domains/Orders/index.mdx +0 -117
  278. package/templates/default/domains/Orders/services/InventoryService/changelog.mdx +0 -7
  279. package/templates/default/domains/Orders/services/InventoryService/channels/inventory-dlq/index.mdx +0 -13
  280. package/templates/default/domains/Orders/services/InventoryService/channels/inventory-queue/index.mdx +0 -13
  281. package/templates/default/domains/Orders/services/InventoryService/commands/AddInventory/index.mdx +0 -45
  282. package/templates/default/domains/Orders/services/InventoryService/commands/AddInventory/schema.json +0 -28
  283. package/templates/default/domains/Orders/services/InventoryService/commands/PlaceOrder/index.mdx +0 -34
  284. package/templates/default/domains/Orders/services/InventoryService/commands/PlaceOrder/schema.json +0 -124
  285. package/templates/default/domains/Orders/services/InventoryService/commands/UpdateInventory/index.mdx +0 -47
  286. package/templates/default/domains/Orders/services/InventoryService/commands/UpdateInventory/schema.json +0 -28
  287. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/changelog.mdx +0 -67
  288. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/examples/examples.config.yaml +0 -15
  289. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/examples/stock-decrease.json +0 -23
  290. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/examples/stock-increase.json +0 -23
  291. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/index.mdx +0 -124
  292. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/schema.avro +0 -13
  293. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/schema.json +0 -35
  294. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/changelog.mdx +0 -26
  295. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/index.mdx +0 -23
  296. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/schema.avro +0 -9
  297. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/schema.json +0 -36
  298. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/changelog.mdx +0 -26
  299. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/index.mdx +0 -108
  300. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/schema.avro +0 -10
  301. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/schema.json +0 -36
  302. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/examples/examples.config.yaml +0 -7
  303. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/examples/product-depleted.json +0 -19
  304. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/index.mdx +0 -102
  305. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/schema.json +0 -28
  306. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/versioned/0.0.1/index.mdx +0 -98
  307. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/versioned/0.0.1/schema.json +0 -28
  308. package/templates/default/domains/Orders/services/InventoryService/index.mdx +0 -120
  309. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryList/index.mdx +0 -22
  310. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryList/schema.json +0 -52
  311. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryStatus/index.mdx +0 -40
  312. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryStatus/schema.json +0 -27
  313. package/templates/default/domains/Orders/services/InventoryService/versioned/0.0.1/index.mdx +0 -52
  314. package/templates/default/domains/Orders/services/NotificationService/index.mdx +0 -82
  315. package/templates/default/domains/Orders/services/NotificationService/queries/GetNotificationDetails/index.mdx +0 -26
  316. package/templates/default/domains/Orders/services/NotificationService/queries/GetNotificationDetails/schema.json +0 -55
  317. package/templates/default/domains/Orders/services/NotificationService/queries/GetUserNotifications/index.mdx +0 -26
  318. package/templates/default/domains/Orders/services/NotificationService/queries/GetUserNotifications/schema.json +0 -46
  319. package/templates/default/domains/Orders/services/OrdersService/changelog.mdx +0 -3
  320. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/examples/address-change.json +0 -36
  321. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/examples/examples.config.yaml +0 -15
  322. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/examples/quantity-change.json +0 -29
  323. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/index.mdx +0 -58
  324. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/schema.avro +0 -75
  325. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/schema.json +0 -70
  326. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/examples/customer-request.json +0 -34
  327. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/examples/examples.config.yaml +0 -15
  328. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/examples/out-of-stock.json +0 -28
  329. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/index.mdx +0 -54
  330. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/schema.json +0 -71
  331. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/examples/examples.config.yaml +0 -15
  332. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/examples/gift-order.json +0 -38
  333. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/examples/standard-order.json +0 -42
  334. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/index.mdx +0 -55
  335. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/schema.json +0 -66
  336. package/templates/default/domains/Orders/services/OrdersService/index.mdx +0 -81
  337. package/templates/default/domains/Orders/services/OrdersService/openapi.yml +0 -185
  338. package/templates/default/domains/Orders/services/OrdersService/order-service-asyncapi.yaml +0 -148
  339. package/templates/default/domains/Orders/services/OrdersService/queries/GetOrder/index.mdx +0 -26
  340. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/changelog.mdx +0 -3
  341. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/index.mdx +0 -40
  342. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/openapi.yml +0 -96
  343. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/order-service-asyncapi.yaml +0 -148
  344. package/templates/default/domains/Orders/services/ShippingService/commands/CancelShipment/index.mdx +0 -22
  345. package/templates/default/domains/Orders/services/ShippingService/commands/CancelShipment/schema.json +0 -13
  346. package/templates/default/domains/Orders/services/ShippingService/commands/CreateReturnLabel/index.mdx +0 -22
  347. package/templates/default/domains/Orders/services/ShippingService/commands/CreateReturnLabel/schema.json +0 -19
  348. package/templates/default/domains/Orders/services/ShippingService/commands/CreateShipment/index.mdx +0 -22
  349. package/templates/default/domains/Orders/services/ShippingService/commands/CreateShipment/schema.json +0 -62
  350. package/templates/default/domains/Orders/services/ShippingService/commands/UpdateShipmentStatus/index.mdx +0 -22
  351. package/templates/default/domains/Orders/services/ShippingService/commands/UpdateShipmentStatus/schema.json +0 -29
  352. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/address-not-found.json +0 -23
  353. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/customer-unavailable.json +0 -40
  354. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/damaged-in-transit.json +0 -33
  355. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/examples.config.yaml +0 -23
  356. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/index.mdx +0 -22
  357. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/schema.json +0 -17
  358. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/examples/defective-item.json +0 -33
  359. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/examples/examples.config.yaml +0 -15
  360. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/examples/wrong-item.json +0 -51
  361. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/index.mdx +0 -22
  362. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/schema.json +0 -17
  363. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/examples/examples.config.yaml +0 -15
  364. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/examples/multi-package.json +0 -76
  365. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/examples/single-package.json +0 -51
  366. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/index.mdx +0 -22
  367. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/schema.json +0 -64
  368. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/examples/examples.config.yaml +0 -15
  369. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/examples/front-door-delivery.json +0 -30
  370. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/examples/signed-delivery.json +0 -31
  371. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/index.mdx +0 -22
  372. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/schema.json +0 -17
  373. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/examples/examples.config.yaml +0 -15
  374. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/examples/express-shipping.json +0 -33
  375. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/examples/standard-shipping.json +0 -32
  376. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/index.mdx +0 -22
  377. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/schema.json +0 -17
  378. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/examples/domestic-transit.json +0 -48
  379. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/examples/examples.config.yaml +0 -15
  380. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/examples/international-transit.json +0 -61
  381. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/index.mdx +0 -22
  382. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/schema.json +0 -17
  383. package/templates/default/domains/Orders/services/ShippingService/index.mdx +0 -61
  384. package/templates/default/domains/Orders/ubiquitous-language.mdx +0 -127
  385. package/templates/default/domains/Orders/versioned/0.0.1/index.mdx +0 -21
  386. package/templates/default/domains/Orders/versioned/0.0.2/index.mdx +0 -50
  387. package/templates/default/domains/Payment/entities/Address/index.mdx +0 -165
  388. package/templates/default/domains/Payment/entities/Invoice/index.mdx +0 -92
  389. package/templates/default/domains/Payment/entities/Payment/index.mdx +0 -140
  390. package/templates/default/domains/Payment/entities/PaymentMethod/index.mdx +0 -80
  391. package/templates/default/domains/Payment/entities/Transaction/index.mdx +0 -80
  392. package/templates/default/domains/Payment/flows/PaymentProcessed/index.mdx +0 -82
  393. package/templates/default/domains/Payment/index.mdx +0 -40
  394. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/examples/check-flagged.json +0 -50
  395. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/examples/check-passed.json +0 -45
  396. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/examples/examples.config.yaml +0 -15
  397. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/index.mdx +0 -50
  398. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/schema.json +0 -44
  399. package/templates/default/domains/Payment/services/FraudDetectionService/index.mdx +0 -62
  400. package/templates/default/domains/Payment/services/PaymentGatewayService/commands/ProcessPayment/index.mdx +0 -75
  401. package/templates/default/domains/Payment/services/PaymentGatewayService/commands/ProcessPayment/schema.json +0 -58
  402. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/card-declined.json +0 -38
  403. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/examples.config.yaml +0 -23
  404. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/expired-card.json +0 -38
  405. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/insufficient-funds.json +0 -38
  406. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/index.mdx +0 -64
  407. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/schema.json +0 -68
  408. package/templates/default/domains/Payment/services/PaymentGatewayService/index.mdx +0 -71
  409. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/examples/examples.config.yaml +0 -15
  410. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/examples/express-checkout.json +0 -45
  411. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/examples/standard-checkout.json +0 -52
  412. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/index.mdx +0 -37
  413. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/schema.json +0 -31
  414. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/examples/examples.config.yaml +0 -15
  415. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/examples/international-payment.json +0 -48
  416. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/examples/successful-payment.json +0 -48
  417. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/index.mdx +0 -43
  418. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/schema.json +0 -54
  419. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/versioned/0.0.1/index.mdx +0 -43
  420. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/versioned/0.0.1/schema.json +0 -54
  421. package/templates/default/domains/Payment/services/PaymentService/index.mdx +0 -41
  422. package/templates/default/domains/Payment/services/PaymentService/queries/GetPaymentStatus/index.mdx +0 -26
  423. package/templates/default/domains/Payment/services/PaymentService/queries/GetPaymentStatus/schema.json +0 -39
  424. package/templates/default/domains/Payment/ubiquitous-language.mdx +0 -96
  425. package/templates/default/domains/ProductCatalog/entities/Category/index.mdx +0 -127
  426. package/templates/default/domains/ProductCatalog/entities/Inventory/index.mdx +0 -119
  427. package/templates/default/domains/ProductCatalog/entities/Product/index.mdx +0 -118
  428. package/templates/default/domains/ProductCatalog/entities/Review/index.mdx +0 -157
  429. package/templates/default/domains/ProductCatalog/index.mdx +0 -73
  430. package/templates/default/domains/ProductCatalog/ubiquitous-language.mdx +0 -88
  431. package/templates/default/domains/Subscriptions/entities/BillingProfile/index.mdx +0 -71
  432. package/templates/default/domains/Subscriptions/entities/SubscriptionPeriod/index.mdx +0 -76
  433. package/templates/default/domains/Subscriptions/flows/CancelSubscription/SubscriptionRenewed/index.mdx +0 -300
  434. package/templates/default/domains/Subscriptions/flows/CancelSubscription/index.mdx +0 -69
  435. package/templates/default/domains/Subscriptions/flows/CancelSubscription/versioned/0.0.1/index.mdx +0 -51
  436. package/templates/default/domains/Subscriptions/index.mdx +0 -35
  437. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/examples/examples.config.yaml +0 -7
  438. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/examples/upcoming-renewal.json +0 -28
  439. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/index.mdx +0 -63
  440. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/schema.json +0 -54
  441. package/templates/default/domains/Subscriptions/services/BillingService/index.mdx +0 -83
  442. package/templates/default/domains/Subscriptions/services/PlanManagementService/index.mdx +0 -83
  443. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/CancelSubscription/index.mdx +0 -26
  444. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/CancelSubscription/schema.json +0 -30
  445. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/SubscribeUser/index.mdx +0 -26
  446. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/SubscribeUser/schema.json +0 -31
  447. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/examples/examples.config.yaml +0 -15
  448. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/examples/payment-failure.json +0 -25
  449. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/examples/voluntary-cancellation.json +0 -23
  450. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/index.mdx +0 -26
  451. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/schema.json +0 -35
  452. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/examples/annual-plan.json +0 -26
  453. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/examples/examples.config.yaml +0 -15
  454. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/examples/monthly-plan.json +0 -25
  455. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/index.mdx +0 -26
  456. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/schema.json +0 -36
  457. package/templates/default/domains/Subscriptions/services/SubscriptionService/index.mdx +0 -62
  458. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/index.mdx +0 -26
  459. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/schema.json +0 -54
  460. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/versioned/0.0.1/index.mdx +0 -26
  461. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/versioned/0.0.1/schema.json +0 -54
  462. package/templates/default/domains/Subscriptions/ubiquitous-language.mdx +0 -129
  463. package/templates/default/teams/full-stack.mdx +0 -26
  464. package/templates/default/teams/mobile-devs.mdx +0 -23
  465. package/templates/default/users/aSmith.mdx +0 -27
  466. package/templates/default/users/mSmith.mdx +0 -9
@@ -0,0 +1,32 @@
1
+ ---
2
+ id: authorize-payment
3
+ name: Authorize Payment
4
+ version: 1.0.0
5
+ summary: |
6
+ Command to authorize payment for the total of a checked-out cart.
7
+ owners:
8
+ - ordering-platform
9
+ schemaPath: schema.json
10
+ operation:
11
+ method: POST
12
+ path: /payments/authorize
13
+ statusCodes: ['201', '400', '402', '409']
14
+ sidebar:
15
+ badge: 'POST'
16
+ ---
17
+
18
+ import Footer from '@catalog/components/footer.astro';
19
+
20
+ ## Overview
21
+
22
+ `AuthorizePayment` is sent by the [[service|checkout-orchestrator]] to authorize payment for the order total. Authorization places a hold on the customer's payment method; the funds are captured once the order is created. If a later step fails, the authorization is voided.
23
+
24
+ ## Architecture diagram
25
+
26
+ <NodeGraph />
27
+
28
+ ## Schema
29
+
30
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
31
+
32
+ <Footer />
@@ -0,0 +1,29 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "AuthorizePayment",
4
+ "description": "Command to authorize payment for the total of a checked-out cart",
5
+ "type": "object",
6
+ "properties": {
7
+ "cartId": {
8
+ "description": "Identifier of the cart being checked out",
9
+ "type": "string",
10
+ "format": "uuid"
11
+ },
12
+ "customerId": {
13
+ "description": "Identifier of the customer paying",
14
+ "type": "string",
15
+ "format": "uuid"
16
+ },
17
+ "amount": {
18
+ "description": "Amount to authorize, in minor units (e.g. cents)",
19
+ "type": "integer",
20
+ "minimum": 0
21
+ },
22
+ "currency": {
23
+ "description": "ISO 4217 currency code",
24
+ "type": "string",
25
+ "pattern": "^[A-Z]{3}$"
26
+ }
27
+ },
28
+ "required": ["cartId", "amount", "currency"]
29
+ }
@@ -0,0 +1,32 @@
1
+ ---
2
+ id: reserve-inventory
3
+ name: Reserve Inventory
4
+ version: 1.0.0
5
+ summary: |
6
+ Command to reserve stock for the items in a checked-out cart.
7
+ owners:
8
+ - ordering-platform
9
+ schemaPath: schema.json
10
+ operation:
11
+ method: POST
12
+ path: /reservations
13
+ statusCodes: ['201', '400', '409']
14
+ sidebar:
15
+ badge: 'POST'
16
+ ---
17
+
18
+ import Footer from '@catalog/components/footer.astro';
19
+
20
+ ## Overview
21
+
22
+ `ReserveInventory` is sent by the [[service|checkout-orchestrator]] to hold stock for the items in a checked-out cart. A successful reservation guarantees the inventory is available while payment is authorized. If a later checkout step fails, the reservation is released.
23
+
24
+ ## Architecture diagram
25
+
26
+ <NodeGraph />
27
+
28
+ ## Schema
29
+
30
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
31
+
32
+ <Footer />
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "ReserveInventory",
4
+ "description": "Command to reserve stock for the items in a checked-out cart",
5
+ "type": "object",
6
+ "properties": {
7
+ "cartId": {
8
+ "description": "Identifier of the cart being checked out",
9
+ "type": "string",
10
+ "format": "uuid"
11
+ },
12
+ "customerId": {
13
+ "description": "Identifier of the customer checking out",
14
+ "type": "string",
15
+ "format": "uuid"
16
+ },
17
+ "items": {
18
+ "description": "The items to reserve",
19
+ "type": "array",
20
+ "items": {
21
+ "type": "object",
22
+ "properties": {
23
+ "productId": {
24
+ "type": "string",
25
+ "format": "uuid"
26
+ },
27
+ "quantity": {
28
+ "type": "integer",
29
+ "minimum": 1
30
+ }
31
+ },
32
+ "required": ["productId", "quantity"]
33
+ }
34
+ }
35
+ },
36
+ "required": ["cartId", "items"]
37
+ }
@@ -0,0 +1,59 @@
1
+ ---
2
+ id: checkout-orchestrator
3
+ version: 1.0.0
4
+ name: Checkout Orchestrator
5
+ summary: |
6
+ Runs the checkout saga. Reserves inventory, authorizes payment and creates the order, coordinating the steps that turn a checked-out cart into a confirmed order.
7
+ styles:
8
+ icon: /icons/languages/nodejs.svg
9
+ owners:
10
+ - ordering-platform
11
+ sends:
12
+ - id: reserve-inventory
13
+ version: 1.0.0
14
+ - id: authorize-payment
15
+ version: 1.0.0
16
+ - id: create-order
17
+ version: 1.0.0
18
+ repository:
19
+ language: TypeScript
20
+ url: 'https://github.com/acme/checkout-orchestrator'
21
+ ---
22
+
23
+ import Footer from '@catalog/components/footer.astro';
24
+
25
+ ## Overview
26
+
27
+ The **Checkout Orchestrator** is the brain of the Checkout System. Once the [[service|checkout-api]] hands it a checkout, it runs the checkout saga step by step:
28
+
29
+ 1. **Reserve inventory** — sends [[command|reserve-inventory]] to hold stock for the cart's items.
30
+ 2. **Authorize payment** — sends [[command|authorize-payment]] to authorize the order total.
31
+ 3. **Create the order** — sends [[command|create-order]] to the [[system|order-management-system]].
32
+
33
+ If any step fails, the orchestrator compensates the earlier steps (releasing the reservation, voiding the authorization) so the customer is never left in an inconsistent state.
34
+
35
+ <Tiles>
36
+ <Tile
37
+ icon="BoltIcon"
38
+ href={`/visualiser/services/${frontmatter.id}/${frontmatter.version}`}
39
+ title={`Sends ${frontmatter.sends.length} messages`}
40
+ description="Reserve inventory, authorize payment, create order"
41
+ />
42
+ </Tiles>
43
+
44
+ ### Responsibilities
45
+
46
+ | Area | Description |
47
+ | -------------- | ------------------------------------------------------------------------------------------------ |
48
+ | Inventory | Reserves stock via [[command\|reserve-inventory]]. |
49
+ | Payment | Authorizes the order total via [[command\|authorize-payment]]. |
50
+ | Order creation | Creates the order via [[command\|create-order]] against the [[system\|order-management-system]]. |
51
+ | Compensation | Rolls back earlier steps if a later step fails. |
52
+
53
+ ## Architecture diagram
54
+
55
+ <NodeGraph />
56
+
57
+ <MessageTable format="all" limit={8} />
58
+
59
+ <Footer />
@@ -0,0 +1,39 @@
1
+ ---
2
+ id: order-database
3
+ name: Order Database
4
+ version: 1.0.0
5
+ summary: PostgreSQL database that is the system of record for orders and their items.
6
+ container_type: database
7
+ technology: postgres@16
8
+ authoritative: true
9
+ access_mode: readWrite
10
+ purpose: System of record for orders
11
+ classification: confidential
12
+ retention: 7y
13
+ residency: eu-west-1
14
+ styles:
15
+ icon: /icons/database/postgresql.svg
16
+ ---
17
+
18
+ <NodeGraph />
19
+
20
+ ### What is this?
21
+
22
+ The **Order Database** is the authoritative store for orders at Acme Inc. The [[service|order-service]] reads from and writes to it as orders are created, cancelled and completed.
23
+
24
+ ### What does it store?
25
+
26
+ - **Orders** — one row per order: id, customer, status, total and timestamps.
27
+ - **Order Items** — one row per item in an order: product, quantity and unit price.
28
+
29
+ ### Schema
30
+
31
+ <AccordionGroup>
32
+ <Accordion title="Order Database schema">
33
+ <Schema file="schema.sql" lang="sql" title="schema.sql" />
34
+ </Accordion>
35
+ </AccordionGroup>
36
+
37
+ ### Retention
38
+
39
+ Orders are financial records and are retained for **7 years** (see frontmatter) to meet accounting and audit requirements.
@@ -0,0 +1,24 @@
1
+ -- Order Database — system of record for orders
2
+
3
+ CREATE TABLE orders (
4
+ order_id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
5
+ cart_id UUID,
6
+ customer_id UUID NOT NULL,
7
+ status TEXT NOT NULL DEFAULT 'CREATED'
8
+ CHECK (status IN ('CREATED', 'COMPLETED', 'CANCELLED')),
9
+ total_cents INTEGER NOT NULL CHECK (total_cents >= 0),
10
+ currency CHAR(3) NOT NULL DEFAULT 'USD',
11
+ created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
12
+ updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
13
+ );
14
+
15
+ CREATE TABLE order_items (
16
+ order_id UUID NOT NULL REFERENCES orders (order_id) ON DELETE CASCADE,
17
+ product_id UUID NOT NULL,
18
+ quantity INTEGER NOT NULL CHECK (quantity > 0),
19
+ unit_price_cents INTEGER NOT NULL CHECK (unit_price_cents >= 0),
20
+ PRIMARY KEY (order_id, product_id)
21
+ );
22
+
23
+ CREATE INDEX idx_orders_customer ON orders (customer_id);
24
+ CREATE INDEX idx_orders_status ON orders (status);
@@ -0,0 +1,105 @@
1
+ ---
2
+ id: order-cancellation
3
+ name: Order Cancellation
4
+ version: 1.0.0
5
+ summary: |
6
+ How an order is cancelled — whether requested by the customer or triggered by a failure — and the events that tell the rest of the business to unwind it.
7
+ owners:
8
+ - ordering-platform
9
+ steps:
10
+ - id: cancellation_trigger
11
+ title: Cancellation requested
12
+ actor:
13
+ name: Shopper or System
14
+ summary: A customer asks to cancel, or a downstream failure (payment, inventory) forces a cancellation.
15
+ next_step:
16
+ id: cancel_order_command
17
+ label: Cancel order
18
+
19
+ - id: cancel_order_command
20
+ title: Cancel Order
21
+ message:
22
+ id: cancel-order
23
+ version: 1.0.0
24
+ next_step:
25
+ id: order_service
26
+ label: Handle cancellation
27
+
28
+ - id: order_service
29
+ title: Order Service
30
+ service:
31
+ id: order-service
32
+ version: 1.0.0
33
+ next_steps:
34
+ - id: eligibility_check
35
+ label: Check eligibility
36
+ - id: not_cancellable
37
+ label: Already completed
38
+
39
+ - id: eligibility_check
40
+ title: Cancellation policy check
41
+ custom:
42
+ title: Cancellation policy
43
+ color: blue
44
+ icon: ClipboardDocumentCheckIcon
45
+ type: Policy
46
+ summary: An order can only be cancelled before it is completed. Completed orders must go through returns instead.
47
+ properties:
48
+ rule: 'status must be CREATED'
49
+ next_step:
50
+ id: order_database
51
+ label: Mark cancelled
52
+
53
+ - id: order_database
54
+ title: Order Database
55
+ container:
56
+ id: order-database
57
+ next_step:
58
+ id: order_cancelled
59
+ label: Persist + publish
60
+
61
+ - id: order_cancelled
62
+ title: Order Cancelled
63
+ message:
64
+ id: order-cancelled
65
+ version: 1.0.0
66
+ next_step:
67
+ id: downstream_unwind
68
+ label: Unwind downstream
69
+
70
+ - id: downstream_unwind
71
+ title: Downstream unwind
72
+ custom:
73
+ title: Release and refund
74
+ color: orange
75
+ icon: ArrowUturnLeftIcon
76
+ type: Compensation
77
+ summary: Consumers of OrderCancelled release reserved inventory, void or refund the payment, and stop fulfilment.
78
+ properties:
79
+ consumers: 'inventory, payment, fulfilment'
80
+
81
+ - id: not_cancellable
82
+ title: Cannot cancel
83
+ custom:
84
+ title: Cannot cancel
85
+ color: red
86
+ icon: ExclamationTriangleIcon
87
+ type: Exception
88
+ summary: The order has already been completed and cannot be cancelled. The customer is directed to the returns process.
89
+ properties:
90
+ next_action: 'start a return'
91
+ ---
92
+
93
+ ## Overview
94
+
95
+ **Order Cancellation** documents how the [[system|order-management-system]] cancels an order. Cancellation can be requested by a shopper or forced by a downstream failure during checkout. Only orders that have not yet completed can be cancelled.
96
+
97
+ <NodeGraph />
98
+
99
+ ## How it works
100
+
101
+ 1. A [[command|cancel-order]] command reaches the [[service|order-service]].
102
+ 2. The service checks the cancellation policy — only `CREATED` orders are cancellable.
103
+ 3. If eligible, the order is marked cancelled in the [[container|order-database]] and [[event|order-cancelled]] is published.
104
+ 4. Downstream consumers react to [[event|order-cancelled]] to release inventory, refund payment and stop fulfilment.
105
+ 5. If the order is already completed, cancellation is rejected and the customer is sent to the returns process.
@@ -0,0 +1,53 @@
1
+ ---
2
+ id: order-management-system
3
+ name: Order Management System
4
+ version: 1.0.0
5
+ summary: |
6
+ Internal system that is the source of truth for orders. It creates orders, tracks their lifecycle, and publishes events as orders are created, completed and cancelled.
7
+ owners:
8
+ - ordering-platform
9
+ services:
10
+ - id: order-service
11
+ containers:
12
+ - id: order-database
13
+ flows:
14
+ - id: order-cancellation
15
+ version: 1.0.0
16
+ relationships:
17
+ - id: checkout-system
18
+ label: receives orders from
19
+ badges:
20
+ - content: Internal
21
+ backgroundColor: gray
22
+ textColor: gray
23
+ icon: LockClosedIcon
24
+ ---
25
+
26
+ ## Overview
27
+
28
+ The **Order Management System** owns the order at Acme Inc. It accepts the [[command|create-order]] command from the [[system|checkout-system]], persists orders in the [[container|order-database]], and serves order lookups via [[query|get-order]]. As an order moves through its lifecycle it publishes [[event|order-created]], [[event|order-completed]] and [[event|order-cancelled]] events for the rest of the business to react to.
29
+
30
+ ## Context Diagram
31
+
32
+ How this system relates to the other systems around it.
33
+
34
+ <ContextDiagram />
35
+
36
+ ## Resource Diagram
37
+
38
+ The services, data stores and messages that make up this system.
39
+
40
+ <NodeGraph />
41
+
42
+ ## What's inside
43
+
44
+ | Component | Type | Responsibility |
45
+ | ----------------------------- | ---------- | ------------------------------------------------------------------------- |
46
+ | [[service\|order-service]] | Service | Creates, cancels and serves orders, and publishes order lifecycle events. |
47
+ | [[container\|order-database]] | Data store | PostgreSQL system of record for orders and their items. |
48
+
49
+ ## Messages this system publishes
50
+
51
+ - [[event\|order-created]] — a new order has been created.
52
+ - [[event\|order-completed]] — an order has been fulfilled and completed.
53
+ - [[event\|order-cancelled]] — an order has been cancelled.
@@ -0,0 +1,233 @@
1
+ asyncapi: 3.0.0
2
+
3
+ info:
4
+ title: Order Service
5
+ version: 1.0.0
6
+ description: |
7
+ The event-driven interface of the Order Service — the system of record for orders.
8
+
9
+ The service consumes commands to create and cancel orders, and publishes events as
10
+ orders move through their lifecycle (created, completed, cancelled). Query access
11
+ (`GetOrder`) is served over the REST API and is not part of this AsyncAPI document.
12
+ contact:
13
+ name: Ordering Platform
14
+ email: ordering-platform@acme.test
15
+
16
+ defaultContentType: application/json
17
+
18
+ servers:
19
+ production:
20
+ host: broker.acme.test:9092
21
+ protocol: kafka
22
+ description: Production Kafka cluster.
23
+
24
+ channels:
25
+ orderCommands:
26
+ address: ordering.commands
27
+ title: Order commands
28
+ description: Commands the Order Service consumes to create and cancel orders.
29
+ messages:
30
+ CreateOrder:
31
+ $ref: '#/components/messages/CreateOrder'
32
+ CancelOrder:
33
+ $ref: '#/components/messages/CancelOrder'
34
+
35
+ orderEvents:
36
+ address: ordering.orders
37
+ title: Order lifecycle events
38
+ description: Events the Order Service publishes as orders move through their lifecycle.
39
+ messages:
40
+ OrderCreated:
41
+ $ref: '#/components/messages/OrderCreated'
42
+ OrderCompleted:
43
+ $ref: '#/components/messages/OrderCompleted'
44
+ OrderCancelled:
45
+ $ref: '#/components/messages/OrderCancelled'
46
+
47
+ operations:
48
+ receiveCreateOrder:
49
+ action: receive
50
+ title: Create Order
51
+ summary: Create a new order from a checked-out cart.
52
+ channel:
53
+ $ref: '#/channels/orderCommands'
54
+ messages:
55
+ - $ref: '#/channels/orderCommands/messages/CreateOrder'
56
+
57
+ receiveCancelOrder:
58
+ action: receive
59
+ title: Cancel Order
60
+ summary: Cancel an existing order.
61
+ channel:
62
+ $ref: '#/channels/orderCommands'
63
+ messages:
64
+ - $ref: '#/channels/orderCommands/messages/CancelOrder'
65
+
66
+ publishOrderCreated:
67
+ action: send
68
+ title: Order Created
69
+ summary: Published when a new order has been created.
70
+ channel:
71
+ $ref: '#/channels/orderEvents'
72
+ messages:
73
+ - $ref: '#/channels/orderEvents/messages/OrderCreated'
74
+
75
+ publishOrderCompleted:
76
+ action: send
77
+ title: Order Completed
78
+ summary: Published when an order has been fulfilled and completed.
79
+ channel:
80
+ $ref: '#/channels/orderEvents'
81
+ messages:
82
+ - $ref: '#/channels/orderEvents/messages/OrderCompleted'
83
+
84
+ publishOrderCancelled:
85
+ action: send
86
+ title: Order Cancelled
87
+ summary: Published when an order has been cancelled.
88
+ channel:
89
+ $ref: '#/channels/orderEvents'
90
+ messages:
91
+ - $ref: '#/channels/orderEvents/messages/OrderCancelled'
92
+
93
+ components:
94
+ messages:
95
+ CreateOrder:
96
+ name: CreateOrder
97
+ title: Create Order
98
+ summary: Command to create a new order from a checked-out cart.
99
+ payload:
100
+ $ref: '#/components/schemas/CreateOrder'
101
+ CancelOrder:
102
+ name: CancelOrder
103
+ title: Cancel Order
104
+ summary: Command to cancel an existing order.
105
+ payload:
106
+ $ref: '#/components/schemas/CancelOrder'
107
+ OrderCreated:
108
+ name: OrderCreated
109
+ title: Order Created
110
+ summary: Published when a new order has been created.
111
+ payload:
112
+ $ref: '#/components/schemas/OrderCreated'
113
+ OrderCompleted:
114
+ name: OrderCompleted
115
+ title: Order Completed
116
+ summary: Published when an order has been fulfilled and completed.
117
+ payload:
118
+ $ref: '#/components/schemas/OrderCompleted'
119
+ OrderCancelled:
120
+ name: OrderCancelled
121
+ title: Order Cancelled
122
+ summary: Published when an order has been cancelled.
123
+ payload:
124
+ $ref: '#/components/schemas/OrderCancelled'
125
+
126
+ schemas:
127
+ OrderItem:
128
+ type: object
129
+ required: [productId, quantity, unitPrice]
130
+ properties:
131
+ productId:
132
+ type: string
133
+ format: uuid
134
+ quantity:
135
+ type: integer
136
+ minimum: 1
137
+ unitPrice:
138
+ type: integer
139
+ description: Price per unit in minor units (e.g. cents).
140
+
141
+ CancellationReason:
142
+ type: string
143
+ enum: [CUSTOMER_REQUESTED, PAYMENT_FAILED, OUT_OF_STOCK, FRAUD]
144
+
145
+ CreateOrder:
146
+ type: object
147
+ description: Command to create a new order from a checked-out cart.
148
+ required: [cartId, customerId, items, total, currency]
149
+ properties:
150
+ cartId:
151
+ type: string
152
+ format: uuid
153
+ customerId:
154
+ type: string
155
+ format: uuid
156
+ items:
157
+ type: array
158
+ items:
159
+ $ref: '#/components/schemas/OrderItem'
160
+ total:
161
+ type: integer
162
+ minimum: 0
163
+ description: Order total in minor units (e.g. cents).
164
+ currency:
165
+ type: string
166
+ pattern: '^[A-Z]{3}$'
167
+ paymentAuthorizationId:
168
+ type: string
169
+ description: Identifier of the payment authorization for this order.
170
+
171
+ CancelOrder:
172
+ type: object
173
+ description: Command to cancel an existing order.
174
+ required: [orderId, reason]
175
+ properties:
176
+ orderId:
177
+ type: string
178
+ format: uuid
179
+ reason:
180
+ $ref: '#/components/schemas/CancellationReason'
181
+
182
+ OrderCreated:
183
+ type: object
184
+ description: Published when a new order has been created.
185
+ required: [orderId, customerId, total, currency, createdAt]
186
+ properties:
187
+ orderId:
188
+ type: string
189
+ format: uuid
190
+ customerId:
191
+ type: string
192
+ format: uuid
193
+ total:
194
+ type: integer
195
+ description: Order total in minor units (e.g. cents).
196
+ currency:
197
+ type: string
198
+ pattern: '^[A-Z]{3}$'
199
+ createdAt:
200
+ type: string
201
+ format: date-time
202
+
203
+ OrderCompleted:
204
+ type: object
205
+ description: Published when an order has been fulfilled and completed.
206
+ required: [orderId, customerId, completedAt]
207
+ properties:
208
+ orderId:
209
+ type: string
210
+ format: uuid
211
+ customerId:
212
+ type: string
213
+ format: uuid
214
+ completedAt:
215
+ type: string
216
+ format: date-time
217
+
218
+ OrderCancelled:
219
+ type: object
220
+ description: Published when an order has been cancelled.
221
+ required: [orderId, reason, cancelledAt]
222
+ properties:
223
+ orderId:
224
+ type: string
225
+ format: uuid
226
+ customerId:
227
+ type: string
228
+ format: uuid
229
+ reason:
230
+ $ref: '#/components/schemas/CancellationReason'
231
+ cancelledAt:
232
+ type: string
233
+ format: date-time
@@ -0,0 +1,32 @@
1
+ ---
2
+ id: cancel-order
3
+ name: Cancel Order
4
+ version: 1.0.0
5
+ summary: |
6
+ Command to cancel an existing order.
7
+ owners:
8
+ - ordering-platform
9
+ schemaPath: schema.json
10
+ operation:
11
+ method: POST
12
+ path: /orders/{orderId}/cancel
13
+ statusCodes: ['200', '404', '409']
14
+ sidebar:
15
+ badge: 'POST'
16
+ ---
17
+
18
+ import Footer from '@catalog/components/footer.astro';
19
+
20
+ ## Overview
21
+
22
+ `CancelOrder` is handled by the [[service|order-service]]. It cancels an order that has not yet been completed — releasing any reservations and voiding the payment authorization where needed. On success the Order Service publishes an [[event|order-cancelled]] event.
23
+
24
+ ## Architecture diagram
25
+
26
+ <NodeGraph />
27
+
28
+ ## Schema
29
+
30
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
31
+
32
+ <Footer />