Skip to content
Esc
↑↓navigate↵open⌘Jpreview
On this page

Incoming webhooks

Receive events from external providers such as Brink and Voyado.

Incoming webhooks let external providers send events into Enad. You register a webhook under System → Webhooks in Enad Admin, point the provider at the generated URL, and each incoming event is validated, mapped, and published into the platform’s event pipeline, where it updates orders, stock, and merchant users like any other integration.

Create a webhook

  1. Select Create webhook and choose the provider type. The available types are Brink and Voyado.
  2. Configure the secret. For Brink, Enad generates a secret for you. For Voyado, enter the secret the provider uses to sign its requests.
  3. Save. A dialog shows the webhook type, URL, and — where applicable — the secret and encryption key. The secret is shown only once, so copy it before closing.

Webhook URL

Each webhook gets a unique URL of the form:

https://<domain>/<app_id>/v1/<webhook_id>

The URL is shown when the webhook is created and on the webhook’s detail view. Configure it as the webhook destination in the provider’s own admin.

Providers

Brink

Enad generates the secret when the webhook is created. The provider sends it as a bearer token, and Enad rejects requests without a matching Authorization: Bearer <secret> header.

Events carry a detail-type field. Stock and order events are mapped and published into the platform; any other detail-type is acknowledged with 200 OK and ignored.

Detail-type What Enad does
ProductVariantBackInStock Updates the variant’s stock with the new quantity.
ProductVariantOutOfStock Sets the variant’s stock to zero.
OrderCreated Publishes the order to the platform.
OrderUpdated Publishes the updated order.
OrderRefunded Publishes the order refund.
OrderCompensated Publishes the order compensation.
OrderReleased Publishes the order release.
OrderDelivered Publishes the order delivery.
OrderCancelled Publishes the order cancellation.
OrderLinesModified Publishes the modified order lines.
OrderDeleted Publishes the order deletion.

The Failed variants of the refund, compensation, release, and delivery events are published the same way. Successful requests receive an OK response.

Voyado

The secret is provided when the webhook is created. Enad verifies each request against the standard Svix webhook signature headers using that secret, so unsigned or tampered requests are rejected with 401 Unauthorized.

The webhook also supports encrypted payloads. When Encrypted is on, provide the encryption key the provider encrypts payloads with; events marked encrypted are decrypted before they are processed.

Event What Enad does
contact.acceptsEmail.changed Updates the merchant user’s email preference.
contact.acceptsSms.changed Updates the merchant user’s SMS preference.
contact.acceptsPostal.changed Updates the merchant user’s postal mail preference.
contact.deleted Marks the merchant user deleted with the deletion reason.

An unknown event type is rejected with 400 Bad Request, so the provider should only send the events listed above.

Shopify

Incoming Shopify events such as orders, refunds, and fulfillments are handled as part of the Shopify integration and do not need a webhook registered on this page.

Managing webhooks

The webhook list shows each webhook’s type, URL, version, encryption state, and status. Select a webhook to view its details and copy its URL.

Deleting a webhook stops event delivery for that URL immediately. Remove the endpoint in the provider as well, since its events will start failing there.