PostHog
Capture Zivvy webhook events into PostHog for funnels, cohorts, and retention analysis.
The snag
Growth teams can see product events in PostHog and revenue in the ERP, but never both together — so activation-to-revenue funnels are guesses.
How Zivvy helps
Forward sales-invoices.paid, sales-orders.submitted, and quotations.sent to PostHog capture() so funnels see finance events alongside product events.
Before Zivvy
Handoffs go missing, owners are unclear, audits get painful.
What you get
- PostHog capture() for finance + ops events
- Funnels from product signup → sales-orders.submitted → sales-invoices.paid
- Cohorts by customer_group from /v1/customers
Workflow stream
Common uses
01
Funnel: signup → first order → first payment
02
Cohort of high-value /v1/customers on retention curve
03
Alert on drop in sales-orders.submitted week-over-week
Integration code
Open API referenceSubscribe PostHog consumer
curl -X POST https://integrate.zivvy.xyz/v1/webhook-subscriptions \
-H "Authorization: Bearer $ZIVVY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target_url": "https://api.your-app.com/hooks/posthog",
"events": ["sales-invoices.paid", "sales-orders.submitted"]
}'PostHog capture()
import { PostHog } from "posthog-node";
const ph = new PostHog(process.env.POSTHOG_KEY, {
host: process.env.POSTHOG_HOST
});
export async function POST(req) {
const evt = await req.json();
ph.capture({
distinctId: evt.data.customer,
event: evt.event,
properties: {
amount: evt.data.grand_total,
currency: evt.data.currency
}
});
return new Response("ok");
}API endpoints
Events emitted
HMAC-SHA256 signed webhooks, retried for 24 hours.
- sales-invoices.paid
- sales-orders.submitted
- quotations.sent
0
free seats forever
0
card required to start
1
workspace for the workflow
Questions
Ready to try it?
Free plan. Two seats. No card.