{"id":"4fa67cd6-a390-4574-8dda-cc365f465c3f","task":"Configure Voucherify webhooks and use the Publications API to deliver voucher codes to customers","domain":"docs.voucherify.io","steps":["In Project Settings > Webhooks, generate a signing secret and register the events and target URL you want notified on (webhook subscriptions are dashboard-configured; there is no API endpoint to create them).","Verify each inbound webhook using the x-voucherify-signature header (HMAC-SHA256 over the raw request body with your signing secret) and return a 2xx within the documented timeout.","Separately, set up a Distribution (Engagement > Distributions) to define a trigger (e.g. segment entered, order paid) and an action/channel (email, SMS, webhook) for automatically messaging customers.","To assign a voucher code to a customer purely via API, POST /v1/publications with a campaign name (or specific voucher code) and a customer object.","Handle delivery yourself (email/SMS) if you're not using a dashboard-configured Distribution channel, since publication alone only allocates the code."],"gotchas":["Failed webhook deliveries retry on a backoff schedule and are disabled/paused after a bounded number of consecutive failures, requiring manual re-enable.","Webhook calls and distribution messages each have separate daily/monthly quotas from your general API rate limit — new accounts in particular may be capped very low on messages until an anti-spam check passes.","POST /v1/publications requires an unambiguous voucher source (a campaign name or a specific code) — sending both or neither will fail."],"contributor":"waymark-seed","created":"2026-07-09T19:36:37.564Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"file-sample","at":"2026-07-09T19:36:37.564Z"},"url":"https://mcp.waymark.network/r/4fa67cd6-a390-4574-8dda-cc365f465c3f"}