Skip to main content
WEBHOOK

Headers

webhook-id
string
required

dlv_<delivery id>: one per event per installation, the same on every retry. Deduplicate on it. A test delivery from the developer console is dlv_test_<24 hex>.

Pattern: ^dlv_(\d+|test_[0-9a-f]{24})$
webhook-timestamp
string
required

Unix seconds of this attempt.

Pattern: ^\d+$
webhook-signature
string
required

v1a,<base64 Ed25519 signature> of {webhook-id}.{webhook-timestamp}.{raw body}, one per active key, space-separated during a key rotation. Keys: GET /apps/webhook-keys.

tassyir-topic
string
required

The topic, e.g. orders/created.

tassyir-business-id
string
required

The installation's business.

tassyir-api-version
string
required

The version the body follows (the installation's pinned version's).

tassyir-test
string

true on a test delivery sent from the developer console (a sample body, envelope id evt_0); absent on every real delivery.

Allowed value: "true"

Body

application/json

An order came back (its status does not change: returned is true).

id
string
required

Event id. Deduplicate on the webhook-id header.

Pattern: ^evt_\d{1,25}$
type
string
required
Allowed value: "orders/returned"
apiVersion
string
required
Allowed value: "2026-10"
createdAt
string<date-time>
required

When the event happened.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
businessId
string
required

A resource id (a snowflake id, as a string).

Required string length: 1 - 64
storeId
string | null
required

A resource id (a snowflake id, as a string).

Required string length: 1 - 64
appId
string
required

Check it is yours.

Required string length: 1 - 64
installationId
string
required

Check it is yours.

Required string length: 1 - 64
changed
enum<string>[]
required

Top-level fields of the resource that changed; may be empty.

Available options:
orderNumber,
storeId,
status,
waiting,
archived,
dispatched,
delivered,
returned,
currency,
total,
shippingPrice,
buyer,
delivery,
items,
note,
deliveryNote,
source,
landingPageId,
utm,
exchangeOfOrderId,
cancellation,
scheduledFor,
confirmedAt,
dispatchedAt,
deliveredAt,
returnedAt,
canceledAt,
createdAt,
updatedAt
data
object
required

The resource as it was when the body was built, masked for this installation. Re-read it when unsure.

Response

Gone: the installation's webhooks are disabled at once, every topic.