`v1:order.update` Order updated webhook

This webhook is sent whenever the shipping status of an order changes, for example when the parcel enters transit or is delivered. The payload has the same shape as the v1:order.new webhook, with status reflecting the new status of the order. Required OAuth Scope: orders_read Notes:

  • status is derived from the carrier tracking status as follows: AWAITING_SHIPPING → SHIPPING_PENDING, IN_TRANSIT → SHIPPED, DELIVERED → COMPLETED, RETURNED → REFUNDED, CANCELLED → CANCELLED, FAILED → FAILED. Any other tracking status does not produce a webhook.
  • Only orders using Depop managed shipping produce this webhook. Orders where the seller arranges shipping themselves are not covered yet.
  • The id is derived from the purchase ID, so every update for a given order shares the same id. Do not use it on its own to de-duplicate deliveries.
  • Delivery is best effort. Please use the orders endpoint to reconcile if you need a guaranteed up-to-date view of an order.
postWebhookorderUpdated

Payload

idstring required

The identifier of the webhook. For the order webhooks (v1:order.new, v1:order.refund, v1:order.update) this is derived from the purchase ID, so it is stable per order and shared across those event types rather than unique per delivery. Combine it with event_type and created_at if you need to de-duplicate.

event_type'v1:order.new' | 'v1:order.refund' | 'v1:order.update' | 'v1:product.create' | 'v1:product.like' | 'v1:product.unlike' | 'v1:product.update' required

The type of event that triggered the webhook.

created_atstring date-time required

The date and time the webhook was created.

Example payload

{
  "id": "a210923f-c1f3-4d84-a2bd-7f18c68553e2",
  "event_type": "v1:order.new",
  "created_at": "2025-01-01T00:00:00Z",
  "data": {
    "seller_id": 123456,
    "purchase_id": "123456",
    "status": "SHIPPING_PENDING",
    "currency": "GBP",
    "buyer_pays_amount": "50.99",
    "seller_receives_amount": "45.99",
    "fee_amount": "5.00",
    "buyer_shipping_price": "5.00",
    "buyer_address": {
      "name": "John Doe",
      "address": "123 Main St",
      "address2": "Apt 1",
      "city": "London",
      "postal_code": "EC1V 4PW",
      "state": "Greater London",
      "country": "GB",
      "phone_number": "07123456789"
    },
    "line_items": [
      {
        "purchase_item_id": 2385551,
        "sku": "ABC-12345-S-BL",
        "product_id": 7021251,
        "slug": "vintage-nike-t-shirt-7021251",
        "parcel_id": "6e3538ca-6653-3c25-bf0a-a2be876b17e4",
        "description": "Vintage Nike T-Shirt in excellent condition",
        "original_price": "29.99",
        "sold_price": "25.99",
        "sold_via_offers": false,
        "image_url": "https://media-photos-staging.depop.com/b0/18220/5612584_b6795bc34778465293e45647518906d6/P0.jpg"
      }
    ],
    "depop_shipping": {
      "shipping_provider_id": "USPS"
    }
  }
}

Response

Acknowledgment.

Changes

Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.