invoice.paid

Emit when an invoice transitions to paid. Receivers typically unlock access, send receipts, or sync billing state.

Example payload

json
{
  "id": "inv_1",
  "amount": 4900,
  "currency": "usd",
  "status": "paid",
  "customer_id": "cus_123"
}

Standard Webhooks headers

Deliveries include webhook-id, webhook-timestamp, and webhook-signature. See the envelope page for the full table.

Verify

ts
import { Webhook } from "standardwebhooks";

const wh = new Webhook("whsec_...");
const payload = wh.verify(rawBody, {
  "webhook-id": headers["webhook-id"],
  "webhook-timestamp": headers["webhook-timestamp"],
  "webhook-signature": headers["webhook-signature"],
});