You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* fix(order): soften append-only and immutable language on adjustments and line items
* fix(order): remove quantity derivation language
* feat(order): model Order:Checkout as 1:N relationship
* feat(order): signed quantities/amounts, net exchange amounts, quantity.original
* fix(order): rename adjustment amount to totals for consistency
* fix(order): compose adjustment totals from total.json with signed_amount override
Align with the composition pattern in PR Universal-Commerce-Protocol#261 (totals contract):
allOf total.json base + signed_amount.json override, rather than
inlining the schema.
* fix(order): address review feedback on adjustments and status derivation
- SHOULD append-only adjustments, MAY update in-place
- Guard status derivation against quantity.total == 0 edge case
* fix(order): wrap long prose lines to match spec conventions
"description": "Append-only event that exists independently of fulfillment. Typically represents money movements but can be any post-order change. Polymorphic type that can optionally reference line items.",
5
+
"description": "Post-order event that exists independently of fulfillment. Typically represents money movements but can be any post-order change. Polymorphic type that can optionally reference line items.",
6
6
"type": "object",
7
7
"required": [
8
8
"id",
@@ -45,16 +45,18 @@
45
45
},
46
46
"quantity": {
47
47
"type": "integer",
48
-
"minimum": 1,
49
-
"description": "Quantity affected by this adjustment."
48
+
"description": "Signed quantity affected by this adjustment. Negative values represent reductions (e.g. returns); positive values represent additions (e.g. exchanges)."
50
49
}
51
50
}
52
51
},
53
52
"description": "Which line items and quantities are affected (optional)."
54
53
},
55
-
"amount": {
56
-
"$ref": "amount.json",
57
-
"description": "Amount in ISO 4217 minor units for refunds, credits, or price adjustments."
54
+
"totals": {
55
+
"type": "array",
56
+
"items": {
57
+
"$ref": "total.json"
58
+
},
59
+
"description": "Adjustment totals breakdown. Signed values - negative for money returned to buyer (refunds, credits), positive for additional charges (exchanges)."
0 commit comments