Get Real-Time Alerts and Automate Actions Across Your Tools
The moment something happens in Enlivy, an invoice is paid, a transaction lands, a user changes, a webhook fires to your system. React in real time instead of polling for changes or waiting on reports.
Start Today
WHAT IT IS
Real-Time Data. Real-Time Action.
Stay ahead by keeping your systems in sync with instant updates from Enlivy.
Webhooks let your applications react the moment something happens inside Enlivy.
Instead of waiting for reports or building costly polling logic, you receive live event notifications directly to your system.
-
Instant Notifications
Get notified the moment an invoice, transaction, user, or other key event is created or updated, no more delays, no more missed changes.
-
Seamless Automation
Connect Enlivy directly to your apps and workflows. Trigger custom actions, sync with external tools, or power real-time reporting with zero extra effort.
WHAT IT IS
Stay Ahead with Real-Time Data
Enlivy Webhooks ensure your systems are always up to date, giving you complete control over your data and workflows.
By receiving live notifications whenever invoices, transactions, users, or other key events occur, you no longer have to rely on manual checks or delayed reporting.
-
Save Time Automatically
Instant updates mean less manual work and faster response times.
-
Reduce Errors Effortlessly
Your data stays accurate and synchronized across all systems.
-
Simplify Your Integrations
Connect your apps and workflows quickly with minimal setup.
WHY WEBHOOKS
Real-Time, Reliable, and Yours to Shape
Webhooks turn Enlivy into the source of truth your whole stack listens to. Here is what that gives you.
- Instant Event Notifications
The moment an invoice, transaction, or user changes, a signed payload lands on your endpoint. No polling, no waiting on reports.
You always know what is happening, as it happens.
- Fully Customizable
Subscribe to only the events that matter and choose the related data each one carries. Get exactly what your workflow needs, nothing more.
Every payload is shaped by you.
- Smarter Automation
Trigger workflows, notifications, and integrations automatically instead of moving data by hand.
Your systems work for you, not the other way around.
- Centralized Data Flow
Keep every tool, platform, and application synchronized from one live stream of events.
Your team focuses on decisions, not data management.
- Reliable and Always On
Deliveries are consistent and always on, and every send is logged so you can inspect exactly what happened.
You never miss an important update.
- Scalable Integration
Connect in minutes and scale across many endpoints and systems, whether you track a few events or hundreds.
Automation stays simple at every scale.
API Reference
Webhooks & Event Delivery from the API
Get notified the moment something happens in your account. An event destination is an endpoint, an HTTPS webhook or a Slack channel, that subscribes to the events you care about (an invoice paid, a contract updated, a bank transaction created) and receives a signed payload each time one fires.
Every send is recorded as a delivery, so you can inspect exactly what was sent and how your endpoint responded. This reference covers the full loop: create and adjust destinations, subscribe them to events, fire a test, delete them, and read the delivery logs and their data.
List your configured destinations. Retrieve a single one with its subscribed events and recent deliveries by expanding the includes.
const base = "https://api.enlivy.com";
const organizationId = "your_org_id";
const token = "YOUR_TOKEN_HERE";
const headers = {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json"
};
// list all destinations
fetch(`${base}/organizations/${organizationId}/event-destinations`, {
method: "GET", headers
});
// one destination, with its subscriptions and deliveries inline
const destinationId = "your_destination_id";
fetch(
`${base}/organizations/${organizationId}/event-destinations/${destinationId}` +
`?include=event_subscriptions,event_deliveries`,
{ method: "GET", headers }
); Register a webhook (or Slack) endpoint and subscribe it to events. Each subscribed event can specify which related data to embed and an optional message template. The response includes a signing_secret, use it to verify the signature on incoming webhook payloads.
const base = "https://api.enlivy.com";
const organizationId = "your_org_id";
const token = "YOUR_TOKEN_HERE";
const headers = {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json"
};
fetch(`${base}/organizations/${organizationId}/event-destinations`, {
method: "POST",
headers,
body: JSON.stringify({
type: "webhook", // webhook | slack
name: "My integration",
destination_url: "https://example.com/enlivy/webhooks", // required when type = webhook
is_active: true,
// For Slack instead, drop destination_url and send:
// type: "slack",
// organization_api_credential_id: "slack_credential_id",
// config: { channel: "#billing" },
// subscribe to one or more trigger events (pattern: subject.action)
events: [
{
event: "invoice.paid", // e.g. invoice.created | invoice.paid | contract.updated
includes: ["line_items", "taxes"],
config: { message: "Invoice {{ invoice.number }} was paid" }
},
{ event: "contract.updated" }
]
})
});
// Response includes: id, type, destination_url, signing_secret, is_active, name, config. Update a destination: change its URL, pause or resume it, or re-set the events it is subscribed to. Provide the full events set you want the destination subscribed to.
const base = "https://api.enlivy.com";
const organizationId = "your_org_id";
const token = "YOUR_TOKEN_HERE";
const headers = {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json"
};
const destinationId = "your_destination_id";
fetch(`${base}/organizations/${organizationId}/event-destinations/${destinationId}`, {
method: "PUT",
headers,
body: JSON.stringify({
is_active: false, // pause delivery without deleting
destination_url: "https://example.com/enlivy/webhooks/v2",
events: [
{ event: "invoice.created" },
{ event: "invoice.paid" }
]
})
}); Fire a synthetic event at a destination to verify the wiring end to end. It produces a real delivery record you can inspect in the logs.
const base = "https://api.enlivy.com";
const organizationId = "your_org_id";
const token = "YOUR_TOKEN_HERE";
const headers = {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json"
};
const destinationId = "your_destination_id";
fetch(
`${base}/organizations/${organizationId}/event-destinations/${destinationId}/test`,
{
method: "POST",
headers,
body: JSON.stringify({
event: "invoice.paid" // optional, omit to send a generic test event
})
}
); Read the log of every event sent. Filter by destination, by one or more events, by delivery status, and by date, the fastest way to spot failures and retries.
const base = "https://api.enlivy.com";
const organizationId = "your_org_id";
const token = "YOUR_TOKEN_HERE";
const headers = {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json"
};
const query = new URLSearchParams();
query.set("organization_event_destination_id", "your_destination_id");
// event + status accept arrays, pass each value with a [] suffix
// status: pending | success | failed | dropped | anomaly
["invoice.paid", "invoice.created"].forEach((e) => query.append("event[]", e));
query.append("status[]", "failed");
query.set("created_at_from", "2026-07-01");
query.set("created_at_to", "2026-07-31");
fetch(
`${base}/organizations/${organizationId}/event-destinations/deliveries?${query}`,
{ method: "GET", headers }
); Retrieve a single delivery with its full data: the exact payload Enlivy sent, the HTTP status and body your endpoint returned, and whether it was a retry. Use this to debug a failed delivery.
const base = "https://api.enlivy.com";
const organizationId = "your_org_id";
const token = "YOUR_TOKEN_HERE";
const headers = {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json"
};
const deliveryId = "your_delivery_id";
fetch(
`${base}/organizations/${organizationId}/event-destinations/deliveries/${deliveryId}`,
{ method: "GET", headers }
);
// Returns: event, status, request_payload (what we sent),
// response_status + response_type + response (what your endpoint replied), is_retry. Delete a destination to stop all delivery to it. To pause temporarily instead, set is_active false with a PUT.
const base = "https://api.enlivy.com";
const organizationId = "your_org_id";
const token = "YOUR_TOKEN_HERE";
const headers = {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json"
};
const destinationId = "your_destination_id";
fetch(`${base}/organizations/${organizationId}/event-destinations/${destinationId}`, {
method: "DELETE",
headers
}); Works together with
- API Driven Solution Integrate Enlivy smoothly with other tools and platforms through our robust API, facilitating a connected and scalable ecosystem for your business operations.
- Bank Account Data See every connected account, balance, and transaction in one dashboard. Synced securely, kept current, and linked to the rest of your records.
- Bank Transactions Bring every transaction into one place: synced from your bank, imported from a file, or entered by hand. Then tie each one to the invoice, receipt, or payslip it belongs to, so your records are always connected and reconciled.
- Billing Packages Build a plan once and offer it weekly, monthly, yearly, or anything in between. Customers subscribe, switch cycle, change tier, manage their card, pause, and cancel from a branded portal, with every change previewed, prorated, and collected automatically.
- Billing Schedules Manage every recurring billing relationship in one place. Set up a subscription, retainer, or payment plan, link its invoices and receipts, and see exactly how much has been paid, what is pending, and where each relationship stands.
- Contracts Draft contracts from templates, send them for signature with SMS or email identity verification, and track every signature and renewal. Signed copies are delivered automatically.
- Customer Portal A branded, self-service portal on your own domain where clients accept proposals, pay invoices, manage subscriptions, sign contracts, and submit reports themselves. Every action syncs back to Enlivy in real time.
- Data Export Export your invoices, receipts, payslips, contracts, and transactions in the format and folder structure your accountant expects, for any date range. Built in, no extra cost, ready in seconds.
- Guidelines Document best practices and policies in one place. Keep your team aligned with clear, accessible guidelines.
- Invoices Create a compliant invoice in seconds, send it, and watch it link itself to the contract, payment, and bank transaction it belongs to. EU e-invoicing is built in, so the work between issuing and getting paid happens in one place.
- MCP Connect Enlivy to Claude, ChatGPT, Cursor, or any AI assistant through MCP. Ask about your invoices, contracts, and pipeline, and get real work done, safely scoped to exactly what your own account can already do.
- Network Exchanges Send and receive e-invoices automatically, straight through ANAF eFactura today, with PEPPOL and other EU platforms on the same rails. Incoming invoices pull in on their own, outgoing ones push out on your schedule, and every exchange keeps a full history. No XML files, no manual uploads.
- Payslips Build a payslip template once with the fields your business needs, then generate payslips for every employee in minutes. Each one links to its contract, payment, and bank transaction, so the whole record stays connected and traceable.
- Playbooks Design, execute, and refine step-by-step procedures for any workflow. Ensure consistency, reduce errors, and guide your team through repeatable tasks with built-in structure and clarity.
- Products Build a reusable catalog of everything you sell, services or goods, with pricing, units, tax settings, and descriptions set once. Every product is ready to drop into a quote or invoice in seconds.
- Proposals Turn a won opportunity into a professional, itemized proposal your client can review, accept, and pay in one flow, all connected to your products, prospects, and invoices.
- Prospects Track every opportunity from first contact to paid invoice, with a complete activity history, automatic status-driven emails, and client collaboration built in.
- Receipts Receipts gives you a structured record of every payment, money in and money out: linked to your invoices and contracts, with your cashflow always up to date.
- Reports Replace scattered updates in chat and email with structured reports your team fills in on schedule. You define the questions once with a reusable schema, the right people get the right report at the right time, and every answer lands in one place, ready to compare.
- Slack Integration Stop checking dashboards to find out what changed. Enlivy brings the important moments from your business directly into Slack, from payments and proposals to contracts and customer activity. Connect once, choose your events, route them to the right channels, and keep your team aligned in real time.
- Taxes Stop picking VAT rates by hand. Assign a tax class to a product or invoice line and Enlivy resolves the correct rate automatically, based on who the customer is and where they are, with the right EU codes for e-invoicing built in.
- User Roles Give every user the right access with role-based permissions. Decide who can invoice, run payroll, or reach the back office, and adapt roles as your team grows.
- Users Easily customize roles and permissions in Enlivy for clients, partners, accountants, and administrators, ensuring secure and efficient access with full audit trails for compliance.