API reference
Event
What a webhook message carries: one thing that happened, with the thing itself as the API shows it.
The event object
- object string
- string
- Always "event".
- id id
- id
- The event's id: the same on every retry, so use it to skip ones you've had.
- type string
- string
- What happened: customer.created, vendor.created, product.created, invoice.created, invoice.sent, invoice.paid, invoice.voided, payment.received, bill.created, expense.created, or ping (a test).
- created_at timestamp
- timestamp
- When it happened.
- business_id id
- id
- Whose books it happened in.
- data object
- object
- data.object: the customer, invoice, payment… as GET returns it when the message was first sent ({id, object, deleted: true} if it's gone since).
Sent to webhook endpoints as a POST, signed with TallyPip-Signature. How to check it, and how retries work: Webhooks. The types: customer.created, vendor.created, product.created, invoice.created, invoice.sent, invoice.paid, invoice.voided, payment.received, bill.created, expense.created.
Example
{
"id": "3f6c1e2a-8b4d-4c1e-9a7b-2d5e6f708110",
"object": "event",
"type": "invoice.paid",
"created_at": "2026-10-06T14:30:00.000Z",
"business_id": "3f6c1e2a-8b4d-4c1e-9a7b-2d5e6f708190",
"data": {
"object": {
"object": "invoice",
"id": "3f6c1e2a-8b4d-4c1e-9a7b-2d5e6f708104",
"number": "INV-1042",
"status": "paid",
"…": "…"
}
}
}