@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
@@ -1,61 +0,0 @@
1
- ---
2
- id: ShippingService
3
- version: 0.0.1
4
- name: Shipping Service
5
- summary: |
6
- Service that handles shipping
7
- owners:
8
- - dboyne
9
- receives:
10
- - id: PaymentProcessed
11
- from:
12
- - id: 'payments.{env}.events'
13
- parameters:
14
- env: staging
15
- - id: CancelShipment
16
- - id: CreateShipment
17
- - id: UpdateShipmentStatus
18
- sends:
19
- - id: ShipmentCreated
20
- - id: ReturnInitiated
21
- - id: ShipmentDispatched
22
- - id: ShipmentInTransit
23
- - id: ShipmentDelivered
24
- - id: DeliveryFailed
25
- repository:
26
- language: JavaScript
27
- url: 'https://github.com/event-catalog/pretend-shipping-service'
28
- ---
29
-
30
- import Footer from '@catalog/components/footer.astro';
31
-
32
- ## Overview
33
-
34
- The Shipping Service is responsible for managing shipping within the system. It handles order creation, updating, status tracking, and interactions with other services such as Inventory, Payment, and Notification services to ensure smooth order processing and fulfillment.
35
-
36
- <Tiles>
37
- <Tile
38
- icon="BoltIcon"
39
- href={`/visualiser/services/${frontmatter.id}/${frontmatter.version}`}
40
- title={`Sends ${frontmatter.sends.length} messages`}
41
- description="This service sends messages to downstream consumers"
42
- />
43
- <Tile
44
- icon="BoltIcon"
45
- href={`/visualiser/services/${frontmatter.id}/${frontmatter.version}`}
46
- title={`Receives ${frontmatter.receives.length} messages`}
47
- description="This service receives messages from other services"
48
- />
49
- </Tiles>
50
-
51
- ### Core features
52
-
53
- The Shipping Service is responsible for managing shipping within the system. It handles order creation, updating, status tracking, and interactions with other services such as Inventory, Payment, and Notification services to ensure smooth order processing and fulfillment.
54
-
55
- ## Architecture diagram
56
-
57
- <NodeGraph />
58
-
59
- <MessageTable format="all" limit={4} />
60
-
61
- <Footer />
@@ -1,127 +0,0 @@
1
- ---
2
- dictionary:
3
- - id: Payment
4
- name: Payment
5
- summary: 'The act of paying for magical goods or services.'
6
- icon: Wand2
7
- - id: Purchase Order
8
- name: Purchase Order
9
- summary: 'A mystical document issued by a buyer to a seller indicating the types, quantities, and agreed prices for enchanted products or services.'
10
- description: |
11
- A purchase order (PO) is a magical document that initiates the buying process between mystical entities. It protects both buyer and seller by clearly documenting the transaction details. Key components include:
12
-
13
- - Unique PO number for tracking
14
- - Detailed item specifications and quantities
15
- - Agreed prices and payment terms
16
- - Delivery requirements and timelines
17
- - Terms and conditions of the purchase
18
-
19
- POs are essential for budget control, audit trails, and inventory management. They help prevent unauthorized purchases and provide a clear record for accounting and reconciliation purposes.
20
- icon: FileText
21
- - id: Order Line
22
- name: Order Line
23
- summary: 'An individual enchanted item within a purchase order, representing a specific magical product or service being ordered.'
24
- description: |
25
- Order lines are the fundamental building blocks of any purchase order. Each line represents a distinct item or service and contains critical information for order fulfillment:
26
-
27
- - Product identifier (SKU or part number)
28
- - Quantity ordered
29
- - Unit price and total line value
30
- - Special handling instructions
31
- - Required delivery date
32
-
33
- Order lines drive warehouse picking operations, shipping processes, and financial calculations. They are essential for tracking partial shipments and managing order modifications.
34
- icon: ListOrdered
35
- - id: SKU
36
- name: SKU
37
- summary: 'Sorcery Keeping Unit - A unique identifier for distinct magical products and their variants in inventory.'
38
- description: |
39
- SKUs are the cornerstone of effective inventory management systems. Each SKU represents a unique combination of product attributes:
40
-
41
- - Product variations (size, color, style)
42
- - Storage location identifiers
43
- - Supplier information
44
- - Reorder points and quantities
45
-
46
- SKUs enable precise inventory tracking, automated reordering, and detailed sales analytics. They are crucial for maintaining optimal stock levels and preventing stockouts or overstock situations.
47
- icon: Tag
48
- - id: Consignment
49
- name: Consignment
50
- summary: 'A batch of enchanted goods destined for or delivered to someone.'
51
- description: |
52
- A consignment represents the physical movement of goods through the supply chain. It encompasses all aspects of the shipping process:
53
-
54
- - Packaging and labeling requirements
55
- - Transportation method and routing
56
- - Customs documentation for international shipments
57
- - Tracking and proof of delivery
58
-
59
- Consignments may combine multiple orders for efficient shipping and can be tracked as a single unit throughout the delivery process. They are crucial for managing logistics costs and ensuring timely delivery to customers.
60
- icon: Package
61
- - id: Invoice
62
- name: Invoice
63
- summary: 'A document issued by a seller to a buyer, listing enchanted goods or services provided and the amount due.'
64
- description: |
65
- Invoices are critical for financial transactions, serving as a request for payment from the buyer. They include:
66
-
67
- - Invoice number for tracking
68
- - List of products or services provided
69
- - Total amount due and payment terms
70
- - Seller and buyer contact information
71
- - Due date for payment
72
-
73
- Invoices are essential for accounting, tax purposes, and maintaining cash flow.
74
- icon: Receipt
75
- - id: Supplier
76
- name: Supplier
77
- summary: 'An entity that provides enchanted goods or services to another organization.'
78
- description: |
79
- Suppliers are key partners in the supply chain, responsible for delivering the necessary products or services. Key aspects include:
80
-
81
- - Supplier identification and contact details
82
- - Product or service offerings
83
- - Pricing and payment terms
84
- - Delivery schedules and reliability
85
-
86
- Effective supplier management ensures quality, cost-effectiveness, and timely delivery.
87
- icon: Truck
88
- - id: Inventory
89
- name: Inventory
90
- summary: 'The complete list of enchanted items held in stock by a business.'
91
- description: |
92
- Inventory management is crucial for balancing supply and demand. It involves:
93
-
94
- - Tracking stock levels and locations
95
- - Managing reorder points and quantities
96
- - Conducting regular stock audits
97
- - Analyzing inventory turnover rates
98
-
99
- Proper inventory management minimizes costs and maximizes service levels.
100
- icon: Warehouse
101
- - id: Fulfillment
102
- name: Fulfillment
103
- summary: 'The process of completing an order and delivering it to the customer.'
104
- description: |
105
- Fulfillment encompasses all steps from order receipt to delivery, including:
106
-
107
- - Order processing and picking
108
- - Packaging and shipping
109
- - Delivery tracking and confirmation
110
- - Handling returns and exchanges
111
-
112
- Efficient fulfillment is key to customer satisfaction and operational efficiency.
113
- icon: PackageCheck
114
- - id: Return
115
- name: Return
116
- summary: 'The process of sending back enchanted goods to the seller for a refund or exchange.'
117
- description: |
118
- Returns management is an important aspect of customer service and inventory control. It involves:
119
-
120
- - Processing return requests and authorizations
121
- - Inspecting returned items for quality
122
- - Restocking or disposing of returned goods
123
- - Issuing refunds or exchanges
124
-
125
- A streamlined returns process enhances customer loyalty and operational efficiency.
126
- icon: PackageX
127
- ---
@@ -1,21 +0,0 @@
1
- ---
2
- id: Orders
3
- name: Orders
4
- version: 0.0.1
5
- summary: |
6
- Domain for everything shopping
7
- owners:
8
- - dboyne
9
- - full-stack
10
- services:
11
- - id: InventoryService
12
- version: 0.0.2
13
- badges:
14
- - content: New domain
15
- backgroundColor: blue
16
- textColor: blue
17
- ---
18
-
19
- ## Overview
20
-
21
- <NodeGraph />
@@ -1,50 +0,0 @@
1
- ---
2
- id: Orders
3
- name: Orders
4
- summary: Handles all operations related to customer orders, from creation to fulfillment
5
- version: 0.0.2
6
- owners:
7
- - dboyne
8
- services:
9
- - id: InventoryService
10
- version: 0.0.2
11
- - id: NotificationService
12
- version: 0.0.2
13
- - id: OrdersService
14
- version: 0.0.2
15
- badges:
16
- - content: New domain
17
- backgroundColor: blue
18
- textColor: blue
19
- ---
20
-
21
- ## Overview
22
-
23
- The Orders domain handles all operations related to customer orders, from creation to fulfillment. This documentation provides an overview of the events and services involved in the Orders domain, helping developers and stakeholders understand the event-driven architecture.
24
-
25
- <Admonition type="warning">
26
- Please ensure all services are updated to the latest version for compatibility and performance improvements.
27
- </Admonition>
28
-
29
- ## Bounded context
30
-
31
- <NodeGraph />
32
-
33
- ### Order example (sequence diagram)
34
-
35
- ```mermaid
36
- sequenceDiagram
37
- participant Customer
38
- participant OrdersService
39
- participant InventoryService
40
- participant NotificationService
41
-
42
- Customer->>OrdersService: Place Order
43
- OrdersService->>InventoryService: Check Inventory
44
- InventoryService-->>OrdersService: Inventory Available
45
- OrdersService->>InventoryService: Reserve Inventory
46
- OrdersService->>NotificationService: Send Order Confirmation
47
- NotificationService-->>Customer: Order Confirmation
48
- OrdersService->>Customer: Order Placed Successfully
49
- OrdersService->>InventoryService: Update Inventory
50
- ```
@@ -1,165 +0,0 @@
1
- ---
2
- id: Address
3
- name: Address
4
- version: 1.0.0
5
- identifier: addressId
6
- summary: Represents shipping and billing addresses for customers and orders.
7
- owners:
8
- - dboyne
9
- properties:
10
- - name: addressId
11
- type: UUID
12
- required: true
13
- description: Unique identifier for the address
14
- - name: customerId
15
- type: UUID
16
- required: false
17
- description: Customer this address belongs to
18
- references: Customer
19
- referencesIdentifier: customerId
20
- relationType: hasOne
21
- - name: type
22
- type: string
23
- required: true
24
- description: Type of address
25
- enum: ['billing', 'shipping', 'both']
26
- - name: firstName
27
- type: string
28
- required: true
29
- description: First name of the recipient
30
- - name: lastName
31
- type: string
32
- required: true
33
- description: Last name of the recipient
34
- - name: company
35
- type: string
36
- required: false
37
- description: Company name if applicable
38
- - name: addressLine1
39
- type: string
40
- required: true
41
- description: Primary address line (street address)
42
- - name: addressLine2
43
- type: string
44
- required: false
45
- description: Secondary address line (apartment, suite, etc.)
46
- - name: city
47
- type: string
48
- required: true
49
- description: City name
50
- - name: state
51
- type: string
52
- required: true
53
- description: State or province
54
- - name: postalCode
55
- type: string
56
- required: true
57
- description: Postal or ZIP code
58
- - name: country
59
- type: string
60
- required: true
61
- description: Country code (ISO 3166-1 alpha-2)
62
- - name: phone
63
- type: string
64
- required: false
65
- description: Phone number for delivery contact
66
- - name: isDefault
67
- type: boolean
68
- required: true
69
- description: Whether this is the default address for the customer
70
- - name: isValidated
71
- type: boolean
72
- required: true
73
- description: Whether the address has been validated
74
- - name: validationDetails
75
- type: object
76
- required: false
77
- description: Address validation details
78
- properties:
79
- - name: validatedAt
80
- type: DateTime
81
- description: When the address was validated
82
- - name: validationService
83
- type: string
84
- description: Service used for validation
85
- - name: confidence
86
- type: decimal
87
- description: Validation confidence score
88
- - name: geocoordinates
89
- type: object
90
- required: false
91
- description: Geographic coordinates for the address
92
- properties:
93
- - name: latitude
94
- type: decimal
95
- description: Latitude coordinate
96
- - name: longitude
97
- type: decimal
98
- description: Longitude coordinate
99
- - name: deliveryInstructions
100
- type: string
101
- required: false
102
- description: Special delivery instructions
103
- - name: orders
104
- type: array
105
- items:
106
- type: Order
107
- required: false
108
- description: Orders using this address
109
- references: Order
110
- referencesIdentifier: shippingAddress
111
- relationType: hasMany
112
- - name: payments
113
- type: array
114
- items:
115
- type: Payment
116
- required: false
117
- description: Payments using this as billing address
118
- references: Payment
119
- referencesIdentifier: billingAddress
120
- relationType: hasMany
121
- - name: createdAt
122
- type: DateTime
123
- required: true
124
- description: Date and time when the address was created
125
- - name: updatedAt
126
- type: DateTime
127
- required: false
128
- description: Date and time when the address was last updated
129
- ---
130
-
131
- ## Overview
132
-
133
- The Address entity stores shipping and billing addresses for customers, orders, and payments. It supports address validation, geocoding, and delivery instructions to ensure accurate order fulfillment.
134
-
135
- ### Entity Properties
136
-
137
- <EntityPropertiesTable />
138
-
139
- ## Relationships
140
-
141
- - **Customer:** An address can belong to one `Customer` (identified by `customerId`).
142
- - **Order:** An address can be used by multiple `Order` entities for shipping.
143
- - **Payment:** An address can be used by multiple `Payment` entities for billing.
144
-
145
- ## Address Types
146
-
147
- - **Billing:** Used for payment processing and invoicing
148
- - **Shipping:** Used for order delivery
149
- - **Both:** Can be used for both billing and shipping
150
-
151
- ## Examples
152
-
153
- - **Address #1:** John Doe's home address - default shipping and billing address.
154
- - **Address #2:** Corporate office address - billing only, validated with high confidence.
155
- - **Address #3:** Gift recipient address - shipping only, with special delivery instructions.
156
-
157
- ## Business Rules
158
-
159
- - Each customer can have only one default address per type
160
- - Addresses must be validated before being marked as default
161
- - International addresses require country-specific validation
162
- - Geocoordinates are automatically populated when available
163
- - Address changes should create new versions for audit trail
164
- - PO Box addresses may have shipping restrictions
165
- - Address validation improves delivery success rates
@@ -1,92 +0,0 @@
1
- ---
2
- id: Invoice
3
- name: Invoice
4
- version: 1.0.0
5
- identifier: invoiceId
6
- summary: Represents a bill issued to a customer, detailing charges for products or services.
7
- owners:
8
- - dboyne
9
-
10
- properties:
11
- - name: invoiceId
12
- type: UUID
13
- required: true
14
- description: Unique identifier for the invoice.
15
- - name: customerId
16
- type: UUID
17
- required: true
18
- description: Identifier of the customer being invoiced
19
- references: Customer
20
- relationType: hasOne
21
- - name: orderId # Optional, if invoice is directly tied to a single order
22
- type: UUID
23
- required: false
24
- description: Identifier of the associated order, if applicable.
25
- - name: subscriptionId # Optional, if invoice is for a subscription period
26
- type: UUID
27
- required: false
28
- description: Identifier of the associated subscription, if applicable.
29
- - name: invoiceNumber
30
- type: string
31
- required: true
32
- description: Human-readable, sequential identifier for the invoice (may have specific format).
33
- - name: issueDate
34
- type: Date
35
- required: true
36
- description: Date the invoice was generated and issued.
37
- - name: dueDate
38
- type: Date
39
- required: true
40
- description: Date by which the payment for the invoice is due.
41
- - name: totalAmount
42
- type: decimal
43
- required: true
44
- description: The total amount due on the invoice.
45
- - name: currency
46
- type: string # ISO 4217 code
47
- required: true
48
- description: Currency of the invoice amount.
49
- - name: status
50
- type: string # (e.g., Draft, Sent, Paid, Overdue, Void)
51
- required: true
52
- description: Current status of the invoice.
53
- - name: billingAddressId # Address used for this specific invoice
54
- type: UUID
55
- required: true
56
- description: Identifier for the billing address used on this invoice.
57
- - name: lineItems
58
- type: array
59
- items:
60
- type: InvoiceLineItem # Assuming a value object or separate entity for line items
61
- required: true
62
- description: List of individual items or services being charged on the invoice.
63
- - name: createdAt
64
- type: DateTime
65
- required: true
66
- description: Timestamp when the invoice record was created.
67
- - name: paidAt # Timestamp when payment was confirmed
68
- type: DateTime
69
- required: false
70
- description: Timestamp when the invoice was marked as paid.
71
- ---
72
-
73
- ## Overview
74
-
75
- The Invoice entity represents a formal request for payment issued by the business to a customer. It details the products, services, quantities, prices, taxes, and total amount due, along with payment terms.
76
-
77
- ### Entity Properties
78
-
79
- <EntityPropertiesTable />
80
-
81
- ## Relationships
82
-
83
- - **Customer:** An invoice is issued to one `Customer`.
84
- - **Order/Subscription:** An invoice may be related to one or more `Order`s or a specific `Subscription` period.
85
- - **Payment:** An invoice is settled by one or more `Payment` transactions.
86
- - **InvoiceLineItem:** An invoice contains multiple `InvoiceLineItem`s detailing the charges.
87
- - **BillingProfile:** Invoice generation often uses details from the customer's `BillingProfile`.
88
-
89
- ## Examples
90
-
91
- - Invoice #INV-00123 issued to Jane Doe for her monthly subscription renewal, due in 15 days.
92
- - Invoice #INV-00124 issued to Acme Corp for consulting services rendered in the previous month, status Paid.
@@ -1,140 +0,0 @@
1
- ---
2
- id: Payment
3
- name: Payment
4
- version: 1.0.0
5
- identifier: paymentId
6
- aggregateRoot: true
7
- summary: Represents payment transactions for orders in the e-commerce system.
8
- owners:
9
- - dboyne
10
- properties:
11
- - name: paymentId
12
- type: UUID
13
- required: true
14
- description: Unique identifier for the payment
15
- - name: orderId
16
- type: UUID
17
- required: true
18
- description: Order this payment is associated with
19
- references: Order
20
- referencesIdentifier: orderId
21
- relationType: hasOne
22
- - name: customerId
23
- type: UUID
24
- required: true
25
- description: Customer who made the payment
26
- references: Customer
27
- referencesIdentifier: customerId
28
- relationType: hasOne
29
- - name: amount
30
- type: decimal
31
- required: true
32
- description: Payment amount
33
- - name: currency
34
- type: string
35
- required: true
36
- description: Currency code (e.g., USD, EUR, GBP)
37
- - name: paymentMethod
38
- type: string
39
- required: true
40
- description: Payment method used
41
- enum: ['credit_card', 'debit_card', 'paypal', 'stripe', 'bank_transfer', 'apple_pay', 'google_pay']
42
- - name: paymentMethodDetails
43
- type: object
44
- required: false
45
- description: Additional payment method specific details
46
- properties:
47
- - name: cardLast4
48
- type: string
49
- description: Last 4 digits of card number
50
- - name: cardType
51
- type: string
52
- description: Card type (Visa, MasterCard, etc.)
53
- - name: expiryMonth
54
- type: integer
55
- description: Card expiry month
56
- - name: expiryYear
57
- type: integer
58
- description: Card expiry year
59
- - name: status
60
- type: string
61
- required: true
62
- description: Current payment status
63
- enum: ['pending', 'processing', 'completed', 'failed', 'cancelled', 'refunded', 'partially_refunded']
64
- - name: transactionId
65
- type: string
66
- required: false
67
- description: External payment processor transaction ID
68
- - name: gatewayResponse
69
- type: object
70
- required: false
71
- description: Raw response from payment gateway
72
- - name: billingAddress
73
- type: Address
74
- required: true
75
- description: Billing address for the payment
76
- references: Address
77
- referencesIdentifier: addressId
78
- relationType: hasOne
79
- - name: processedAt
80
- type: DateTime
81
- required: false
82
- description: Date and time when payment was processed
83
- - name: failureReason
84
- type: string
85
- required: false
86
- description: Reason for payment failure if applicable
87
- - name: refunds
88
- type: array
89
- items:
90
- type: PaymentRefund
91
- required: false
92
- description: Refunds associated with this payment
93
- - name: createdAt
94
- type: DateTime
95
- required: true
96
- description: Date and time when the payment record was created
97
- - name: updatedAt
98
- type: DateTime
99
- required: false
100
- description: Date and time when the payment record was last updated
101
- ---
102
-
103
- ## Overview
104
-
105
- The Payment entity manages all payment transactions in the e-commerce system. It tracks payment details, status, and relationships with orders and customers, supporting various payment methods and refund scenarios.
106
-
107
- ### Entity Properties
108
-
109
- <EntityPropertiesTable />
110
-
111
- ## Relationships
112
-
113
- - **Order:** Each payment belongs to one `Order` (identified by `orderId`).
114
- - **Customer:** Each payment is made by one `Customer` (identified by `customerId`).
115
- - **Address:** Each payment has a billing `Address` (identified by `billingAddress`).
116
- - **PaymentRefund:** A payment can have multiple `PaymentRefund` entities for partial or full refunds.
117
-
118
- ## Payment States
119
-
120
- ```
121
- pending → processing → completed
122
- ↓ ↓ ↓
123
- cancelled failed refunded/partially_refunded
124
- ```
125
-
126
- ## Examples
127
-
128
- - **Payment #1:** $299.99 credit card payment for Order #12345, completed successfully.
129
- - **Payment #2:** $150.00 PayPal payment for Order #67890, failed due to insufficient funds.
130
- - **Payment #3:** $500.00 bank transfer, completed with $50.00 partial refund.
131
-
132
- ## Business Rules
133
-
134
- - Payment amount must match the order total
135
- - Payment status transitions must follow valid state machine
136
- - Failed payments should include failure reason
137
- - Completed payments cannot be cancelled
138
- - Refunds cannot exceed the original payment amount
139
- - Payment method details are encrypted and PCI compliant
140
- - Transaction IDs from payment gateways must be stored for reconciliation