Verifying X-Genesys-Signature-256 in Node.js webhook handler

Quick question, has anyone seen this weird error? with verifying webhook signatures for replay attack prevention. My Node.js handler uses crypto.createHmac('sha256', secret).update(rawBody).digest('hex') but it never matches the X-Genesys-Signature-256 header. The raw body is captured correctly. Am I missing a timestamp validation step or is the secret derivation different for Genesys Cloud webhooks compared to standard HMAC-SHA256 implementations?