Build webhook-based Etsy order sync (order.paid/canceled/shipped/delivered) #8

Open
opened 2026-08-20 18:02:11 -06:00 by angel · 0 comments
Owner

Revises the original scope of this ticket now that Etsy supports order webhooks (https://developers.etsy.com/documentation/essentials/webhooks/#available-events) - order sync no longer needs to be a polling loop.

Depends on the webhook receiver (#25) and subscription setup (#26). On receiving each event, fetch the receipt via the payload's resource_url and project it into this repo's event-sourcing store (domains/raw_events), following the same shape as other platforms' Save/LoadEventsForStore.

Inventory sync is tracked separately - see #27 (event-driven refresh) and #28 (reconciliation poll), since there's still no inventory webhook.

Revises the original scope of this ticket now that Etsy supports order webhooks (https://developers.etsy.com/documentation/essentials/webhooks/#available-events) - order sync no longer needs to be a polling loop. Depends on the webhook receiver (#25) and subscription setup (#26). On receiving each event, fetch the receipt via the payload's `resource_url` and project it into this repo's event-sourcing store (`domains/raw_events`), following the same shape as other platforms' `Save`/`LoadEventsForStore`. Inventory sync is tracked separately - see #27 (event-driven refresh) and #28 (reconciliation poll), since there's still no inventory webhook.
angel added this to the Etsy Integration milestone 2026-08-20 18:02:11 -06:00
angel added this to the MVP project 2026-08-20 18:02:57 -06:00
angel changed title from Build polling-based order/inventory sync against the live Etsy API to Build webhook-based Etsy order sync (order.paid/canceled/shipped/delivered) 2026-08-20 23:30:33 -06:00
Sign in to join this conversation.