Framme

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.

POSTstore_order_created

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.

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.

POSTstore_order_status_changed

Sent 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.

POSTstore_order_shipped

Sent 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.

POSTstore_order_delivered

Sent 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.

POSTstore_order_cancelled

Sent 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.