Dunmore

Webhooks

Set up webhook delivery with HMAC verification and automatic retries.

Dunmore delivers payment events to your webhook endpoints with HMAC signatures and exponential backoff retries.

Setup

Create a webhook endpoint in the console or via the API. You'll receive a signing secret (whsec_...) for verifying payloads.

Event Types

  • payment.settled — Payment confirmed on-chain
  • payment.failed — Payment verification or settlement failed
  • endpoint.created — New endpoint registered
  • endpoint.updated — Endpoint configuration changed

Payload Format

{
  "id": "evt_abc123",
  "type": "payment.settled",
  "timestamp": "2026-02-18T12:00:00Z",
  "data": {
    "paymentId": "pay_xyz",
    "amount": "0.01",
    "currency": "USDC"
  }
}

HMAC Verification

Each delivery includes an X-Dunmore-Signature header. Verify it with your signing secret:

const crypto = require('crypto');
const signature = crypto
  .createHmac('sha256', webhookSecret)
  .update(requestBody)
  .digest('hex');

Retry Policy

Failed deliveries are retried with exponential backoff: 1min, 5min, 30min, 2h, 24h.