Webhook events
Payloads Framme sends to your registered callback URL when an order changes. Register and manage your callbacks under Webhook subscriptions.
Open the interactive API reference (Swagger) ↗ — full request/response schemas and a try-it console.
store_order_createdSent when an order is confirmed in your shop. `previous_status` is null. Also accompanied by a store_order_status_changed event for generic subscribers.
POSTed to your callback URL for `store_order_created` subscriptions (see `POST /webhook/subscription`). Sent when an order is confirmed in your shop. `previous_status` is null. Also accompanied by a store_order_status_changed event for generic subscribers. The request body is signed: the `X-Framme-Signature` header carries the hex-encoded HMAC-SHA256 of the raw request body, keyed with the subscription's `token`. Verify it before trusting the payload. Respond with any 2xx status to acknowledge the event. Failed deliveries (connection errors, timeouts, non-2xx responses) are retried up to 10 times with exponential backoff. Retries reuse the same envelope `id`, so make processing idempotent by deduplicating on it.
store_order_status_changedSent on every order status change, including order creation (where `previous_status` is null).
POSTed to your callback URL for `store_order_status_changed` subscriptions (see `POST /webhook/subscription`). Sent on every order status change, including order creation (where `previous_status` is null). The request body is signed: the `X-Framme-Signature` header carries the hex-encoded HMAC-SHA256 of the raw request body, keyed with the subscription's `token`. Verify it before trusting the payload. Respond with any 2xx status to acknowledge the event. Failed deliveries (connection errors, timeouts, non-2xx responses) are retried up to 10 times with exponential backoff. Retries reuse the same envelope `id`, so make processing idempotent by deduplicating on it.
store_order_shippedSent when an order transitions to shipped.
POSTed to your callback URL for `store_order_shipped` subscriptions (see `POST /webhook/subscription`). Sent when an order transitions to shipped. The request body is signed: the `X-Framme-Signature` header carries the hex-encoded HMAC-SHA256 of the raw request body, keyed with the subscription's `token`. Verify it before trusting the payload. Respond with any 2xx status to acknowledge the event. Failed deliveries (connection errors, timeouts, non-2xx responses) are retried up to 10 times with exponential backoff. Retries reuse the same envelope `id`, so make processing idempotent by deduplicating on it.
store_order_deliveredSent when every parcel of an order has been delivered.
POSTed to your callback URL for `store_order_delivered` subscriptions (see `POST /webhook/subscription`). Sent when every parcel of an order has been delivered. The request body is signed: the `X-Framme-Signature` header carries the hex-encoded HMAC-SHA256 of the raw request body, keyed with the subscription's `token`. Verify it before trusting the payload. Respond with any 2xx status to acknowledge the event. Failed deliveries (connection errors, timeouts, non-2xx responses) are retried up to 10 times with exponential backoff. Retries reuse the same envelope `id`, so make processing idempotent by deduplicating on it.
store_order_cancelledSent when an order is cancelled.
POSTed to your callback URL for `store_order_cancelled` subscriptions (see `POST /webhook/subscription`). Sent when an order is cancelled. The request body is signed: the `X-Framme-Signature` header carries the hex-encoded HMAC-SHA256 of the raw request body, keyed with the subscription's `token`. Verify it before trusting the payload. Respond with any 2xx status to acknowledge the event. Failed deliveries (connection errors, timeouts, non-2xx responses) are retried up to 10 times with exponential backoff. Retries reuse the same envelope `id`, so make processing idempotent by deduplicating on it.