feat: Add itemized fee extension for checkout and cart#220
feat: Add itemized fee extension for checkout and cart#220poojithg14 wants to merge 4 commits intoUniversal-Commerce-Protocol:mainfrom
Conversation
Add structured fee support via a new extension schema, enabling businesses to surface itemized fees (service, handling, recycling, etc.) on checkout sessions and carts. Closes Universal-Commerce-Protocol#219.
Add waivable/waivability to cspell custom dictionary and fix markdown table column alignment in fee.md to satisfy MD060 rule.
|
@igrigorik @wry-ry This PR is ready for review. It implements the Fee Extension (Option B) discussed in #219. Schema linting and pre-commit checks pass. Would appreciate a review when you get a chance. |
|
Hey @poojithg14 — thanks for putting this together! We took a close look at this PR and used it as a starting point for our thinking. We ended up opening a separate PR (#245) that takes a different approach on a few architectural points:
We also addressed some of the review feedback that would apply to both PRs (RFC 9535 JSONPath dialect, ISO 4217 language, conditional totals descriptions). Would love your thoughts — happy to discuss any of these choices! |
|
Closing this in favor of #245. Thanks, @maximenajim, for reviewing and considering my initial design and building on top of that. We will continue our discussion in #245 |
Add structured fee support via a new extension schema, enabling businesses to surface itemized fees (service, handling, recycling, etc.) on checkout sessions and carts. Closes #219.
Description
Closes #219
Adds a new
dev.ucp.shopping.feeextension schema and documents the Fee Extension in the specification. The extension enables businesses to surface itemized fees (service, handling, recycling, regulatory, etc.) on checkout sessions and carts, formalizing the existingfeetype intotals[]. Fees are business-determined, read-only to platforms, and support allocation breakdowns, taxability, and waivability metadata. Thefee_typefield is an open string — platforms SHOULD handle unknown values gracefully.Type of change
Is this a Breaking Change or Removal?
No. Adds new optional extension schema and documentation.
Checklist