Webhooks

Receive real-time events from OrbisCommerce via webhooks.

What are webhooks?

Webhooks let OrbisCommerce send real-time HTTP POST notifications to your server when events occur — such as a shipment being delivered or a label being voided.

Setting up a webhook

  1. Go to Settings → Webhooks
  2. Click Add Endpoint
  3. Enter your endpoint URL (must be publicly accessible over HTTPS)
  4. Select the events you want to receive
  5. Click Save

OrbisCommerce will send a test event to verify your endpoint is reachable.

Available events

EventDescription
shipment.createdA new label was generated
shipment.voidedA label was voided
tracking.updatedA new tracking scan was recorded
tracking.deliveredShipment marked as delivered
tracking.exceptionDelivery exception or failed attempt
order.syncedA marketplace order was imported

Webhook payload

All events share a common envelope:

{
  "id": "evt_01HXYZ123",
  "event": "tracking.delivered",
  "created_at": "2026-05-21T14:32:00Z",
  "data": {
    "shipment_id": "shp_01HXYZ456",
    "tracking_number": "1234567890",
    "carrier": "dhl",
    "delivered_at": "2026-05-21T14:30:00Z"
  }
}

Verifying webhook signatures

Each webhook request includes an X-OrbisCommerce-Signature header — an HMAC-SHA256 signature of the raw request body using your webhook secret.

import { createHmac } from 'crypto'

function verifySignature(body: string, signature: string, secret: string): boolean {
  const expected = createHmac('sha256', secret)
    .update(body)
    .digest('hex')
  return `sha256=${expected}` === signature
}

Find your webhook secret under Settings → Webhooks → your endpoint → Secret.

Retries

If your endpoint returns a non-2xx status, OrbisCommerce retries the event up to 5 times with exponential backoff (1 min, 5 min, 30 min, 2 hr, 8 hr). After 5 failed attempts, the event is marked as failed and logged in your webhook dashboard.

Testing webhooks locally

Use ngrok or Cloudflare Tunnel to expose your local server and receive webhook events during development.

Was this article helpful?