Skip to content

feat: link fulfillment events to checkout fulfillment selections#606

Open
hemanth wants to merge 1 commit into
Universal-Commerce-Protocol:mainfrom
hemanth:feat/fulfillment-event-linkage
Open

feat: link fulfillment events to checkout fulfillment selections#606
hemanth wants to merge 1 commit into
Universal-Commerce-Protocol:mainfrom
hemanth:feat/fulfillment-event-linkage

Conversation

@hemanth

@hemanth hemanth commented Jul 17, 2026

Copy link
Copy Markdown

Closes #347

Summary

Adds fields to fulfillment events that link back to the fulfillment method and option selected at checkout, plus a delivery estimate window.

Changes

  • source/schemas/shopping/types/fulfillment_event.json:
    • Added fulfillment_method_id — references the method selected at checkout
    • Added fulfillment_option_id — references the specific option (e.g., 'express')
    • Added estimated_delivery object with earliest and latest timestamps

Motivation

Currently, fulfillment events (shipped, delivered, etc.) have no connection to the fulfillment options selected at checkout. An agent cannot tell the buyer "your express order shipped" vs "your standard order shipped" because the event doesn't reference the fulfillment group or option.

These fields close the loop between checkout fulfillment selections and post-purchase tracking.

Design decisions

  • All new fields are optional — backwards compatible
  • estimated_delivery uses a range (earliest/latest) rather than a single date
  • Business MAY revise estimated_delivery as the shipment progresses
  • Carrier and tracking fields already existed; the new fields complement them

@damaz91 damaz91 added the status:needs-triage Signal that the PR is ready for human triage label Jul 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

status:needs-triage Signal that the PR is ready for human triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fulfillment extension and order events are disconnected

2 participants