@openlup/platform 0.26.0 → 0.27.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 (520) hide show
  1. package/CHANGELOG.md +138 -218
  2. package/README.md +229 -16
  3. package/dist/commerce/adapters/managed/commerceOmsControlPlane.d.ts +3 -0
  4. package/dist/commerce/adapters/managed/commerceOmsControlPlane.js +71 -0
  5. package/dist/commerce/adapters/managed/commerceOmsMutations.d.ts +10 -0
  6. package/dist/commerce/adapters/managed/commerceOmsMutations.js +119 -0
  7. package/dist/commerce/adapters/managed/commerceOmsPort.d.ts +28 -0
  8. package/dist/commerce/adapters/managed/commerceOmsPort.js +101 -0
  9. package/dist/commerce/adapters/managed/oms/accounting.d.ts +3 -0
  10. package/dist/commerce/adapters/managed/oms/accounting.js +13 -0
  11. package/dist/commerce/adapters/managed/oms/fulfillmentReads.d.ts +17 -0
  12. package/dist/commerce/adapters/managed/oms/fulfillmentReads.js +81 -0
  13. package/dist/commerce/adapters/managed/oms/inboundEvents.d.ts +9 -0
  14. package/dist/commerce/adapters/managed/oms/inboundEvents.js +40 -0
  15. package/dist/commerce/adapters/managed/oms/outboxEvents.d.ts +2 -0
  16. package/dist/commerce/adapters/managed/oms/outboxEvents.js +23 -0
  17. package/dist/commerce/adapters/managed/oms/paymentAttempts.d.ts +3 -0
  18. package/dist/commerce/adapters/managed/oms/paymentAttempts.js +15 -0
  19. package/dist/commerce/adapters/managed/oms/queueSelection.d.ts +12 -0
  20. package/dist/commerce/adapters/managed/oms/queueSelection.js +109 -0
  21. package/dist/commerce/adapters/managed/oms/readProjections.d.ts +18 -0
  22. package/dist/commerce/adapters/managed/oms/readProjections.js +13 -0
  23. package/dist/commerce/adapters/managed/oms/readQueries.d.ts +16 -0
  24. package/dist/commerce/adapters/managed/oms/readQueries.js +276 -0
  25. package/dist/commerce/adapters/managed/oms/types.d.ts +2 -0
  26. package/dist/commerce/adapters/managed/oms/types.js +7 -0
  27. package/dist/commerce/checkoutCommandSchemas.d.ts +89 -0
  28. package/dist/commerce/checkoutCommandSchemas.js +70 -0
  29. package/dist/commerce/checkoutHelpers.d.ts +21 -0
  30. package/dist/commerce/checkoutHelpers.js +29 -0
  31. package/dist/commerce/checkoutResumeSchemas.d.ts +158 -0
  32. package/dist/commerce/checkoutResumeSchemas.js +145 -0
  33. package/dist/commerce/checkoutSchemas.d.ts +158 -0
  34. package/dist/commerce/checkoutSchemas.js +161 -0
  35. package/dist/commerce/commerceReturnsPort.d.ts +97 -0
  36. package/dist/commerce/commerceReturnsPort.js +39 -0
  37. package/dist/commerce/configuratorIntentPersistenceSchemas.d.ts +20 -0
  38. package/dist/commerce/configuratorIntentPersistenceSchemas.js +21 -0
  39. package/dist/commerce/configuratorIntentSchemas.d.ts +63 -0
  40. package/dist/commerce/configuratorIntentSchemas.js +43 -0
  41. package/dist/commerce/contractPrimitives.d.ts +50 -0
  42. package/dist/commerce/contractPrimitives.js +25 -0
  43. package/dist/commerce/contracts/availability.d.ts +23 -0
  44. package/dist/commerce/contracts/availability.js +1 -0
  45. package/dist/commerce/contracts/fulfillmentRecovery.d.ts +25 -0
  46. package/dist/commerce/contracts/fulfillmentRecovery.js +1 -0
  47. package/dist/commerce/contracts/index.d.ts +13 -0
  48. package/dist/commerce/contracts/index.js +1 -0
  49. package/dist/commerce/contracts/intent.d.ts +86 -0
  50. package/dist/commerce/contracts/intent.js +1 -0
  51. package/dist/commerce/contracts/omsTypes.d.ts +1216 -0
  52. package/dist/commerce/contracts/omsTypes.js +1 -0
  53. package/dist/commerce/contracts/order.d.ts +39 -0
  54. package/dist/commerce/contracts/order.js +1 -0
  55. package/dist/commerce/contracts/orderMoney.d.ts +52 -0
  56. package/dist/commerce/contracts/orderMoney.js +1 -0
  57. package/dist/commerce/contracts/ports.d.ts +113 -0
  58. package/dist/commerce/contracts/ports.js +1 -0
  59. package/dist/commerce/contracts/recovery.d.ts +11 -0
  60. package/dist/commerce/contracts/recovery.js +1 -0
  61. package/dist/commerce/contracts/runtimePorts.d.ts +196 -0
  62. package/dist/commerce/contracts/runtimePorts.js +1 -0
  63. package/dist/commerce/contracts/state.d.ts +26 -0
  64. package/dist/commerce/contracts/state.js +43 -0
  65. package/dist/commerce/customerDefaultsSnapshotSchemas.d.ts +51 -0
  66. package/dist/commerce/customerDefaultsSnapshotSchemas.js +106 -0
  67. package/dist/commerce/errors.d.ts +18 -0
  68. package/dist/commerce/errors.js +36 -0
  69. package/dist/commerce/fulfillmentEligibility.d.ts +6 -0
  70. package/dist/commerce/fulfillmentEligibility.js +31 -0
  71. package/dist/commerce/index.d.ts +72 -0
  72. package/dist/commerce/index.js +67 -0
  73. package/dist/commerce/model/customerFulfillmentRecovery.d.ts +40 -0
  74. package/dist/commerce/model/customerFulfillmentRecovery.js +144 -0
  75. package/dist/commerce/model/fulfillmentCancellationEligibility.d.ts +7 -0
  76. package/dist/commerce/model/fulfillmentCancellationEligibility.js +9 -0
  77. package/dist/commerce/model/omsAccountingVisibility.d.ts +12 -0
  78. package/dist/commerce/model/omsAccountingVisibility.js +118 -0
  79. package/dist/commerce/model/omsBillingInvoiceBuyer.d.ts +2 -0
  80. package/dist/commerce/model/omsBillingInvoiceBuyer.js +15 -0
  81. package/dist/commerce/model/omsCurrency.d.ts +4 -0
  82. package/dist/commerce/model/omsCurrency.js +5 -0
  83. package/dist/commerce/model/omsFulfillmentDebug.d.ts +20 -0
  84. package/dist/commerce/model/omsFulfillmentDebug.js +122 -0
  85. package/dist/commerce/model/omsFulfillmentSummary.d.ts +16 -0
  86. package/dist/commerce/model/omsFulfillmentSummary.js +189 -0
  87. package/dist/commerce/model/omsListTotals.d.ts +13 -0
  88. package/dist/commerce/model/omsListTotals.js +32 -0
  89. package/dist/commerce/model/omsOperationalLadder.d.ts +51 -0
  90. package/dist/commerce/model/omsOperationalLadder.js +158 -0
  91. package/dist/commerce/model/omsOrderLineMoney.d.ts +4 -0
  92. package/dist/commerce/model/omsOrderLineMoney.js +25 -0
  93. package/dist/commerce/model/omsPaymentMethodSummary.d.ts +5 -0
  94. package/dist/commerce/model/omsPaymentMethodSummary.js +11 -0
  95. package/dist/commerce/model/omsReadModel.d.ts +43 -0
  96. package/dist/commerce/model/omsReadModel.js +211 -0
  97. package/dist/commerce/model/omsReadModelCommunication.d.ts +3 -0
  98. package/dist/commerce/model/omsReadModelCommunication.js +29 -0
  99. package/dist/commerce/model/omsReadModelHelpers.d.ts +125 -0
  100. package/dist/commerce/model/omsReadModelHelpers.js +212 -0
  101. package/dist/commerce/model/omsReadModelList.d.ts +33 -0
  102. package/dist/commerce/model/omsReadModelList.js +50 -0
  103. package/dist/commerce/model/omsReadModelListSummary.d.ts +3 -0
  104. package/dist/commerce/model/omsReadModelListSummary.js +13 -0
  105. package/dist/commerce/model/omsReadModelPricing.d.ts +5 -0
  106. package/dist/commerce/model/omsReadModelPricing.js +36 -0
  107. package/dist/commerce/model/omsReadModelProjections.d.ts +1 -0
  108. package/dist/commerce/model/omsReadModelProjections.js +1 -0
  109. package/dist/commerce/model/omsReadModelRowCore.d.ts +79 -0
  110. package/dist/commerce/model/omsReadModelRowCore.js +149 -0
  111. package/dist/commerce/model/omsReadModelRows.d.ts +1 -0
  112. package/dist/commerce/model/omsReadModelRows.js +6 -0
  113. package/dist/commerce/offerAvailability.d.ts +18 -0
  114. package/dist/commerce/offerAvailability.js +53 -0
  115. package/dist/commerce/offerAvailabilitySchemas.d.ts +43 -0
  116. package/dist/commerce/offerAvailabilitySchemas.js +42 -0
  117. package/dist/commerce/offerEvidenceSchemas.d.ts +7 -0
  118. package/dist/commerce/offerEvidenceSchemas.js +13 -0
  119. package/dist/commerce/oms/omsContractBase.d.ts +130 -0
  120. package/dist/commerce/oms/omsContractBase.js +86 -0
  121. package/dist/commerce/oms/omsContractReadAuxSchemas.d.ts +222 -0
  122. package/dist/commerce/oms/omsContractReadAuxSchemas.js +123 -0
  123. package/dist/commerce/oms/omsContractReadSchemas.d.ts +2266 -0
  124. package/dist/commerce/oms/omsContractReadSchemas.js +277 -0
  125. package/dist/commerce/oms/omsContractRequests.d.ts +196 -0
  126. package/dist/commerce/oms/omsContractRequests.js +118 -0
  127. package/dist/commerce/oms/omsContracts.d.ts +5 -0
  128. package/dist/commerce/oms/omsContracts.js +4 -0
  129. package/dist/commerce/oms/omsControlPlane.d.ts +275 -0
  130. package/dist/commerce/oms/omsControlPlane.js +72 -0
  131. package/dist/commerce/oms/omsFulfillmentContractSchemas.d.ts +203 -0
  132. package/dist/commerce/oms/omsFulfillmentContractSchemas.js +94 -0
  133. package/dist/commerce/oms/omsFulfillmentDebugSchemas.d.ts +69 -0
  134. package/dist/commerce/oms/omsFulfillmentDebugSchemas.js +33 -0
  135. package/dist/commerce/oms/omsFulfillmentHealthSchemas.d.ts +67 -0
  136. package/dist/commerce/oms/omsFulfillmentHealthSchemas.js +44 -0
  137. package/dist/commerce/oms/omsPorts.d.ts +84 -0
  138. package/dist/commerce/oms/omsPorts.js +148 -0
  139. package/dist/commerce/oms/omsPrimitives.d.ts +5 -0
  140. package/dist/commerce/oms/omsPrimitives.js +3 -0
  141. package/dist/commerce/oms/omsProviderEvidenceSchemas.d.ts +15 -0
  142. package/dist/commerce/oms/omsProviderEvidenceSchemas.js +12 -0
  143. package/dist/commerce/orderDraftErrors.d.ts +13 -0
  144. package/dist/commerce/orderDraftErrors.js +20 -0
  145. package/dist/commerce/orderEmailEligibility.d.ts +54 -0
  146. package/dist/commerce/orderEmailEligibility.js +123 -0
  147. package/dist/commerce/orderEmailLines.d.ts +12 -0
  148. package/dist/commerce/orderEmailLines.js +8 -0
  149. package/dist/commerce/orderFeedbackContracts.d.ts +41 -0
  150. package/dist/commerce/orderFeedbackContracts.js +33 -0
  151. package/dist/commerce/orderMoney.d.ts +6 -0
  152. package/dist/commerce/orderMoney.js +168 -0
  153. package/dist/commerce/orderReviewContracts.d.ts +475 -0
  154. package/dist/commerce/orderReviewContracts.js +94 -0
  155. package/dist/commerce/orderReviewPorts.d.ts +140 -0
  156. package/dist/commerce/orderReviewPorts.js +1 -0
  157. package/dist/commerce/outboxDispatchContracts.d.ts +30 -0
  158. package/dist/commerce/outboxDispatchContracts.js +1 -0
  159. package/dist/commerce/outboxEventSchemas.d.ts +162 -0
  160. package/dist/commerce/outboxEventSchemas.js +164 -0
  161. package/dist/commerce/outboxOrderDraftEmailPorts.d.ts +207 -0
  162. package/dist/commerce/outboxOrderDraftEmailPorts.js +12 -0
  163. package/dist/commerce/paymentContinuation.d.ts +4 -0
  164. package/dist/commerce/paymentContinuation.js +4 -0
  165. package/dist/commerce/ports.d.ts +8 -0
  166. package/dist/commerce/ports.js +1 -0
  167. package/dist/commerce/recoveryDestination.d.ts +3 -0
  168. package/dist/commerce/recoveryDestination.js +17 -0
  169. package/dist/commerce/runtimeErrors.d.ts +8 -0
  170. package/dist/commerce/runtimeErrors.js +16 -0
  171. package/dist/commerce/salesChannelEnvelope.d.ts +20 -0
  172. package/dist/commerce/salesChannelEnvelope.js +7 -0
  173. package/dist/commerce/schemas.d.ts +174 -0
  174. package/dist/commerce/schemas.js +84 -0
  175. package/dist/commerce/server/checkoutCompensation.d.ts +21 -0
  176. package/dist/commerce/server/checkoutCompensation.js +32 -0
  177. package/dist/commerce/server/checkoutConflictClassifiers.d.ts +17 -0
  178. package/dist/commerce/server/checkoutConflictClassifiers.js +38 -0
  179. package/dist/commerce/server/checkoutExpiredRecoveryPolicy.d.ts +38 -0
  180. package/dist/commerce/server/checkoutExpiredRecoveryPolicy.js +85 -0
  181. package/dist/commerce/server/checkoutInvoiceBuyerSnapshot.d.ts +22 -0
  182. package/dist/commerce/server/checkoutInvoiceBuyerSnapshot.js +30 -0
  183. package/dist/commerce/server/checkoutOfferPolicyPort.d.ts +33 -0
  184. package/dist/commerce/server/checkoutOfferPolicyPort.js +49 -0
  185. package/dist/commerce/server/checkoutPaymentContinuationCredential.d.ts +58 -0
  186. package/dist/commerce/server/checkoutPaymentContinuationCredential.js +154 -0
  187. package/dist/commerce/server/checkoutQuoteTypes.d.ts +19 -0
  188. package/dist/commerce/server/checkoutQuoteTypes.js +1 -0
  189. package/dist/commerce/server/checkoutRecoveryOrderPort.d.ts +42 -0
  190. package/dist/commerce/server/checkoutRecoveryOrderPort.js +1 -0
  191. package/dist/commerce/server/checkoutRecoveryToken.d.ts +40 -0
  192. package/dist/commerce/server/checkoutRecoveryToken.js +26 -0
  193. package/dist/commerce/server/checkoutRefusalContinuation.d.ts +24 -0
  194. package/dist/commerce/server/checkoutRefusalContinuation.js +18 -0
  195. package/dist/commerce/server/checkoutRuntimeTypes.d.ts +81 -0
  196. package/dist/commerce/server/checkoutRuntimeTypes.js +1 -0
  197. package/dist/commerce/server/commerceCheckoutCommandExecution.d.ts +60 -0
  198. package/dist/commerce/server/commerceCheckoutCommandExecution.js +136 -0
  199. package/dist/commerce/server/commerceCheckoutCompensation.d.ts +26 -0
  200. package/dist/commerce/server/commerceCheckoutCompensation.js +46 -0
  201. package/dist/commerce/server/commerceCheckoutContinuationTerms.d.ts +50 -0
  202. package/dist/commerce/server/commerceCheckoutContinuationTerms.js +66 -0
  203. package/dist/commerce/server/commerceCheckoutCustomerDefaults.d.ts +18 -0
  204. package/dist/commerce/server/commerceCheckoutCustomerDefaults.js +17 -0
  205. package/dist/commerce/server/commerceCheckoutFailureHandler.d.ts +51 -0
  206. package/dist/commerce/server/commerceCheckoutFailureHandler.js +90 -0
  207. package/dist/commerce/server/commerceCheckoutHandler.d.ts +213 -0
  208. package/dist/commerce/server/commerceCheckoutHandler.js +196 -0
  209. package/dist/commerce/server/commerceCheckoutHandlerAdmission.d.ts +58 -0
  210. package/dist/commerce/server/commerceCheckoutHandlerAdmission.js +94 -0
  211. package/dist/commerce/server/commerceCheckoutHandlerHelpers.d.ts +67 -0
  212. package/dist/commerce/server/commerceCheckoutHandlerHelpers.js +155 -0
  213. package/dist/commerce/server/commerceCheckoutOrchestrationError.d.ts +9 -0
  214. package/dist/commerce/server/commerceCheckoutOrchestrationError.js +14 -0
  215. package/dist/commerce/server/commerceCheckoutPromotionPriceChange.d.ts +47 -0
  216. package/dist/commerce/server/commerceCheckoutPromotionPriceChange.js +43 -0
  217. package/dist/commerce/server/commerceCheckoutProviderPayment.d.ts +34 -0
  218. package/dist/commerce/server/commerceCheckoutProviderPayment.js +37 -0
  219. package/dist/commerce/server/commerceCheckoutQuoteGuard.d.ts +62 -0
  220. package/dist/commerce/server/commerceCheckoutQuoteGuard.js +106 -0
  221. package/dist/commerce/server/commerceCheckoutResume.d.ts +29 -0
  222. package/dist/commerce/server/commerceCheckoutResume.js +81 -0
  223. package/dist/commerce/server/commerceCheckoutResumeGuard.d.ts +54 -0
  224. package/dist/commerce/server/commerceCheckoutResumeGuard.js +138 -0
  225. package/dist/commerce/server/commerceCheckoutSavedPaymentMethod.d.ts +39 -0
  226. package/dist/commerce/server/commerceCheckoutSavedPaymentMethod.js +44 -0
  227. package/dist/commerce/server/commerceCheckoutStartRuntimeFailure.d.ts +7 -0
  228. package/dist/commerce/server/commerceCheckoutStartRuntimeFailure.js +39 -0
  229. package/dist/commerce/server/commerceCheckoutTiming.d.ts +8 -0
  230. package/dist/commerce/server/commerceCheckoutTiming.js +31 -0
  231. package/dist/commerce/server/commerceDiagnostics.d.ts +6 -0
  232. package/dist/commerce/server/commerceDiagnostics.js +31 -0
  233. package/dist/commerce/server/commerceOmsCancelOrderHandler.d.ts +7 -0
  234. package/dist/commerce/server/commerceOmsCancelOrderHandler.js +22 -0
  235. package/dist/commerce/server/commerceOmsControlPlaneHandlers.d.ts +18 -0
  236. package/dist/commerce/server/commerceOmsControlPlaneHandlers.js +60 -0
  237. package/dist/commerce/server/commerceOmsHandlers.d.ts +47 -0
  238. package/dist/commerce/server/commerceOmsHandlers.js +176 -0
  239. package/dist/commerce/server/commerceOmsMarkRefundedHandler.d.ts +7 -0
  240. package/dist/commerce/server/commerceOmsMarkRefundedHandler.js +19 -0
  241. package/dist/commerce/server/commerceOrderDraft.d.ts +24 -0
  242. package/dist/commerce/server/commerceOrderDraft.js +92 -0
  243. package/dist/commerce/server/commercePaidOrderOrchestration.d.ts +131 -0
  244. package/dist/commerce/server/commercePaidOrderOrchestration.js +140 -0
  245. package/dist/commerce/server/commerceProviderAttemptFailure.d.ts +133 -0
  246. package/dist/commerce/server/commerceProviderAttemptFailure.js +175 -0
  247. package/dist/commerce/server/commerceReturnsHandlers.d.ts +41 -0
  248. package/dist/commerce/server/commerceReturnsHandlers.js +100 -0
  249. package/dist/commerce/server/commerceRuntimePort.d.ts +16 -0
  250. package/dist/commerce/server/commerceRuntimePort.js +57 -0
  251. package/dist/commerce/server/commerceRuntimeService.d.ts +98 -0
  252. package/dist/commerce/server/commerceRuntimeService.js +186 -0
  253. package/dist/commerce/server/commerceRuntimeStartResponse.d.ts +37 -0
  254. package/dist/commerce/server/commerceRuntimeStartResponse.js +56 -0
  255. package/dist/commerce/server/commerceStarterOfferGuard.d.ts +55 -0
  256. package/dist/commerce/server/commerceStarterOfferGuard.js +128 -0
  257. package/dist/commerce/server/configuratorIntentPersistence.d.ts +47 -0
  258. package/dist/commerce/server/configuratorIntentPersistence.js +85 -0
  259. package/dist/commerce/server/configuratorIntentPersistenceHandler.d.ts +14 -0
  260. package/dist/commerce/server/configuratorIntentPersistenceHandler.js +42 -0
  261. package/dist/commerce/server/emailRuntime.d.ts +47 -0
  262. package/dist/commerce/server/emailRuntime.js +1 -0
  263. package/dist/commerce/server/handlerSupport.d.ts +68 -0
  264. package/dist/commerce/server/handlerSupport.js +1 -0
  265. package/dist/commerce/server/index.d.ts +178 -0
  266. package/dist/commerce/server/index.js +127 -0
  267. package/dist/commerce/server/offerAvailability.d.ts +21 -0
  268. package/dist/commerce/server/offerAvailability.js +163 -0
  269. package/dist/commerce/server/orderDraftRpcPayload.d.ts +20 -0
  270. package/dist/commerce/server/orderDraftRpcPayload.js +21 -0
  271. package/dist/commerce/server/orderFeedbackSubmit.d.ts +20 -0
  272. package/dist/commerce/server/orderFeedbackSubmit.js +16 -0
  273. package/dist/commerce/server/orderFeedbackTokenCheck.d.ts +17 -0
  274. package/dist/commerce/server/orderFeedbackTokenCheck.js +14 -0
  275. package/dist/commerce/server/orderReviewAdminHandlers.d.ts +47 -0
  276. package/dist/commerce/server/orderReviewAdminHandlers.js +41 -0
  277. package/dist/commerce/server/orderReviewHandlers.d.ts +114 -0
  278. package/dist/commerce/server/orderReviewHandlers.js +42 -0
  279. package/dist/commerce/server/orderReviewLifecycle.d.ts +10 -0
  280. package/dist/commerce/server/orderReviewLifecycle.js +121 -0
  281. package/dist/commerce/server/orderReviewMedia.d.ts +11 -0
  282. package/dist/commerce/server/orderReviewMedia.js +172 -0
  283. package/dist/commerce/server/orderReviewRawUploadHandler.d.ts +40 -0
  284. package/dist/commerce/server/orderReviewRawUploadHandler.js +316 -0
  285. package/dist/commerce/server/outboxCheckoutExpiredEmailHandler.d.ts +14 -0
  286. package/dist/commerce/server/outboxCheckoutExpiredEmailHandler.js +57 -0
  287. package/dist/commerce/server/outboxCheckoutRecoveryEmailHandler.d.ts +13 -0
  288. package/dist/commerce/server/outboxCheckoutRecoveryEmailHandler.js +150 -0
  289. package/dist/commerce/server/outboxDispatchRegistry.d.ts +46 -0
  290. package/dist/commerce/server/outboxDispatchRegistry.js +184 -0
  291. package/dist/commerce/server/outboxDispatchRegistryComposition.d.ts +6 -0
  292. package/dist/commerce/server/outboxDispatchRegistryComposition.js +23 -0
  293. package/dist/commerce/server/outboxOrderDraftEmailHandler.d.ts +14 -0
  294. package/dist/commerce/server/outboxOrderDraftEmailHandler.js +130 -0
  295. package/dist/commerce/server/outboxOrderPaidEmailHandler.d.ts +21 -0
  296. package/dist/commerce/server/outboxOrderPaidEmailHandler.js +93 -0
  297. package/dist/commerce/server/outboxOrderPaidFulfillmentHandler.d.ts +3 -0
  298. package/dist/commerce/server/outboxOrderPaidFulfillmentHandler.js +1 -0
  299. package/dist/commerce/server/outboxOrderPaidFulfillmentPorts.d.ts +3 -0
  300. package/dist/commerce/server/outboxOrderPaidFulfillmentPorts.js +1 -0
  301. package/dist/commerce/server/outboxOrderRefundedEmailHandler.d.ts +13 -0
  302. package/dist/commerce/server/outboxOrderRefundedEmailHandler.js +42 -0
  303. package/dist/commerce/server/outboxPaymentFailedEmailHandler.d.ts +14 -0
  304. package/dist/commerce/server/outboxPaymentFailedEmailHandler.js +65 -0
  305. package/dist/commerce/server/outboxReturnEmailHandlers.d.ts +26 -0
  306. package/dist/commerce/server/outboxReturnEmailHandlers.js +53 -0
  307. package/dist/commerce/server/outboxShipmentDeliveredEmailHandler.d.ts +17 -0
  308. package/dist/commerce/server/outboxShipmentDeliveredEmailHandler.js +52 -0
  309. package/dist/commerce/server/outboxShipmentDispatchedEmailHandler.d.ts +13 -0
  310. package/dist/commerce/server/outboxShipmentDispatchedEmailHandler.js +87 -0
  311. package/dist/commerce/server/outboxShipmentExceptionEmailHandler.d.ts +13 -0
  312. package/dist/commerce/server/outboxShipmentExceptionEmailHandler.js +46 -0
  313. package/dist/commerce/server/referenceCheckoutHandler.d.ts +48 -0
  314. package/dist/commerce/server/referenceCheckoutHandler.js +68 -0
  315. package/dist/commerce/server/reservationSweepPort.d.ts +31 -0
  316. package/dist/commerce/server/reservationSweepPort.js +45 -0
  317. package/dist/commerce/server/starterTermsPort.d.ts +22 -0
  318. package/dist/commerce/server/starterTermsPort.js +1 -0
  319. package/dist/commerce/server/supabaseCommerceReturnsPort.d.ts +13 -0
  320. package/dist/commerce/server/supabaseCommerceReturnsPort.js +56 -0
  321. package/dist/communications/consentPurposeRegistry.d.ts +1 -1
  322. package/dist/communications/newsletterIntegrationContracts.d.ts +5 -5
  323. package/dist/composition/commerceContribution.d.ts +21 -0
  324. package/dist/composition/commerceContribution.js +27 -0
  325. package/dist/composition/index.d.ts +1 -0
  326. package/dist/composition/index.js +1 -0
  327. package/dist/fulfillment/handlerSchemas.d.ts +41 -41
  328. package/dist/fulfillment/index.d.ts +1 -1
  329. package/dist/fulfillment/index.js +1 -1
  330. package/dist/fulfillment/paidHandoff.d.ts +12 -1
  331. package/dist/fulfillment/paidHandoff.js +2 -2
  332. package/dist/fulfillment/providerDispatchWorker.d.ts +4 -4
  333. package/dist/identity/customerContracts.d.ts +2 -2
  334. package/dist/inventory/bindings.d.ts +3 -0
  335. package/dist/inventory/bindings.js +10 -4
  336. package/dist/inventory/index.d.ts +1 -0
  337. package/dist/inventory/index.js +1 -0
  338. package/dist/inventory/managedStockAvailability.d.ts +15 -0
  339. package/dist/inventory/managedStockAvailability.js +16 -0
  340. package/dist/inventory/postgresStockAvailability.js +2 -25
  341. package/dist/inventory/schemas.d.ts +1 -1
  342. package/dist/inventory/stockReadResponse.d.ts +4 -0
  343. package/dist/inventory/stockReadResponse.js +27 -0
  344. package/dist/pricing/browser/index.d.ts +6 -0
  345. package/dist/pricing/browser/index.js +6 -0
  346. package/dist/promotions/adminPromotionsContracts.d.ts +2 -2
  347. package/dist/subscriptions/index.d.ts +3 -2
  348. package/dist/subscriptions/index.js +3 -2
  349. package/package.json +22 -2
  350. package/release-gates.json +63 -8
  351. package/src/commerce/adapters/managed/commerceOmsControlPlane.ts +80 -0
  352. package/src/commerce/adapters/managed/commerceOmsMutations.ts +145 -0
  353. package/src/commerce/adapters/managed/commerceOmsPort.ts +158 -0
  354. package/src/commerce/adapters/managed/oms/accounting.ts +18 -0
  355. package/src/commerce/adapters/managed/oms/fulfillmentReads.ts +82 -0
  356. package/src/commerce/adapters/managed/oms/inboundEvents.ts +45 -0
  357. package/src/commerce/adapters/managed/oms/outboxEvents.ts +30 -0
  358. package/src/commerce/adapters/managed/oms/paymentAttempts.ts +19 -0
  359. package/src/commerce/adapters/managed/oms/queueSelection.ts +132 -0
  360. package/src/commerce/adapters/managed/oms/readProjections.ts +22 -0
  361. package/src/commerce/adapters/managed/oms/readQueries.ts +292 -0
  362. package/src/commerce/adapters/managed/oms/types.ts +9 -0
  363. package/src/commerce/checkoutCommandSchemas.ts +93 -0
  364. package/src/commerce/checkoutHelpers.ts +47 -0
  365. package/src/commerce/checkoutResumeSchemas.ts +164 -0
  366. package/src/commerce/checkoutSchemas.ts +182 -0
  367. package/src/commerce/commerceReturnsPort.ts +67 -0
  368. package/src/commerce/configuratorIntentPersistenceSchemas.ts +26 -0
  369. package/src/commerce/configuratorIntentSchemas.ts +47 -0
  370. package/src/commerce/contractPrimitives.ts +30 -0
  371. package/src/commerce/contracts/availability.ts +21 -0
  372. package/src/commerce/contracts/fulfillmentRecovery.ts +26 -0
  373. package/src/commerce/contracts/index.ts +17 -0
  374. package/src/commerce/contracts/intent.ts +58 -0
  375. package/src/commerce/contracts/omsTypes.ts +1217 -0
  376. package/src/commerce/contracts/order.ts +44 -0
  377. package/src/commerce/contracts/orderMoney.ts +75 -0
  378. package/src/commerce/contracts/ports.ts +124 -0
  379. package/src/commerce/contracts/recovery.ts +24 -0
  380. package/src/commerce/contracts/runtimePorts.ts +201 -0
  381. package/src/commerce/contracts/state.ts +64 -0
  382. package/src/commerce/customerDefaultsSnapshotSchemas.ts +117 -0
  383. package/src/commerce/errors.ts +53 -0
  384. package/src/commerce/fulfillmentEligibility.ts +32 -0
  385. package/src/commerce/index.ts +82 -0
  386. package/src/commerce/model/customerFulfillmentRecovery.ts +185 -0
  387. package/src/commerce/model/fulfillmentCancellationEligibility.ts +18 -0
  388. package/src/commerce/model/omsAccountingVisibility.ts +135 -0
  389. package/src/commerce/model/omsBillingInvoiceBuyer.ts +20 -0
  390. package/src/commerce/model/omsCurrency.ts +8 -0
  391. package/src/commerce/model/omsFulfillmentDebug.ts +157 -0
  392. package/src/commerce/model/omsFulfillmentSummary.ts +225 -0
  393. package/src/commerce/model/omsListTotals.ts +38 -0
  394. package/src/commerce/model/omsOperationalLadder.ts +181 -0
  395. package/src/commerce/model/omsOrderLineMoney.ts +34 -0
  396. package/src/commerce/model/omsPaymentMethodSummary.ts +19 -0
  397. package/src/commerce/model/omsReadModel.ts +302 -0
  398. package/src/commerce/model/omsReadModelCommunication.ts +32 -0
  399. package/src/commerce/model/omsReadModelHelpers.ts +279 -0
  400. package/src/commerce/model/omsReadModelList.ts +90 -0
  401. package/src/commerce/model/omsReadModelListSummary.ts +19 -0
  402. package/src/commerce/model/omsReadModelPricing.ts +57 -0
  403. package/src/commerce/model/omsReadModelProjections.ts +1 -0
  404. package/src/commerce/model/omsReadModelRowCore.ts +193 -0
  405. package/src/commerce/model/omsReadModelRows.ts +7 -0
  406. package/src/commerce/offerAvailability.ts +75 -0
  407. package/src/commerce/offerAvailabilitySchemas.ts +56 -0
  408. package/src/commerce/offerEvidenceSchemas.ts +17 -0
  409. package/src/commerce/oms/omsContractBase.ts +92 -0
  410. package/src/commerce/oms/omsContractReadAuxSchemas.ts +130 -0
  411. package/src/commerce/oms/omsContractReadSchemas.ts +303 -0
  412. package/src/commerce/oms/omsContractRequests.ts +143 -0
  413. package/src/commerce/oms/omsContracts.ts +6 -0
  414. package/src/commerce/oms/omsControlPlane.ts +85 -0
  415. package/src/commerce/oms/omsFulfillmentContractSchemas.ts +113 -0
  416. package/src/commerce/oms/omsFulfillmentDebugSchemas.ts +38 -0
  417. package/src/commerce/oms/omsFulfillmentHealthSchemas.ts +46 -0
  418. package/src/commerce/oms/omsPorts.ts +165 -0
  419. package/src/commerce/oms/omsPrimitives.ts +3 -0
  420. package/src/commerce/oms/omsProviderEvidenceSchemas.ts +13 -0
  421. package/src/commerce/orderDraftErrors.ts +28 -0
  422. package/src/commerce/orderEmailEligibility.ts +131 -0
  423. package/src/commerce/orderEmailLines.ts +22 -0
  424. package/src/commerce/orderFeedbackContracts.ts +47 -0
  425. package/src/commerce/orderMoney.ts +207 -0
  426. package/src/commerce/orderReviewContracts.ts +124 -0
  427. package/src/commerce/orderReviewPorts.ts +94 -0
  428. package/src/commerce/outboxDispatchContracts.ts +30 -0
  429. package/src/commerce/outboxEventSchemas.ts +230 -0
  430. package/src/commerce/outboxOrderDraftEmailPorts.ts +241 -0
  431. package/src/commerce/paymentContinuation.ts +5 -0
  432. package/src/commerce/ports.ts +7 -0
  433. package/src/commerce/recoveryDestination.ts +23 -0
  434. package/src/commerce/runtimeErrors.ts +19 -0
  435. package/src/commerce/salesChannelEnvelope.ts +28 -0
  436. package/src/commerce/schemas.ts +104 -0
  437. package/src/commerce/server/checkoutCompensation.ts +49 -0
  438. package/src/commerce/server/checkoutConflictClassifiers.ts +53 -0
  439. package/src/commerce/server/checkoutExpiredRecoveryPolicy.ts +107 -0
  440. package/src/commerce/server/checkoutInvoiceBuyerSnapshot.ts +36 -0
  441. package/src/commerce/server/checkoutOfferPolicyPort.ts +60 -0
  442. package/src/commerce/server/checkoutPaymentContinuationCredential.ts +222 -0
  443. package/src/commerce/server/checkoutQuoteTypes.ts +9 -0
  444. package/src/commerce/server/checkoutRecoveryOrderPort.ts +40 -0
  445. package/src/commerce/server/checkoutRecoveryToken.ts +63 -0
  446. package/src/commerce/server/checkoutRefusalContinuation.ts +29 -0
  447. package/src/commerce/server/checkoutRuntimeTypes.ts +26 -0
  448. package/src/commerce/server/commerceCheckoutCommandExecution.ts +188 -0
  449. package/src/commerce/server/commerceCheckoutCompensation.ts +66 -0
  450. package/src/commerce/server/commerceCheckoutContinuationTerms.ts +87 -0
  451. package/src/commerce/server/commerceCheckoutCustomerDefaults.ts +24 -0
  452. package/src/commerce/server/commerceCheckoutFailureHandler.ts +144 -0
  453. package/src/commerce/server/commerceCheckoutHandler.ts +269 -0
  454. package/src/commerce/server/commerceCheckoutHandlerAdmission.ts +157 -0
  455. package/src/commerce/server/commerceCheckoutHandlerHelpers.ts +223 -0
  456. package/src/commerce/server/commerceCheckoutOrchestrationError.ts +15 -0
  457. package/src/commerce/server/commerceCheckoutPromotionPriceChange.ts +83 -0
  458. package/src/commerce/server/commerceCheckoutProviderPayment.ts +45 -0
  459. package/src/commerce/server/commerceCheckoutQuoteGuard.ts +172 -0
  460. package/src/commerce/server/commerceCheckoutResume.ts +132 -0
  461. package/src/commerce/server/commerceCheckoutResumeGuard.ts +195 -0
  462. package/src/commerce/server/commerceCheckoutSavedPaymentMethod.ts +85 -0
  463. package/src/commerce/server/commerceCheckoutStartRuntimeFailure.ts +59 -0
  464. package/src/commerce/server/commerceCheckoutTiming.ts +53 -0
  465. package/src/commerce/server/commerceDiagnostics.ts +37 -0
  466. package/src/commerce/server/commerceOmsCancelOrderHandler.ts +43 -0
  467. package/src/commerce/server/commerceOmsControlPlaneHandlers.ts +71 -0
  468. package/src/commerce/server/commerceOmsHandlers.ts +275 -0
  469. package/src/commerce/server/commerceOmsMarkRefundedHandler.ts +39 -0
  470. package/src/commerce/server/commerceOrderDraft.ts +131 -0
  471. package/src/commerce/server/commercePaidOrderOrchestration.ts +275 -0
  472. package/src/commerce/server/commerceProviderAttemptFailure.ts +257 -0
  473. package/src/commerce/server/commerceReturnsHandlers.ts +143 -0
  474. package/src/commerce/server/commerceRuntimePort.ts +75 -0
  475. package/src/commerce/server/commerceRuntimeService.ts +229 -0
  476. package/src/commerce/server/commerceRuntimeStartResponse.ts +76 -0
  477. package/src/commerce/server/commerceStarterOfferGuard.ts +200 -0
  478. package/src/commerce/server/configuratorIntentPersistence.ts +161 -0
  479. package/src/commerce/server/configuratorIntentPersistenceHandler.ts +54 -0
  480. package/src/commerce/server/emailRuntime.ts +30 -0
  481. package/src/commerce/server/handlerSupport.ts +22 -0
  482. package/src/commerce/server/index.ts +181 -0
  483. package/src/commerce/server/offerAvailability.ts +275 -0
  484. package/src/commerce/server/orderDraftRpcPayload.ts +39 -0
  485. package/src/commerce/server/orderFeedbackSubmit.ts +40 -0
  486. package/src/commerce/server/orderFeedbackTokenCheck.ts +28 -0
  487. package/src/commerce/server/orderReviewAdminHandlers.ts +43 -0
  488. package/src/commerce/server/orderReviewHandlers.ts +57 -0
  489. package/src/commerce/server/orderReviewLifecycle.ts +129 -0
  490. package/src/commerce/server/orderReviewMedia.ts +170 -0
  491. package/src/commerce/server/orderReviewRawUploadHandler.ts +300 -0
  492. package/src/commerce/server/outboxCheckoutExpiredEmailHandler.ts +86 -0
  493. package/src/commerce/server/outboxCheckoutRecoveryEmailHandler.ts +188 -0
  494. package/src/commerce/server/outboxDispatchRegistry.ts +269 -0
  495. package/src/commerce/server/outboxDispatchRegistryComposition.ts +31 -0
  496. package/src/commerce/server/outboxOrderDraftEmailHandler.ts +162 -0
  497. package/src/commerce/server/outboxOrderPaidEmailHandler.ts +147 -0
  498. package/src/commerce/server/outboxOrderPaidFulfillmentHandler.ts +4 -0
  499. package/src/commerce/server/outboxOrderPaidFulfillmentPorts.ts +3 -0
  500. package/src/commerce/server/outboxOrderRefundedEmailHandler.ts +58 -0
  501. package/src/commerce/server/outboxPaymentFailedEmailHandler.ts +99 -0
  502. package/src/commerce/server/outboxReturnEmailHandlers.ts +92 -0
  503. package/src/commerce/server/outboxShipmentDeliveredEmailHandler.ts +94 -0
  504. package/src/commerce/server/outboxShipmentDispatchedEmailHandler.ts +112 -0
  505. package/src/commerce/server/outboxShipmentExceptionEmailHandler.ts +73 -0
  506. package/src/commerce/server/referenceCheckoutHandler.ts +87 -0
  507. package/src/commerce/server/reservationSweepPort.ts +67 -0
  508. package/src/commerce/server/starterTermsPort.ts +22 -0
  509. package/src/commerce/server/supabaseCommerceReturnsPort.ts +81 -0
  510. package/src/composition/commerceContribution.ts +35 -0
  511. package/src/composition/index.ts +1 -0
  512. package/src/fulfillment/index.ts +1 -1
  513. package/src/fulfillment/paidHandoff.ts +2 -2
  514. package/src/inventory/bindings.ts +12 -4
  515. package/src/inventory/index.ts +1 -0
  516. package/src/inventory/managedStockAvailability.ts +23 -0
  517. package/src/inventory/postgresStockAvailability.ts +2 -21
  518. package/src/inventory/stockReadResponse.ts +25 -0
  519. package/src/pricing/browser/index.ts +6 -0
  520. package/src/subscriptions/index.ts +3 -2
@@ -0,0 +1,1217 @@
1
+ import type { PaymentIntentStatus } from "@openlup/core/payment";
2
+ import type { OmsPaymentStatus } from "./state.js";
3
+ import type { OrderMoneyIssueCode, OrderMoneyHeaderRow, OrderMoneyItemRow, CanonicalOrderMoneyLine, CanonicalOrderMoney, OrderMoneyDiagnostic } from "./orderMoney.js";
4
+ export type { OrderMoneyIssueCode, OrderMoneyHeaderRow, OrderMoneyItemRow, CanonicalOrderMoneyLine, CanonicalOrderMoney, OrderMoneyDiagnostic } from "./orderMoney.js";
5
+ import type { OmsFulfillmentBlockReason, OmsInventoryStatus } from "./state.js";
6
+ export type { OmsFulfillmentBlockReason, OmsInventoryStatus } from "./state.js";
7
+ import type { TimedFulfillmentSignal, ReleasedProviderExceptionHold, ProviderStatusEvidence, ResolvedProviderExceptionRecovery } from "./fulfillmentRecovery.js";
8
+ export type { TimedFulfillmentSignal, ReleasedProviderExceptionHold, ProviderStatusEvidence, ResolvedProviderExceptionRecovery } from "./fulfillmentRecovery.js";
9
+ // Browser-safe OMS DTOs and structural ports. Runtime schemas are tested for type parity.
10
+ // Browser-safe OMS DTOs and structural ports. Keep runtime schema parity tests with changes.
11
+ type ActionEligibility = {
12
+ allowed: false | true;
13
+ reason: null | string;
14
+ };
15
+ type OmsPricingSummary = {
16
+ subtotal: CommerceMoney;
17
+ productDiscount: CommerceMoney;
18
+ shipping: CommerceMoney;
19
+ shippingDiscount: CommerceMoney;
20
+ discountTotal: CommerceMoney;
21
+ finalTotal: CommerceMoney;
22
+ source: "order_columns";
23
+ };
24
+ type OmsCommunicationDelivery = {
25
+ id: string;
26
+ purpose: string;
27
+ templateSlug: string;
28
+ triggerSource: string;
29
+ triggerEvent: string;
30
+ aggregateType: null | string;
31
+ aggregateId: null | string;
32
+ dedupeKey: string;
33
+ status: "failed" | "processing" | "delivered" | "planned" | "skipped" | "blocked" | "queued" | "sent" | "delivery_delayed" | "bounced" | "complained" | "missed" | "legacy_unlinked";
34
+ providerKind: null | string;
35
+ providerMessageId: null | string;
36
+ scheduledDueAt: null | string;
37
+ expectedSendAt: null | string;
38
+ queuedAt: null | string;
39
+ firstAttemptAt: null | string;
40
+ sentAt: null | string;
41
+ deliveredAt: null | string;
42
+ terminalAt: null | string;
43
+ lastErrorCode: null | string;
44
+ outboxEventId: null | string;
45
+ platformJobRunId: null | string;
46
+ emailSendId: null | string;
47
+ metadata: {
48
+ [key: string]: unknown;
49
+ };
50
+ createdAt: string;
51
+ updatedAt: string;
52
+ };
53
+ type OmsDeliverySelection = {
54
+ deliveryKind: "courier" | "parcel-locker";
55
+ providerKind: null | string;
56
+ carrierKind: null | string;
57
+ carrierCode: null | string;
58
+ serviceCode: null | string;
59
+ pickupPoint: null | {
60
+ id: string;
61
+ name: string;
62
+ address: null | {
63
+ line1: string;
64
+ postalCode: string;
65
+ city: string;
66
+ country: string;
67
+ };
68
+ };
69
+ source: null | string;
70
+ };
71
+ type OmsDeliveryContact = {
72
+ schemaVersion: 1;
73
+ source: string;
74
+ revision: number;
75
+ recipientName: null | string;
76
+ contactEmail: null | string;
77
+ contactPhone: null | string;
78
+ line1: null | string;
79
+ line2: null | string;
80
+ city: null | string;
81
+ postalCode: null | string;
82
+ country: null | string;
83
+ selectedDelivery: null | {
84
+ [key: string]: unknown;
85
+ };
86
+ deliveryInstructions: null | string;
87
+ courierInstructions: null | string;
88
+ };
89
+ type OmsDeliveryContactProjection = {
90
+ baseline: null | OmsDeliveryContact;
91
+ effective: null | OmsDeliveryContact;
92
+ scope: "missing" | "baseline" | "order_override" | "parcel" | "legacy_inferred";
93
+ source: null | string;
94
+ revision: null | number;
95
+ digest: null | string;
96
+ frozen: false | true;
97
+ providerSubmissionState: "draft" | "failed" | "cancelled" | "not_started" | "created" | "unknown" | "not_materialized" | "submitting" | "uncertain" | "cancel_requested";
98
+ correctionAllowed: false | true;
99
+ };
100
+ type OmsCustomerSummary = {
101
+ id: string;
102
+ email: string;
103
+ firstName: null | string;
104
+ lastName: null | string;
105
+ phone: null | string;
106
+ lifecycleStage: null | string;
107
+ };
108
+ type OmsAddressSummary = {
109
+ id: string;
110
+ label: null | string;
111
+ line1: null | string;
112
+ line2: null | string;
113
+ city: null | string;
114
+ postalCode: null | string;
115
+ country: null | string;
116
+ recipientName: null | string;
117
+ contactPhone: null | string;
118
+ companyName: null | string;
119
+ taxId: null | string;
120
+ deliveryNotes: null | string;
121
+ courierInstructions: null | string;
122
+ };
123
+ type OmsOrderLine = {
124
+ id: string;
125
+ skuId: null | string;
126
+ sku: null | string;
127
+ title: null | string;
128
+ quantity: number;
129
+ unitPrice: CommerceMoney;
130
+ total: CommerceMoney;
131
+ discountAllocated: CommerceMoney;
132
+ effectiveTotal: CommerceMoney;
133
+ effectiveNet: CommerceMoney;
134
+ vatRateBps: null | number;
135
+ productSnapshot: {
136
+ [key: string]: unknown;
137
+ };
138
+ variantSnapshot: null | {
139
+ [key: string]: unknown;
140
+ };
141
+ };
142
+ type OmsAccountingSummary = {
143
+ status: string;
144
+ invoiceId: null | string;
145
+ invoiceRef: null | string;
146
+ providerKind: null | string;
147
+ providerInvoiceNumber: null | string;
148
+ outboxStatus: null | string;
149
+ outboxAttemptCount: null | number;
150
+ outboxNextAttemptAt: null | string;
151
+ outboxLastError: null | {
152
+ code: null | string;
153
+ message: null | string;
154
+ retryable: null | false | true;
155
+ };
156
+ recoveryGuidance: "none" | "not_requested" | "wait_for_retry" | "review_and_retry";
157
+ updatedAt: null | string;
158
+ fiscalStatus?: undefined | null | string;
159
+ };
160
+ type OmsOrderActionEligibility = {
161
+ addNote: ActionEligibility;
162
+ createHold: ActionEligibility;
163
+ releaseHold: ActionEligibility;
164
+ createFulfillment: ActionEligibility;
165
+ updateShippingAddress: ActionEligibility;
166
+ recordLabel: ActionEligibility;
167
+ handOff: ActionEligibility;
168
+ recordTrackingEvent: ActionEligibility;
169
+ cancelFulfillment: ActionEligibility;
170
+ cancelOrder: ActionEligibility;
171
+ markRefunded: ActionEligibility;
172
+ };
173
+ type OmsOrderSearchMatch = AdminOmsOrderSearchMatch;
174
+ type OmsOrderListItem = AdminOmsOrderListItem;
175
+ type OmsOrderListSummaryCounts = AdminOmsOrderListSummaryCounts;
176
+ type OmsOrderListSummaryTotals = AdminOmsOrderListSummaryTotals;
177
+ type OmsOrderOperation = {
178
+ id: string;
179
+ orderId: string;
180
+ type: "hold_created" | "hold_released" | "fulfillment_reviewed" | "support_note" | "shipping_address_updated" | "order_marked_refunded" | "order_cancelled_manual" | "replacement_shipment_requested";
181
+ holdId: null | string;
182
+ actorUserId: null | string;
183
+ occurredAt: string;
184
+ payload: {
185
+ [key: string]: unknown;
186
+ };
187
+ };
188
+ type OmsPaymentSummary = {
189
+ intentId: null | string;
190
+ paymentId: null | string;
191
+ status: OmsOrderPaymentStatus;
192
+ activeAttemptId: null | string;
193
+ providerPaymentId: null | string;
194
+ updatedAt: null | string;
195
+ };
196
+ type OmsPaymentAttempt = {
197
+ id: string;
198
+ status: "failed" | "expired" | "cancelled" | "created" | "requires_action" | "processing" | "succeeded" | "blocked_preflight" | "sent_to_provider";
199
+ provider: string;
200
+ providerAttemptId: null | string;
201
+ nextActionKind: null | string;
202
+ updatedAt: string;
203
+ };
204
+ type OmsPaymentTransition = {
205
+ id: string;
206
+ transitionKind: string;
207
+ fromStatus: null | string;
208
+ toStatus: string;
209
+ reason: string;
210
+ occurredAt: string;
211
+ };
212
+ type OmsFulfillmentEligibility = {
213
+ allowed: false | true;
214
+ reason: null | "active_hold" | "missing_shipping_address" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "order_not_paid" | "subscription_cycle_not_paid";
215
+ };
216
+ type AdminCommerceOrderShippingAddressInput = {
217
+ recipientName: string;
218
+ contactEmail: string;
219
+ line1: string;
220
+ city: string;
221
+ postalCode: string;
222
+ country: string;
223
+ contactPhone: string;
224
+ line2?: undefined | null | string;
225
+ deliveryInstructions?: undefined | null | string;
226
+ courierInstructions?: undefined | null | string;
227
+ };
228
+ type OmsControlPlaneHold = {
229
+ id: string;
230
+ status: "released" | "active";
231
+ reason: "fulfillment_exception" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "address_review" | "manual_support";
232
+ note: null | string;
233
+ createdAt: string;
234
+ releasedAt: null | string;
235
+ };
236
+ type OmsControlPlaneOperation = {
237
+ id: string;
238
+ action: "hold_created" | "hold_released" | "order_cancelled" | "order_refunded";
239
+ holdId: null | string;
240
+ actorId: null | string;
241
+ occurredAt: string;
242
+ };
243
+ type OmsProviderOpsSla = {
244
+ status: "ok" | "watch" | "breached" | "paused_non_shipping_day";
245
+ dispatchedAt: null | string;
246
+ deadlineAt: null | string;
247
+ remainingOperationalMinutes: null | number;
248
+ };
249
+ type OmsFulfillmentTrackingReference = {
250
+ providerKind: string;
251
+ trackingNumber: string;
252
+ trackingUrl: null | string;
253
+ carrierKind: null | string;
254
+ service: null | string;
255
+ updatedAt: null | string;
256
+ };
257
+ type OmsFulfillmentTimelineEvent = {
258
+ eventType: string;
259
+ label: string;
260
+ occurredAt: null | string;
261
+ source: "webhook" | "reconciliation" | "manual" | "simulator" | "fulfillment" | "dispatch" | "provider";
262
+ };
263
+ type OmsSubscriptionContext = {
264
+ subscriptionId: null | string;
265
+ subscriptionCycleId: null | string;
266
+ subscriptionCycleStatus: null | "paid" | "cancelled" | "planned" | "payment_pending" | "payment_failed" | "retry_scheduled" | "skipped";
267
+ nextCycleAt: null | string;
268
+ cyclePaidAt: null | string;
269
+ };
270
+ type OmsInventorySummary = {
271
+ status: OmsInventoryStatus;
272
+ reservationId: null | string;
273
+ reservationStatus: null | "expired" | "reserved" | "released" | "consumed";
274
+ expiresAt: null | string;
275
+ locationId: null | string;
276
+ locationCode: null | string;
277
+ };
278
+ type OmsFulfillmentSummary = {
279
+ fulfillmentOrderId: null | string;
280
+ status: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
281
+ providerKind: null | string;
282
+ latestOperationType: null | string;
283
+ latestOperationAt: null | string;
284
+ providerTrackingId: null | string;
285
+ trackingUrl: null | string;
286
+ carrierKind: null | string;
287
+ service: null | string;
288
+ trackingReferences: Array<OmsFulfillmentTrackingReference>;
289
+ trackingTimeline: Array<OmsFulfillmentTimelineEvent>;
290
+ providerEvidence: Array<OmsProviderEvidence>;
291
+ };
292
+ type OmsSupersededParcel = {
293
+ fulfillmentOrderId: string;
294
+ sequenceNo: number;
295
+ status: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
296
+ replacementReason: null | string;
297
+ handedOverAt: null | string;
298
+ deliveredAt: null | string;
299
+ trackingReferences: Array<OmsFulfillmentTrackingReference>;
300
+ };
301
+ type OmsFulfillmentDebugStep = {
302
+ key: "fulfillment" | "dispatch" | "provider" | "payment" | "stock" | "provider_stock" | "tracking" | "communication";
303
+ status: "missing" | "ok" | "pending" | "warning" | "blocked";
304
+ label: string;
305
+ value: null | string;
306
+ evidenceAt: null | string;
307
+ details: Array<string>;
308
+ };
309
+ type OmsFulfillmentHealth = {
310
+ healthStatus: "ok" | "needs_attention" | "blocked_uncertain" | "local_ahead" | "provider_ahead" | "missing_local_commitment";
311
+ attentionReasons: Array<"paid_order_missing_fulfillment" | "paid_order_missing_dispatch_ref" | "dispatch_submission_stale" | "dispatch_outcome_uncertain" | "dispatch_failed" | "dispatch_created_without_provider_order_id" | "dispatch_terminal_without_progress" | "dispatch_status_unknown" | "provider_exception_after_delivery" | "provider_exception_after_handover" | "provider_exception_before_handover" | "local_status_ahead_of_provider" | "provider_accepted_local_label_ack_missing" | "order_paid_outbox_discarded" | "order_paid_outbox_processed_without_fulfillment" | "order_paid_outbox_missing">;
312
+ oldestAgeSeconds: null | number;
313
+ opaqueIds: {
314
+ orderId: string;
315
+ fulfillmentOrderId: null | string;
316
+ outboxEventId: null | string;
317
+ dispatchRefFulfillmentOrderId: null | string;
318
+ latestEvidenceFulfillmentOrderId: null | string;
319
+ };
320
+ dispatchRefId?: undefined | null | string;
321
+ dispatchStatus?: undefined | null | string;
322
+ };
323
+ type OmsFulfillmentHealthDigest = {
324
+ healthStatus: "ok" | "needs_attention" | "blocked_uncertain" | "local_ahead" | "provider_ahead" | "missing_local_commitment";
325
+ attentionReasons: Array<"paid_order_missing_fulfillment" | "paid_order_missing_dispatch_ref" | "dispatch_submission_stale" | "dispatch_outcome_uncertain" | "dispatch_failed" | "dispatch_created_without_provider_order_id" | "dispatch_terminal_without_progress" | "dispatch_status_unknown" | "provider_exception_after_delivery" | "provider_exception_after_handover" | "provider_exception_before_handover" | "local_status_ahead_of_provider" | "provider_accepted_local_label_ack_missing" | "order_paid_outbox_discarded" | "order_paid_outbox_processed_without_fulfillment" | "order_paid_outbox_missing">;
326
+ };
327
+ type CommerceMoney = {
328
+ amountMinor: number;
329
+ currency: string;
330
+ };
331
+ type OmsProviderEvidence = {
332
+ evidenceType: "dispatch_ref" | "provider_attempt" | "status_evidence";
333
+ status: null | string;
334
+ providerStatus: null | string;
335
+ providerOrderId: null | string;
336
+ evidenceKind: null | string;
337
+ occurredAt: null | string;
338
+ updatedAt: null | string;
339
+ summary: null | string;
340
+ };
341
+ export type QueueSelection = {
342
+ orderIds: Array<string>;
343
+ totalCount: number;
344
+ matches: {
345
+ [key: string]: AdminOmsOrderSearchMatch;
346
+ };
347
+ summaryCounts: AdminOmsOrderListSummaryCounts;
348
+ summaryTotals: AdminOmsOrderListSummaryTotals;
349
+ };
350
+ export type OmsManagedReadProjections = {
351
+ queueMatchSchema?: { safeParse(input: unknown): { success: true; data: AdminOmsOrderSearchMatch } | { success: false } };
352
+ model?: undefined | OmsReadModelProjections;
353
+ orderColumns?: undefined | string;
354
+ invoiceColumns?: undefined | string;
355
+ mapInvoice?: undefined | ((value: unknown) => OmsAccountingInvoiceRow);
356
+ projectQueue?: undefined | ((data: unknown) => unknown);
357
+ readIdentity?: undefined | ((store: CommerceOmsStore, orders: Array<OmsOrderRow>, view: "list" | "detail") => Promise<{
358
+ [key: string]: {
359
+ [key: string]: unknown;
360
+ };
361
+ }>);
362
+ readFulfillmentOperations?: undefined | ((store: CommerceOmsStore, ids: Array<string>) => Promise<Array<OmsFulfillmentOperationRow>>);
363
+ readProviderDispatchRefs?: undefined | ((store: CommerceOmsStore, ids: Array<string>) => Promise<Array<OmsProviderDispatchRefRow>>);
364
+ readProviderStatusEvidence?: undefined | ((store: CommerceOmsStore, ids: Array<string>) => Promise<Array<OmsProviderStatusEvidenceRow>>);
365
+ readProviderAttempts?: undefined | ((store: CommerceOmsStore, ids: Array<string>) => Promise<Array<OmsProviderAttemptRow>>);
366
+ readReleasedProviderExceptionHolds?: undefined | ((store: CommerceOmsStore, ids: Array<string>) => Promise<Array<OmsReleasedProviderExceptionHoldRow>>);
367
+ readProviderStockCurrent?: undefined | ((store: CommerceOmsStore, items: Array<OmsOrderItemRow>) => Promise<Array<OmsFulfillmentProviderStockCurrentRow>>);
368
+ readInboundEvents?: undefined | ((store: CommerceOmsStore, input: {
369
+ order: OmsOrderRow;
370
+ dispatchRefs: Array<OmsProviderDispatchRefRow>;
371
+ }) => Promise<Array<OmsInboundProviderEventRow>>);
372
+ buildHealth?: undefined | ((input: {
373
+ order: OmsOrderRow;
374
+ paymentStatus: string;
375
+ fulfillmentOrders: Array<OmsFulfillmentOrderRow>;
376
+ dispatchRefs: Array<OmsProviderDispatchRefRow>;
377
+ statusEvidence: Array<OmsProviderStatusEvidenceRow>;
378
+ orderPaidOutboxEvents: Array<unknown>;
379
+ }) => OmsFulfillmentHealth);
380
+ buildHealthDigests?: undefined | ((input: {
381
+ orders: Array<OmsOrderRow>;
382
+ paymentIntents: Array<OmsPaymentIntentRow>;
383
+ fulfillmentOrders: Array<OmsFulfillmentOrderRow>;
384
+ dispatchRefs: Array<OmsProviderDispatchRefRow>;
385
+ statusEvidence: Array<OmsProviderStatusEvidenceRow>;
386
+ }) => {
387
+ [key: string]: OmsFulfillmentHealthDigest;
388
+ });
389
+ };
390
+ export type CommerceOmsRpcClient = {
391
+ rpc: (functionName: string, args: {
392
+ [key: string]: unknown;
393
+ }) => PromiseLike<{
394
+ data: unknown;
395
+ error: null | RpcError;
396
+ }>;
397
+ };
398
+ export type CommerceOmsStore = {
399
+ query: (table: string) => ManagedQueryBuilder;
400
+ rpc: (functionName: string, args: {
401
+ [key: string]: unknown;
402
+ }) => PromiseLike<{
403
+ data: unknown;
404
+ error: null | RpcError;
405
+ }>;
406
+ };
407
+ export interface ManagedQueryBuilder extends PromiseLike<ManagedQueryResult> {
408
+ select(columns: string, options?: Record<string, unknown>): ManagedQueryBuilder;
409
+ order(column: string, options?: Record<string, unknown>): ManagedQueryBuilder;
410
+ eq(column: string, value: unknown): ManagedQueryBuilder;
411
+ is(column: string, value: unknown): ManagedQueryBuilder;
412
+ in(column: string, values: unknown[]): ManagedQueryBuilder;
413
+ gte(column: string, value: unknown): ManagedQueryBuilder;
414
+ lte(column: string, value: unknown): ManagedQueryBuilder;
415
+ ilike(column: string, value: string): ManagedQueryBuilder;
416
+ insert(values: Record<string, unknown> | Array<Record<string, unknown>>): ManagedQueryBuilder;
417
+ update(values: Record<string, unknown>): ManagedQueryBuilder;
418
+ range(from: number, to: number): PromiseLike<ManagedQueryResult>;
419
+ maybeSingle(): PromiseLike<ManagedQueryResult>;
420
+ }
421
+
422
+ export type ManagedQueryResult = {
423
+ data: unknown;
424
+ error: null | RpcError;
425
+ count?: undefined | null | number;
426
+ };
427
+ export type RpcError = {
428
+ code?: undefined | string;
429
+ message?: undefined | string;
430
+ details?: undefined | string;
431
+ hint?: undefined | string;
432
+ };
433
+ export type OmsAccountingRecoveryGuidance = "none" | "not_requested" | "wait_for_retry" | "review_and_retry";
434
+ export type OmsCurrencyPolicy = {
435
+ defaultCurrency: string;
436
+ accepts: (currency: string) => false | true;
437
+ };
438
+ export type OmsInboundProviderEventRow = {
439
+ id: string;
440
+ provider: string;
441
+ provider_event_id: string;
442
+ event_type: string;
443
+ processing_status: string;
444
+ payload?: unknown;
445
+ error?: unknown;
446
+ created_at: string;
447
+ processed_at?: undefined | null | string;
448
+ };
449
+ export type OmsFulfillmentProviderStockCurrentRow = {
450
+ provider_kind: string;
451
+ sku: string;
452
+ provider_for_sale_quantity: number;
453
+ provider_total_quantity: number;
454
+ last_synced_at: string;
455
+ stale_after: string;
456
+ };
457
+ export type OmsFulfillmentOrderRow = {
458
+ id: string;
459
+ order_id: string;
460
+ status: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
461
+ provider_kind?: undefined | null | string;
462
+ handed_over_at?: undefined | null | string;
463
+ delivered_at?: undefined | null | string;
464
+ created_at?: undefined | null | string;
465
+ updated_at?: undefined | null | string;
466
+ sequence_no?: undefined | null | number;
467
+ replaces_fulfillment_order_id?: undefined | null | string;
468
+ replacement_reason?: undefined | null | string;
469
+ shipping_address_snapshot?: undefined | null | {
470
+ [key: string]: unknown;
471
+ };
472
+ };
473
+ export type OmsFulfillmentOperationRow = {
474
+ fulfillment_order_id: string;
475
+ operation_type: string;
476
+ occurred_at: string;
477
+ };
478
+ export type OmsProviderAttemptRow = {
479
+ fulfillment_order_id: string;
480
+ provider_kind?: undefined | null | string;
481
+ status?: undefined | null | string;
482
+ provider_tracking_id?: undefined | null | string;
483
+ error?: unknown;
484
+ created_at?: undefined | null | string;
485
+ };
486
+ export type OmsProviderDispatchRefRow = {
487
+ id?: undefined | null | string;
488
+ fulfillment_order_id: string;
489
+ provider_order_id?: undefined | null | string;
490
+ dispatch_mode?: undefined | null | string;
491
+ status?: undefined | null | string;
492
+ error?: unknown;
493
+ created_at?: undefined | null | string;
494
+ updated_at?: undefined | null | string;
495
+ };
496
+ export type OmsProviderStatusEvidenceRow = {
497
+ id?: undefined | null | string;
498
+ fulfillment_order_id: string;
499
+ provider_status?: undefined | null | string;
500
+ provider_sub_status?: undefined | null | string;
501
+ local_status?: undefined | null | string;
502
+ customer_status?: undefined | null | string;
503
+ evidence_kind?: undefined | null | string;
504
+ occurred_at?: undefined | null | string;
505
+ created_at?: undefined | null | string;
506
+ };
507
+ export type OmsReleasedProviderExceptionHoldRow = {
508
+ order_id: string;
509
+ status?: undefined | null | string;
510
+ reason?: undefined | null | string;
511
+ created_by?: undefined | null | string;
512
+ released_by?: undefined | null | string;
513
+ metadata?: unknown;
514
+ };
515
+ export type OmsShipmentExternalRefRow = {
516
+ order_id: string;
517
+ fulfillment_order_id?: undefined | null | string;
518
+ provider_tracking_id: string;
519
+ active: false | true;
520
+ provider_kind?: undefined | null | string;
521
+ tracking_url?: undefined | null | string;
522
+ carrier_kind?: undefined | null | string;
523
+ service?: undefined | null | string;
524
+ updated_at?: undefined | null | string;
525
+ created_at?: undefined | null | string;
526
+ };
527
+ export type OmsOperationalLadderInput = {
528
+ orderStatus: "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
529
+ activeHoldCount: number;
530
+ paymentStatus: OmsOrderPaymentStatus;
531
+ hasShippingAddress: false | true;
532
+ inventoryStatus: OmsInventoryStatus;
533
+ fulfillmentStatus: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
534
+ fulfillmentAllowed: false | true;
535
+ accountingStatus: string;
536
+ };
537
+ export type OmsOperationalRung = {
538
+ readonly id: string;
539
+ readonly sqlPredicate: string;
540
+ readonly attentionReason: AdminOmsAttentionReason;
541
+ readonly nextAction: AdminOmsNextAction;
542
+ readonly matches: (input: OmsOperationalLadderInput) => false | true;
543
+ };
544
+ export type OmsPaymentMethodSummary = {
545
+ provider: null | string;
546
+ label: null | string;
547
+ };
548
+ export type OmsOrderIdentity = ({
549
+ customer: null | OmsCustomerSummary;
550
+ }) & ({
551
+ [key: string]: unknown;
552
+ });
553
+ export type OmsActionAvailabilityFlags = {
554
+ holdMutationsEnabled?: undefined | false | true;
555
+ supportMutationsEnabled?: undefined | false | true;
556
+ fulfillmentMutationsEnabled?: undefined | false | true;
557
+ refundMutationsEnabled?: undefined | false | true;
558
+ orderCancellationEnabled?: undefined | false | true;
559
+ };
560
+ export type OmsReadModelProjections = {
561
+ currency?: undefined | OmsCurrencyPolicy;
562
+ detailFields?: undefined | ((input: {
563
+ order: OmsOrderRow;
564
+ orderItems?: undefined | Array<OmsOrderItemRow>;
565
+ orderMoney: CanonicalOrderMoney;
566
+ }) => {
567
+ [key: string]: unknown;
568
+ });
569
+ providerOps?: undefined | ((input: {
570
+ fulfillmentOrders: Array<OmsFulfillmentOrderRow>;
571
+ dispatchRefs?: undefined | Array<OmsProviderDispatchRefRow>;
572
+ statusEvidence?: undefined | Array<OmsProviderStatusEvidenceRow>;
573
+ }) => {
574
+ status: string;
575
+ sla: null | OmsProviderOpsSla;
576
+ providerOrderId: null | string;
577
+ });
578
+ paymentMethodLabel?: undefined | ((attempt: OmsPaymentAttemptRow) => string);
579
+ usesExternalStock?: undefined | ((providerKind: null | string) => false | true);
580
+ timelineLabel?: undefined | ((step: null | "paid" | "cancelled" | "delivered" | "exception" | "accepted" | "packing" | "transit") => string);
581
+ dispatchLabel?: undefined | ((status: undefined | null | string) => string);
582
+ debugSummary?: undefined | ((action: "review_payment" | "create_fulfillment" | "wait" | "retry_dispatch" | "reconcile" | "review_stock" | "review_provider" | "contact_support") => string);
583
+ dispatchStepLabel?: undefined | string;
584
+ automaticExceptionHoldSource?: undefined | string;
585
+ automaticExceptionReleaseSource?: undefined | string;
586
+ additionalAccountingStatuses?: undefined | Array<string>;
587
+ dispatchedNotPickedStatus?: undefined | string;
588
+ parseList?: undefined | ((value: unknown) => AdminCommerceOrdersListResponse);
589
+ parseDetail?: undefined | ((value: unknown) => AdminCommerceOrderDetailResponse);
590
+ };
591
+ export type OmsOrderRow = {
592
+ id: string;
593
+ order_number: null | string;
594
+ client_id: null | string;
595
+ status: "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
596
+ mode: "one_time" | "subscription_cycle";
597
+ currency: string;
598
+ subtotal_cents: null | number;
599
+ discount_cents: null | number;
600
+ shipping_cents: null | number;
601
+ shipping_discount_cents: null | number;
602
+ tax_cents: null | number;
603
+ total_cents: number;
604
+ metadata: null | {
605
+ [key: string]: unknown;
606
+ };
607
+ created_at: string;
608
+ updated_at: string;
609
+ subscription_id: null | string;
610
+ subscription_cycle_id: null | string;
611
+ shipping_address_id?: undefined | null | string;
612
+ source_kind?: undefined | null | string;
613
+ source_order_ref?: undefined | null | string;
614
+ sales_channels?: undefined | null | {
615
+ slug?: undefined | null | string;
616
+ };
617
+ };
618
+ export type OmsPaymentIntentRow = {
619
+ id: string;
620
+ order_id: string;
621
+ payment_id: string;
622
+ status: "failed" | "expired" | "cancelled" | "refunded" | "created" | "requires_action" | "processing" | "succeeded" | "partially_refunded" | "disputed";
623
+ active_attempt_id: null | string;
624
+ provider_payment_id: null | string;
625
+ updated_at: string;
626
+ };
627
+ export type OmsPaymentAttemptRow = {
628
+ id: string;
629
+ payment_intent_id?: undefined | null | string;
630
+ status: "failed" | "expired" | "cancelled" | "created" | "requires_action" | "processing" | "succeeded" | "blocked_preflight" | "sent_to_provider";
631
+ provider: string;
632
+ provider_attempt_id: null | string;
633
+ next_action_kind: null | string;
634
+ updated_at: string;
635
+ };
636
+ export type OmsHoldRow = {
637
+ id: string;
638
+ order_id: string;
639
+ status: "released" | "active";
640
+ reason: "fulfillment_exception" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "address_review" | "manual_support";
641
+ note: null | string;
642
+ created_at: string;
643
+ released_at: null | string;
644
+ };
645
+ export type OmsOperationRow = {
646
+ id: string;
647
+ order_id: string;
648
+ operation_type: "hold_created" | "hold_released" | "fulfillment_reviewed" | "support_note" | "shipping_address_updated" | "order_marked_refunded" | "order_cancelled_manual" | "replacement_shipment_requested";
649
+ hold_id: null | string;
650
+ actor_user_id: null | string;
651
+ occurred_at: string;
652
+ payload: {
653
+ [key: string]: unknown;
654
+ };
655
+ };
656
+ export type OmsPaymentTransitionRow = {
657
+ id: string;
658
+ transition_kind: string;
659
+ from_status: null | string;
660
+ to_status: string;
661
+ reason: string;
662
+ occurred_at: string;
663
+ };
664
+ export type OmsInventoryReservationRow = {
665
+ id: string;
666
+ order_id: string;
667
+ order_item_id: null | string;
668
+ quantity: number;
669
+ status: "expired" | "reserved" | "released" | "consumed";
670
+ expires_at: null | string;
671
+ location_id: null | string;
672
+ inventory_locations?: undefined | null | {
673
+ code?: undefined | null | string;
674
+ };
675
+ };
676
+ export type OmsOrderItemRow = {
677
+ id: string;
678
+ order_id?: undefined | string;
679
+ sku_id?: undefined | null | string;
680
+ sku?: undefined | null | string;
681
+ title?: undefined | null | string;
682
+ quantity: number;
683
+ unit_price_cents?: undefined | null | number;
684
+ total_cents?: undefined | null | number;
685
+ discount_allocated_cents?: undefined | null | number;
686
+ effective_total_cents?: undefined | null | number;
687
+ effective_net_cents?: undefined | null | number;
688
+ vat_rate_bps?: undefined | null | number;
689
+ product_snapshot?: undefined | null | {
690
+ [key: string]: unknown;
691
+ };
692
+ variant_snapshot?: undefined | null | {
693
+ [key: string]: unknown;
694
+ };
695
+ };
696
+ export type OmsCustomerRow = {
697
+ id: string;
698
+ email: string;
699
+ first_name: null | string;
700
+ last_name: null | string;
701
+ phone: null | string;
702
+ lifecycle_stage: null | string;
703
+ };
704
+ export type OmsAddressRow = {
705
+ id: string;
706
+ label?: undefined | null | string;
707
+ line1?: undefined | null | string;
708
+ line2?: undefined | null | string;
709
+ city?: undefined | null | string;
710
+ postal_code?: undefined | null | string;
711
+ country?: undefined | null | string;
712
+ recipient_name?: undefined | null | string;
713
+ contact_phone?: undefined | null | string;
714
+ company_name?: undefined | null | string;
715
+ tax_id?: undefined | null | string;
716
+ delivery_notes?: undefined | null | string;
717
+ courier_instructions?: undefined | null | string;
718
+ };
719
+ export type OmsAccountingInvoiceRow = {
720
+ id: string;
721
+ order_id: string;
722
+ invoice_ref: string;
723
+ status: string;
724
+ provider_kind: null | string;
725
+ provider_invoice_number: null | string;
726
+ fiscal_status?: undefined | null | string;
727
+ total_gross_cents: number;
728
+ currency: string;
729
+ blocked_reason?: undefined | null | string;
730
+ updated_at: string;
731
+ };
732
+ export type OmsAccountingOutboxRow = {
733
+ invoice_id: string;
734
+ status: string;
735
+ attempt_count?: undefined | null | number;
736
+ next_attempt_at?: undefined | null | string;
737
+ last_error?: unknown;
738
+ created_at?: undefined | null | string;
739
+ };
740
+ export type OmsCommunicationDeliveryRow = {
741
+ id: string;
742
+ purpose: string;
743
+ template_slug: string;
744
+ trigger_source: string;
745
+ trigger_event: string;
746
+ aggregate_type: null | string;
747
+ aggregate_id: null | string;
748
+ dedupe_key: string;
749
+ status: "failed" | "processing" | "delivered" | "planned" | "skipped" | "blocked" | "queued" | "sent" | "delivery_delayed" | "bounced" | "complained" | "missed" | "legacy_unlinked";
750
+ provider_kind: null | string;
751
+ provider_message_id: null | string;
752
+ scheduled_due_at: null | string;
753
+ expected_send_at: null | string;
754
+ queued_at: null | string;
755
+ first_attempt_at: null | string;
756
+ sent_at: null | string;
757
+ delivered_at: null | string;
758
+ terminal_at: null | string;
759
+ last_error_code: null | string;
760
+ outbox_event_id: null | string;
761
+ platform_job_run_id: null | string;
762
+ email_send_id: null | string;
763
+ metadata: null | {
764
+ [key: string]: unknown;
765
+ };
766
+ created_at: string;
767
+ updated_at: string;
768
+ };
769
+ export type OmsOrderRowCoreInput = {
770
+ projections?: undefined | OmsReadModelProjections;
771
+ order: OmsOrderRow;
772
+ activeHoldCount: number;
773
+ paymentIntents: Array<OmsPaymentIntentRow>;
774
+ paymentAttempts: Array<OmsPaymentAttemptRow>;
775
+ identity: OmsOrderIdentity;
776
+ orderItems?: undefined | Array<OmsOrderItemRow>;
777
+ inventoryReservations: Array<OmsInventoryReservationRow>;
778
+ fulfillmentOrders: Array<OmsFulfillmentOrderRow>;
779
+ fulfillmentOperations: Array<OmsFulfillmentOperationRow>;
780
+ shipmentExternalRefs: Array<OmsShipmentExternalRefRow>;
781
+ providerAttempts?: undefined | Array<OmsProviderAttemptRow>;
782
+ dispatchRefs?: undefined | Array<OmsProviderDispatchRefRow>;
783
+ statusEvidence?: undefined | Array<OmsProviderStatusEvidenceRow>;
784
+ releasedProviderExceptionHolds?: undefined | Array<OmsReleasedProviderExceptionHoldRow>;
785
+ accountingInvoice: null | OmsAccountingInvoiceRow;
786
+ accountingOutbox: Array<OmsAccountingOutboxRow>;
787
+ subscriptionCycleStatus: null | "paid" | "cancelled" | "planned" | "payment_pending" | "payment_failed" | "retry_scheduled" | "skipped";
788
+ orderMoney?: undefined | CanonicalOrderMoney;
789
+ };
790
+ export type OmsOrderRowCore = {
791
+ row: {
792
+ status: "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
793
+ mode: "one_time" | "subscription_cycle";
794
+ sourceKind: undefined | string;
795
+ sourceChannelSlug: undefined | string;
796
+ sourceOrderRef: undefined | string;
797
+ paymentMethodLabel: null | string;
798
+ paymentProvider: null | string;
799
+ paymentStatus: OmsOrderPaymentStatus;
800
+ fulfillmentStatus: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
801
+ customerFulfillmentStep: "paid" | "cancelled" | "delivered" | "exception" | "accepted" | "packing" | "transit";
802
+ inventoryStatus: OmsInventoryStatus;
803
+ accountingStatus: string;
804
+ providerOpsStatus: string;
805
+ providerOpsSla: null | OmsProviderOpsSla;
806
+ providerOrderId: null | string;
807
+ attentionReason: AdminOmsAttentionReason;
808
+ nextAction: AdminOmsNextAction;
809
+ activeHoldCount: number;
810
+ total: CommerceMoney;
811
+ pricingSummary: OmsPricingSummary;
812
+ createdAt: string;
813
+ updatedAt: string;
814
+ customer: null | OmsCustomerSummary;
815
+ orderId: string;
816
+ orderNumber: null | string;
817
+ clientId: null | string;
818
+ };
819
+ paymentStatus: OmsOrderPaymentStatus;
820
+ inventory: OmsInventorySummary;
821
+ fulfillment: OmsFulfillmentSummary;
822
+ accounting: OmsAccountingSummary;
823
+ fulfillmentEligibility: {
824
+ allowed: false | true;
825
+ reason: null | "active_hold" | "missing_shipping_address" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "order_not_paid" | "subscription_cycle_not_paid";
826
+ };
827
+ };
828
+ export type AdminCommerceOrderPaymentLinkRefusal = "order_not_found" | "order_paid" | "order_cancelled" | "order_not_recoverable" | "order_changed";
829
+ export type AdminCommerceOrdersListRequest = {
830
+ page: number;
831
+ pageSize: number;
832
+ sort: "created_desc" | "created_asc" | "updated_desc" | "updated_asc" | "attention_priority_desc";
833
+ search?: undefined | string;
834
+ status?: undefined | "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
835
+ mode?: undefined | "one_time" | "subscription_cycle";
836
+ paymentStatus?: undefined | "failed" | "expired" | "cancelled" | "refunded" | "not_started" | "created" | "requires_action" | "processing" | "succeeded" | "partially_refunded" | "disputed";
837
+ fulfillmentStatus?: undefined | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
838
+ inventoryStatus?: undefined | "expired" | "not_checked" | "reserved" | "missing" | "released" | "consumed" | "review_required";
839
+ accountingStatus?: undefined | string;
840
+ providerOpsStatus?: undefined | string;
841
+ attentionReason?: undefined | "none" | "fulfillment_pending" | "payment_required" | "active_hold" | "missing_shipping_address" | "inventory_missing" | "fulfillment_blocked" | "fulfillment_exception" | "invoice_missing" | "invoice_issue_failed" | "invoice_buyer_data_invalid";
842
+ attentionOnly?: undefined | false | true;
843
+ nextAction?: undefined | "none" | "review_payment" | "release_hold" | "review_address" | "review_inventory" | "review_fulfillment" | "create_fulfillment" | "record_label" | "hand_off" | "review_tracking" | "review_invoice";
844
+ from?: undefined | string;
845
+ to?: undefined | string;
846
+ includeWithdrawn?: undefined | false | true;
847
+ };
848
+ export type AdminCommerceOrdersListRequestInput = {
849
+ page?: unknown;
850
+ pageSize?: unknown;
851
+ search?: undefined | string;
852
+ status?: undefined | "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
853
+ mode?: undefined | "one_time" | "subscription_cycle";
854
+ paymentStatus?: undefined | "failed" | "expired" | "cancelled" | "refunded" | "not_started" | "created" | "requires_action" | "processing" | "succeeded" | "partially_refunded" | "disputed";
855
+ fulfillmentStatus?: undefined | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
856
+ inventoryStatus?: undefined | "expired" | "not_checked" | "reserved" | "missing" | "released" | "consumed" | "review_required";
857
+ accountingStatus?: undefined | string;
858
+ providerOpsStatus?: undefined | string;
859
+ attentionReason?: undefined | "none" | "fulfillment_pending" | "payment_required" | "active_hold" | "missing_shipping_address" | "inventory_missing" | "fulfillment_blocked" | "fulfillment_exception" | "invoice_missing" | "invoice_issue_failed" | "invoice_buyer_data_invalid";
860
+ attentionOnly?: undefined | false | true | "true" | "false";
861
+ nextAction?: undefined | "none" | "review_payment" | "release_hold" | "review_address" | "review_inventory" | "review_fulfillment" | "create_fulfillment" | "record_label" | "hand_off" | "review_tracking" | "review_invoice";
862
+ from?: undefined | string;
863
+ to?: undefined | string;
864
+ sort?: undefined | "created_desc" | "created_asc" | "updated_desc" | "updated_asc" | "attention_priority_desc";
865
+ includeWithdrawn?: undefined | false | true | "true" | "false";
866
+ };
867
+ export type AdminCommerceOrderDetailRequest = {
868
+ orderId: string;
869
+ };
870
+ export type AdminCommerceOrderHoldRequest = {
871
+ idempotencyKey: string;
872
+ orderId: string;
873
+ reason: "fulfillment_exception" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "address_review" | "manual_support";
874
+ note?: undefined | string;
875
+ metadata?: undefined | {
876
+ [key: string]: unknown;
877
+ };
878
+ };
879
+ export type AdminCommerceOrderReleaseHoldRequest = {
880
+ idempotencyKey: string;
881
+ holdId: string;
882
+ note?: undefined | string;
883
+ metadata?: undefined | {
884
+ [key: string]: unknown;
885
+ };
886
+ };
887
+ export type AdminCommerceOrderNoteRequest = {
888
+ idempotencyKey: string;
889
+ orderId: string;
890
+ note: string;
891
+ metadata?: undefined | {
892
+ [key: string]: unknown;
893
+ };
894
+ };
895
+ export type AdminCommerceOrderMarkRefundedRequest = {
896
+ idempotencyKey: string;
897
+ orderId: string;
898
+ reason: string;
899
+ metadata?: undefined | {
900
+ [key: string]: unknown;
901
+ };
902
+ };
903
+ export type AdminCommerceOrderCancelRequest = {
904
+ idempotencyKey: string;
905
+ orderId: string;
906
+ reason: string;
907
+ metadata?: undefined | {
908
+ [key: string]: unknown;
909
+ };
910
+ };
911
+ export type AdminCommerceOrderPaymentLinkRequest = {
912
+ orderId: string;
913
+ delivery?: undefined | "email" | "copy";
914
+ };
915
+ export type AdminCommerceOrderRequestReplacementShipmentRequest = {
916
+ idempotencyKey: string;
917
+ orderId: string;
918
+ reason: "damaged" | "lost" | "returned_undelivered" | "other";
919
+ metadata?: undefined | {
920
+ [key: string]: unknown;
921
+ };
922
+ };
923
+ export type AdminCommerceOrderUpdateShippingAddressRequest = {
924
+ idempotencyKey: string;
925
+ orderId: string;
926
+ expectedRevision: number;
927
+ expectedContactDigest: string;
928
+ address: AdminCommerceOrderShippingAddressInput;
929
+ metadata?: undefined | {
930
+ [key: string]: unknown;
931
+ };
932
+ };
933
+ export type AdminCommerceOrdersListResponse = {
934
+ contractVersion: "commerce.v0";
935
+ orders: Array<AdminOmsOrderListItem>;
936
+ summaryCounts: AdminOmsOrderListSummaryCounts;
937
+ summaryTotals: AdminOmsOrderListSummaryTotals;
938
+ totalCount: number;
939
+ page: number;
940
+ pageSize: number;
941
+ };
942
+ export type AdminCommerceOrderDetailResponse = {
943
+ contractVersion: "commerce.v0";
944
+ order: OmsOrderDetail;
945
+ };
946
+ export type AdminCommerceOrderHoldResponse = {
947
+ contractVersion: "commerce.v0";
948
+ hold: OmsOrderHold;
949
+ operationId: string;
950
+ replayed: false | true;
951
+ };
952
+ export type AdminCommerceOrderNoteResponse = {
953
+ contractVersion: "commerce.v0";
954
+ operation: OmsOrderOperation;
955
+ replayed: false | true;
956
+ };
957
+ export type AdminCommerceOrderMarkRefundedResponse = {
958
+ contractVersion: "commerce.v0";
959
+ orderId: string;
960
+ status: "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
961
+ replayed: false | true;
962
+ };
963
+ export type AdminCommerceOrderPaymentLinkResponse = {
964
+ token: string;
965
+ expiresAt: string;
966
+ orderRef: string;
967
+ emailQueued: false | true;
968
+ };
969
+ export type AdminCommerceOrderRequestReplacementShipmentResponse = {
970
+ contractVersion: "commerce.v0";
971
+ operation: OmsOrderOperation;
972
+ replacement: {
973
+ fulfillmentOrderId: string;
974
+ orderId: string;
975
+ sequenceNo: number;
976
+ replacesFulfillmentOrderId: string;
977
+ reason: "damaged" | "lost" | "returned_undelivered" | "other";
978
+ status: string;
979
+ };
980
+ releasedHoldIds: Array<string>;
981
+ replayed: false | true;
982
+ };
983
+ export type AdminCommerceOrderUpdateShippingAddressResponse = {
984
+ contractVersion: "commerce.v0";
985
+ result: "replayed" | "applied";
986
+ scope: "parcel" | "order";
987
+ deliveryContact: OmsDeliveryContact;
988
+ operation: OmsOrderOperation;
989
+ address: {
990
+ recipientName: null | string;
991
+ contactEmail: null | string;
992
+ contactPhone: null | string;
993
+ line1: null | string;
994
+ line2: null | string;
995
+ city: null | string;
996
+ postalCode: null | string;
997
+ country: null | string;
998
+ };
999
+ replayed: false | true;
1000
+ };
1001
+ export type AdminOmsOrderListItem = {
1002
+ orderId: string;
1003
+ orderNumber: null | string;
1004
+ clientId: null | string;
1005
+ customer: null | OmsCustomerSummary;
1006
+ status: "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
1007
+ mode: "one_time" | "subscription_cycle";
1008
+ paymentMethodLabel: null | string;
1009
+ paymentProvider: null | string;
1010
+ paymentStatus: OmsOrderPaymentStatus;
1011
+ fulfillmentStatus: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
1012
+ customerFulfillmentStep: "paid" | "cancelled" | "delivered" | "exception" | "accepted" | "packing" | "transit";
1013
+ inventoryStatus: OmsInventoryStatus;
1014
+ accountingStatus: string;
1015
+ providerOpsStatus: string;
1016
+ providerOpsSla: null | OmsProviderOpsSla;
1017
+ providerOrderId: null | string;
1018
+ attentionReason: AdminOmsAttentionReason;
1019
+ nextAction: AdminOmsNextAction;
1020
+ activeHoldCount: number;
1021
+ activeHoldReasons: Array<"fulfillment_exception" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "address_review" | "manual_support">;
1022
+ fulfillmentHealthDigest: OmsFulfillmentHealthDigest;
1023
+ total: CommerceMoney;
1024
+ pricingSummary: OmsPricingSummary;
1025
+ createdAt: string;
1026
+ updatedAt: string;
1027
+ sourceKind?: undefined | string;
1028
+ sourceChannelSlug?: undefined | string;
1029
+ sourceOrderRef?: undefined | string;
1030
+ match?: undefined | AdminOmsOrderSearchMatch;
1031
+ };
1032
+ export type AdminOmsOrderSearchMatch = {
1033
+ field: string;
1034
+ label: string;
1035
+ valuePreview: null | string;
1036
+ };
1037
+ export type AdminOmsOrderListSummaryCounts = {
1038
+ needsAttention: number;
1039
+ activeHold: number;
1040
+ readyForFulfillment: number;
1041
+ paymentIssues: number;
1042
+ inventoryRisk: number;
1043
+ fulfillmentBlocked: number;
1044
+ fulfillmentExceptions: number;
1045
+ invoiceIssues: number;
1046
+ providerDispatchedNotPicked?: undefined | number;
1047
+ };
1048
+ export type AdminOmsOrderListSummaryTotals = {
1049
+ gmv: CommerceMoney;
1050
+ aov: CommerceMoney;
1051
+ orderCount: number;
1052
+ paidSubscriptionCycleCount: number;
1053
+ };
1054
+ export type AdminOmsAttentionReason = "none" | "fulfillment_pending" | "payment_required" | "active_hold" | "missing_shipping_address" | "inventory_missing" | "fulfillment_blocked" | "fulfillment_exception" | "invoice_missing" | "invoice_issue_failed" | "invoice_buyer_data_invalid";
1055
+ export type AdminOmsNextAction = "none" | "review_payment" | "release_hold" | "review_address" | "review_inventory" | "review_fulfillment" | "create_fulfillment" | "record_label" | "hand_off" | "review_tracking" | "review_invoice";
1056
+ export type OmsOrderDetail = {
1057
+ orderId: string;
1058
+ orderNumber: null | string;
1059
+ clientId: null | string;
1060
+ customer: null | OmsCustomerSummary;
1061
+ status: "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
1062
+ mode: "one_time" | "subscription_cycle";
1063
+ paymentMethodLabel: null | string;
1064
+ paymentProvider: null | string;
1065
+ paymentStatus: OmsOrderPaymentStatus;
1066
+ fulfillmentStatus: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
1067
+ customerFulfillmentStep: "paid" | "cancelled" | "delivered" | "exception" | "accepted" | "packing" | "transit";
1068
+ inventoryStatus: OmsInventoryStatus;
1069
+ accountingStatus: string;
1070
+ providerOpsStatus: string;
1071
+ providerOpsSla: null | OmsProviderOpsSla;
1072
+ providerOrderId: null | string;
1073
+ attentionReason: AdminOmsAttentionReason;
1074
+ nextAction: AdminOmsNextAction;
1075
+ activeHoldCount: number;
1076
+ activeHoldReasons: Array<"fulfillment_exception" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "address_review" | "manual_support">;
1077
+ fulfillmentHealthDigest: OmsFulfillmentHealthDigest;
1078
+ total: CommerceMoney;
1079
+ pricingSummary: OmsPricingSummary;
1080
+ createdAt: string;
1081
+ updatedAt: string;
1082
+ shippingAddress: null | OmsAddressSummary;
1083
+ billingAddress: null | OmsAddressSummary;
1084
+ deliverySelection: null | OmsDeliverySelection;
1085
+ lines: Array<OmsOrderLine>;
1086
+ subscription: OmsSubscriptionContext;
1087
+ fulfillmentEligibility: OmsFulfillmentEligibility;
1088
+ inventory: OmsInventorySummary;
1089
+ fulfillment: OmsFulfillmentSummary;
1090
+ replacementChain: OmsReplacementChain;
1091
+ fulfillmentHealth: OmsFulfillmentHealth;
1092
+ fulfillmentDebug: OmsFulfillmentDebug;
1093
+ accounting: OmsAccountingSummary;
1094
+ actionEligibility: OmsOrderActionEligibility;
1095
+ holds: Array<OmsOrderHold>;
1096
+ operations: Array<OmsOrderOperation>;
1097
+ payment: OmsPaymentSummary;
1098
+ paymentAttempts: Array<OmsPaymentAttempt>;
1099
+ paymentTransitions: Array<OmsPaymentTransition>;
1100
+ communicationDeliveries: Array<OmsCommunicationDelivery>;
1101
+ sourceKind?: undefined | string;
1102
+ sourceChannelSlug?: undefined | string;
1103
+ sourceOrderRef?: undefined | string;
1104
+ match?: undefined | AdminOmsOrderSearchMatch;
1105
+ deliveryContact?: undefined | OmsDeliveryContactProjection;
1106
+ };
1107
+ export type OmsDeliveryContactResolution = {
1108
+ resolutionVersion: 1;
1109
+ scope: "missing" | "baseline" | "order_override" | "parcel" | "legacy_inferred";
1110
+ baseline: null | OmsDeliveryContact;
1111
+ contact: null | OmsDeliveryContact;
1112
+ contactDigest: null | string;
1113
+ };
1114
+ export type OmsOrderHold = {
1115
+ id: string;
1116
+ orderId: string;
1117
+ status: "released" | "active";
1118
+ reason: "fulfillment_exception" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "address_review" | "manual_support";
1119
+ note: null | string;
1120
+ createdAt: string;
1121
+ releasedAt: null | string;
1122
+ };
1123
+ export type OmsOrderPaymentStatus = OmsPaymentStatus<PaymentIntentStatus>;
1124
+ export type OmsAccountingStatus = string;
1125
+ export type AdminOmsProviderOpsStatus = string;
1126
+ export type OmsControlPlaneListRequest = {
1127
+ view: "control_plane_v1";
1128
+ page: number;
1129
+ pageSize: number;
1130
+ status?: undefined | "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
1131
+ };
1132
+ export type OmsControlPlaneDetailRequest = {
1133
+ view: "control_plane_v1";
1134
+ orderId: string;
1135
+ };
1136
+ export type OmsControlPlaneOrder = {
1137
+ orderId: string;
1138
+ status: "draft" | "pending_payment" | "paid" | "failed" | "expired" | "fulfillment_pending" | "cancelled" | "fulfilled" | "refunded";
1139
+ sourceKind: string;
1140
+ sourceOrderRef: null | string;
1141
+ money: null | {
1142
+ amountMinor: number;
1143
+ currency: string;
1144
+ };
1145
+ shipmentStatus: null | "cancelled" | "created" | "packed" | "label_pending" | "label_created" | "handed_over" | "in_transit" | "delivered" | "exception";
1146
+ activeHoldCount: number;
1147
+ activeHoldReasons: Array<"fulfillment_exception" | "payment_not_succeeded" | "inventory_review" | "risk_review" | "address_review" | "manual_support">;
1148
+ actions: {
1149
+ createHold: ActionEligibility;
1150
+ releaseHold: ActionEligibility;
1151
+ cancelOrder: ActionEligibility;
1152
+ markRefunded: ActionEligibility;
1153
+ };
1154
+ createdAt: string;
1155
+ updatedAt: string;
1156
+ };
1157
+ export type OmsControlPlaneListResponse = {
1158
+ contractVersion: "commerce.oms_control_plane.v1";
1159
+ orders: Array<OmsControlPlaneOrder>;
1160
+ totalCount: number;
1161
+ page: number;
1162
+ pageSize: number;
1163
+ };
1164
+ export type OmsControlPlaneDetailResponse = {
1165
+ contractVersion: "commerce.oms_control_plane.v1";
1166
+ order: OmsControlPlaneOrder;
1167
+ holds: Array<OmsControlPlaneHold>;
1168
+ operations: Array<OmsControlPlaneOperation>;
1169
+ };
1170
+ export type CommerceOmsControlPlanePort = {
1171
+ listOrders: (request: OmsControlPlaneListRequest) => Promise<OmsControlPlaneListResponse>;
1172
+ getOrderDetail: (request: OmsControlPlaneDetailRequest) => Promise<null | OmsControlPlaneDetailResponse>;
1173
+ };
1174
+ export type CommerceOmsOperatorResolver = {
1175
+ resolveOperator: (principalId: string) => Promise<null | string>;
1176
+ };
1177
+ export type OmsReplacementChain = {
1178
+ sequenceNo: number;
1179
+ replacesFulfillmentOrderId: null | string;
1180
+ replacementReason: null | string;
1181
+ supersededParcels: Array<OmsSupersededParcel>;
1182
+ };
1183
+ export type OmsFulfillmentDebug = {
1184
+ summary: string;
1185
+ severity: "ok" | "watch" | "action_required";
1186
+ nextAction: "review_payment" | "create_fulfillment" | "wait" | "retry_dispatch" | "reconcile" | "review_stock" | "review_provider" | "contact_support";
1187
+ blockers: Array<string>;
1188
+ steps: Array<OmsFulfillmentDebugStep>;
1189
+ };
1190
+ export type CommerceOmsReadPort = {
1191
+ listOrders: (request: AdminCommerceOrdersListRequest) => Promise<AdminCommerceOrdersListResponse>;
1192
+ getOrderDetail: (request: AdminCommerceOrderDetailRequest) => Promise<null | AdminCommerceOrderDetailResponse>;
1193
+ };
1194
+ export type CommerceOmsHoldPort = {
1195
+ createHold: (request: (AdminCommerceOrderHoldRequest) & ({
1196
+ actorUserId: string;
1197
+ })) => Promise<AdminCommerceOrderHoldResponse>;
1198
+ releaseHold: (request: (AdminCommerceOrderReleaseHoldRequest) & ({
1199
+ actorUserId: string;
1200
+ })) => Promise<AdminCommerceOrderHoldResponse>;
1201
+ addNote: (request: (AdminCommerceOrderNoteRequest) & ({
1202
+ actorUserId: string;
1203
+ })) => Promise<AdminCommerceOrderNoteResponse>;
1204
+ updateShippingAddress: (request: (AdminCommerceOrderUpdateShippingAddressRequest) & ({
1205
+ actorUserId: string;
1206
+ })) => Promise<AdminCommerceOrderUpdateShippingAddressResponse>;
1207
+ markRefunded: (request: (AdminCommerceOrderMarkRefundedRequest) & ({
1208
+ actorUserId: string;
1209
+ })) => Promise<AdminCommerceOrderMarkRefundedResponse>;
1210
+ cancelOrder: (request: (AdminCommerceOrderCancelRequest) & ({
1211
+ actorUserId: string;
1212
+ })) => Promise<AdminCommerceOrderMarkRefundedResponse>;
1213
+ requestReplacementShipment: (request: (AdminCommerceOrderRequestReplacementShipmentRequest) & ({
1214
+ actorUserId: string;
1215
+ })) => Promise<AdminCommerceOrderRequestReplacementShipmentResponse>;
1216
+ };
1217
+ export type OmsReplacementRefusal = "missing_shipping_address" | "payment_not_succeeded" | "subscription_cycle_not_paid" | "order_not_found" | "invalid_input" | "idempotency_conflict" | "order_not_replaceable" | "missing_client" | "shipping_address_not_found" | "no_parcel_to_replace" | "undispatched_replacement_exists" | "missing_order_items" | "missing_catalog_sku" | "missing_inventory_reservation" | "blocked_by_payment_not_succeeded_hold" | "blocked_by_inventory_review_hold" | "blocked_by_risk_review_hold" | "blocked_by_address_review_hold" | "blocked_by_manual_support_hold" | "inventory_external_provider_insufficient_available_stock" | "inventory_external_provider_stock_stale" | "inventory_external_provider_stock_missing" | "inventory_external_provider_sku_not_found" | "inventory_external_provider_location_missing" | "inventory_reservation_insufficient_available_stock" | "inventory_reservation_allocation_incomplete" | "inventory_reservation_payment_status_not_reservable" | "inventory_reservation_invalid_quantity" | "unspecified_refusal";