Use webhook.NewVerifier with your webhook secret, then pass the unmodified payload and the UQPAY signature headers to ConstructEvent.
Before implementing verification, configure a notification URL and review the webhook delivery and security model.
The verifier computes HMAC-SHA512(secret, rawPayload + timestamp), rejects timestamps outside the default five-minute replay window, and parses the common event envelope.
Verify the original request bytes before decoding JSON. Re-serializing the payload changes the signature input.
Webhook event types remain strings so new server events can be received before a typed payload helper is added.