Skip to content

Payload delivery

For events that support it (see the Payload supported column in Webhook event types), you can opt in to receive the full entity data directly in the notification body by registering the webhook with sendPayload: "full".

When enabled, the notification body will contain an additional payload field with the entity data equivalent to the corresponding GET endpoint response:

{
    "eshopId": 222651,
    "event": "product:create",
    "eventCreated": "2025-05-19T10:00:00+0200",
    "eventInstance": "c9e976a5-340b-11e4-b500-ac162d8a2454",
    "payload": {
        "data": {
            "product": {}
        }
    }
}

The payload is fetched with all optional include parameters applied for order, product, invoice, creditNote, deliveryNote and proformaInvoice events, so it is richer than a default GET response for those entities. The remaining payload-supported entities (brand, category, customer, discountCoupon, proofPayment, quantityDiscount, sectionArticle) are fetched without any include parameters.

Some events carry a payload that is only a documented subset of an endpoint response rather than the whole of it. For example eshop:language sends only data.languages of the e-shop detail (GET /api/eshop), not the whole e-shop information. The exact shape of each such payload is described in the Webhook payloads schemas.

If the payload cannot be fetched at delivery time (e.g. due to a transient error), the notification is still sent without the payload field. Set sendPayload: null to disable payload delivery.

For more information about the function of webhooks, see https://developers.shoptet.com/webhooks/.