Ir al contenido

Los artículos de ayuda existen en alemán e inglés. Aquí los lees en inglés.

Instalación

Can Metrunio notify my system?

By webhook, from Growth: under “Data connections → Webhooks” you enter an https address and choose the events. Metrunio calls it for every new order or lead, refund, alert and completed cost sync, signed. It carries no browser or customer identifier, but it does carry the order or lead identifier, value and time, and these can be personal data.

How do I get new orders, refunds and alerts into my CRM by webhook?

This is the opposite direction to “Can my system report conversions by webhook?”: there your system reports to Metrunio, here Metrunio reports to your system. Webhooks come with Growth and above, together with the read API and MCP.

EventWhenWhat it contains
conversion.createdan order, lead or funnel step has been countedID, type, time, website, order or lead ID, value, set value, currency
conversion.refundeda refund has been bookedconversion ID, order number, refunded amount, total of all refunds, status
alert.triggeredan alert has firedkind of alert and its figures
cost_sync.completeda cost sync has taken over figuresplatform, period, rows taken over and rows not matched
{
  "id": "conversion:5f0c…",
  "type": "conversion.created",
  "created_at": "2026-10-10T09:41:00.000Z",
  "data": {
    "conversion_id": "5f0c…",
    "type": "purchase",
    "order_id": "10045",
    "value": 89.9,
    "set_value": 0,
    "currency": "EUR",
    "environment": "production"
  }
}

Verifying the signature

Every delivery carries the x-metrunio-signature header with t=<seconds>,v1=<hex>. v1 is HMAC-SHA256 over "<t>.<raw body>" with your signing secret, built as for incoming requests. Verify the signature on the raw body before processing it, and discard deliveries whose timestamp is older than five minutes.

import { createHmac, timingSafeEqual } from 'node:crypto';

export function verify(header, rawBody, secret) {
  const parts = Object.fromEntries(header.split(',').map((part) => part.split('=')));
  if (Math.abs(Date.now() / 1000 - Number(parts.t)) > 300) return false;
  const expected = createHmac('sha256', secret).update(`${parts.t}.${rawBody}`).digest();
  const received = Buffer.from(parts.v1 ?? '', 'hex');
  return received.length === expected.length && timingSafeEqual(received, expected);
}

The portal shows the signing secret exactly once, when you create the webhook. If it gets lost, renew it with “Renew secret”; the old one stops working.

Delivery and retries

  • A 2xx response counts as delivered. Otherwise Metrunio retries after 1, 5, 15 and 60 minutes, then after 3, 6 and 12 hours; after 24 hours it gives up.
  • Every attempt carries the same ID (id in the body, x-metrunio-delivery in the header). Process an event only once.
  • Ten seconds per attempt. Metrunio does not follow redirects.
  • Only https on port 443. Metrunio cannot reach addresses in your own network (localhost, private addresses).
  • “Send test delivery” sends a signed ping event to the address; the log shows the last 50 deliveries.

Note

The payload contains no browser or customer identifier, no click ID and no page address. It does contain the order or lead identifier, value and time, and through them a person can be found in your shop or CRM; treat the deliveries as personal data for that reason. If you need the channel and campaign of an order, ask the read API with the conversion ID.

  • Production data only: a live test of your setup does not trigger a webhook.
  • At most five webhooks per company.
  • The log is kept for 30 days. Metrunio keeps the content of a delivery only until it has been delivered, given up or withheld.
  • If you erase the data for an order number under "Privacy" or carry out an objection, Metrunio discards pending deliveries for it, retries included. The same applies when a visitor withdraws consent and the order is deleted as a result. The log then shows the delivery as "not sent (privacy)".
  • Before every attempt Metrunio also checks whether the order number has been suppressed or the order deleted in the meantime. If so, nothing goes out.
  • Deliveries that had already gone out are recorded when the request is carried out: endpoint, address and time go into the change log entry of the request (180 days) and into the API response. That lets you inform the recipient under Art. 19 GDPR. The delivery log itself is kept for 30 days.
  • If your plan drops below Growth, no new deliveries go out; the webhooks stay in place.

Zapier and Make accept webhooks through a module of their own (“Webhooks by Zapier” at Zapier, “Webhooks” at Make). Enter the address it gives you here.

Revisado por última vez el 15 oct 2026

En el portal del cliente

Go to webhooks

También se pregunta

  • Outgoing webhook
  • Send conversions to my CRM
  • Report new orders to my own system
  • Connect Zapier
  • Connect Make
  • Verify the webhook signature
  • Receive events from Metrunio

Artículos relacionados

  • Can my system report conversions by webhook?

    When do I use the webhook instead of the Server Events API?

    The endpoint POST /v1/webhooks/conversions is meant for systems that fire a webhook of their own rather than letting you program an API call. It always requires a valid signature.

  • How do I sign server-side requests?

    How does the HMAC signature and replay protection work?

    Send the header x-metrunio-signature with a timestamp and an HMAC-SHA256 over "<timestamp>.<raw body>", computed with the server key. The time window is five minutes and each signature is accepted exactly once.

  • How do I get alerts and reports in Slack or Teams?

    Can Metrunio send alerts to a Slack or Teams channel?

    Through a webhook address, on every plan: under “Settings → Notifications” you enter the webhook address of a Slack or Teams channel and choose alerts, reports or both. The message is a short summary with a link to the portal, in German or English.

  • What does Metrunio cost?

    Which plans are there, and what happens if I go over?

    Five plans, tiered by events per month: Start (free), Pro (€79), Growth (€249), Scale (€599) and Agency (€299 with two client accounts, €49 per further one, 250,000 events per client account); every four delivered impressions count as one event. Above the allowance, every started 10,000 events cost €3, and a plan never costs more than the next plan up would cost at the same volume.

Mira lo que cuentan tus datos.

Echa un vistazo primero a la demo. Por ahora, solo hay cuenta propia con invitación.

Abrir la demoSolicitar acceso