EVENTSHMAC SHA-512
Webhooks & Signatures
Verixa ID sends signed HTTP POST requests to your configured webhook endpoints when events happen in your account.
Verifying Signatures
Each webhook delivery contains a x-verixa-signature header containing an HMAC SHA-512 hash of the raw payload computed with your endpoint signing secret.
Node.js Webhook Handler
const express = require('express');const crypto = require('crypto');const app = express();app.post('/webhook', express.raw({ type: 'application/json' }), (req, res) => { const signature = req.headers['x-verixa-signature']; const secret = process.env.VERIXA_WEBHOOK_SECRET; const expectedSignature = crypto .createHmac('sha512', secret) .update(req.body) .digest('hex'); if (signature !== expectedSignature) { return res.status(400).send('Invalid signature'); } const event = JSON.parse(req.body.toString()); console.log('Received valid event:', event.event); res.status(200).json({ received: true });});