API & developers

Webhooks: get notified when messages are received, sent or read

Configure a URL in Settings → Webhooks, pick events such as message.received or message.sent, and verify the X-PayPerWA-Signature header.

Last reviewed 21 October 2026

PayPerWA posts a signed JSON payload to your URL whenever one of your subscribed events happens.

Events

  • message.received — a customer sent you a message.
  • message.sent — a message left your number: API, campaign, inbox, chatbot, or typed on the phone (coexistence). The payload's sentFrom field tells you which.
  • message.delivered, message.read, message.failed — Meta status updates.
  • campaign.completed — a campaign finished sending.

Setup

  1. Open Settings → Webhooks, add your HTTPS URL and choose the events.
  2. Copy the secret. Every request carries an X-PayPerWA-Signature header: the HMAC-SHA256 of the raw body using that secret. Verify it before trusting the payload.
  3. Respond with HTTP 2xx within 10 seconds. Failed deliveries are retried and shown in the webhook log on the same page.

Payload fields and sample code are in the API documentation.

Still stuck?

Chat with a person on WhatsApp or raise a ticket with a screenshot. We reply on every ticket by email.

Related articles

Chat with us