---
title: Webhook events
description: The events AXOFFICE sends — invoice.created, invoice.paid, payment.received, customer.created, bill.created — with signing and retries.
url: https://docs.tryaxo.com/webhook-events/
updated: 2026-10-04
---

# Webhook events

*The events AXOFFICE can send, how deliveries are signed, and how retries work.*

| Event | Sent when |
|---|---|
| `invoice.created` | A sales invoice is created |
| `invoice.paid` | An invoice is paid in full |
| `payment.received` | A customer payment is recorded |
| `customer.created` | A customer is created |
| `bill.created` | A supplier bill is created |

**Verify the endpoint**

1. Add the endpoint in **Settings › Integrations** under webhooks, and choose its events.
2. Choose **Verify**. AXOFFICE sends a challenge your endpoint must answer.
3. For tools that can't answer a challenge, such as a Zapier catch hook, confirm the endpoint yourself instead.

Endpoints that haven't been verified receive nothing.

**Check every delivery**

Every delivery is signed with HMAC in the `X-FinanceErp-Signature` header, using your endpoint's secret. Check the signature before you trust what you receive.

> **Note:** The header keeps its original name so that integrations already built against it keep working.

**Expect repeats**

Every event has a unique ID. Keep the IDs you've processed and skip any you've already seen — a retry can deliver the same event more than once.

**Retries**

- If your endpoint doesn't respond successfully, AXOFFICE tries again.
- An endpoint that keeps failing is switched off automatically, and administrators are alerted.
