Webhooks and JSON integration for systems without a ready connector

If there is no ready connector for your ERP or software, there are two ways in. With webhooks, every change to a work order reaches your endpoint at once as signed JSON. With the generic JSON connection, production and scrap records are sent to your endpoint through the same queue and retry rules as the ERP connectors, and stock items and customers are read from your own URLs.

Last updated: 20 October 2026

Webhooks: work order events

In Settings › Webhooks you add an endpoint and choose the events it receives. The events sent today are about work orders:

EventWhen
workorder.createdA work order is created
workorder.updatedA work order changes
workorder.startedAn operator starts the job
workorder.pausedThe job is paused
workorder.resumedThe job is resumed
workorder.completedThe job is finished
workorder.cancelledThe work order is cancelled
workorder.deletedThe work order is deleted

Each delivery is an HTTP POST with a JSON body of the form {event, timestamp, tenantId, data}. The headers carry the event name (X-Webhook-Event), the time (X-Webhook-Timestamp), a delivery ID (X-Webhook-Delivery) and the signature (X-Webhook-Signature). Only administrators can set up webhooks.

Signatures, retries and the delivery log

  • Signature: an HMAC-SHA256 of the body with the webhook's own secret (it starts with whsec_), sent as sha256=<hex>. The receiver computes the same value and compares to know the request came from ModernMES. The secret is shown once when created and can be regenerated.
  • Retries: a non-2xx response or a 30-second timeout is retried, up to 3 attempts in all.
  • Delivery log: the status, response code and the start of the response of every delivery are on the webhook's detail page. "Test" sends a sample request.
  • Safety: the target is re-checked on every attempt; requests are never sent to private-network or cloud-metadata addresses, and redirects are not followed.

Generic JSON connection: your own ERP transfer

The generic JSON connection is the kind of ERP integration for systems without a ready connector. Your ERP partner or developers write a small endpoint, and ModernMES sends production records to it:

  • Push URL: {"type": "production_receipt", "data": {...}} for finished work and {"type": "scrap", "data": {...}} for scrap are POSTed. data carries the work order number, part code and name, unit, quantity, document date and time, project, operator and machine codes, and the record's unique reference.
  • Pull URLs (optional): one for stock items and one for customers, returning [{"code","name","unit"}] or {"items":[...],"hasMore":true}. Pages are requested with ?page=1,2….
  • Authentication: an optional bearer token. Signature: an optional secret signs timestamp.body with HMAC-SHA256, sent in X-ModernMes-Signature (sha256=…) and X-ModernMes-Timestamp.

Transfers follow the same rules as the ERP connectors: you choose when to send (when the part's last operation finishes, after every operation, or manually), the same finished job is queued only once, an unreachable endpoint is retried 8 times at intervals growing from 1 minute to 12 hours, and every transfer appears in the log.

Which one to use

You wantUse
A dashboard, alerting or automation tool to know about work order changes as they happenWebhooks
Finished work and scrap booked in your ERP, never lost and never booked twiceGeneric JSON connection (ERP integration add-on)
Your stock items and customers in ModernMESThe generic JSON connection's pull URLs

Frequently asked questions

Which events are sent as webhooks?

Today, work order events: created, updated, started, paused, resumed, completed, cancelled and deleted. Tell us if you need others.

How do I verify the signature?

Compute the HMAC-SHA256 of the raw body with the webhook's secret and compare it, in constant time, with the sha256= value in the X-Webhook-Signature header.

Can other systems write data into ModernMES?

Today data flows out of ModernMES through webhooks and the ERP/JSON connection, and stock items and customers come in through the JSON connection's pull URLs. If you need another system to write into ModernMES, talk to us about it.

Does the generic JSON connection cost extra?

It is part of the ERP integration add-on, which is included in Enterprise and can be added to the other plans. Webhooks do not need the add-on.