Invoices
Create, send and track invoices, with EU e-invoices built in
Issue an invoice and email it to your client. A card payment goes to your own Stripe account and the invoice is marked paid. A bank transfer you mark paid yourself.
Send your first invoiceFree account, no card needed.
INVOICING IN ENLIVY
Issue the invoice, send it and see when it is paid
Each invoice keeps its number, its payment and the documents that belong with it.
Create invoices with your numbering and your tax rules, and email each one to your client from your connected mailbox. The invoices your suppliers send you go in the same list. Each invoice also downloads as an e-invoice in the EU standard (EN 16931), as Peppol BIS 3.0 or a national variant for some countries. You can also export the month's invoices for your accountant.
The contract, receipt and bank transaction that belong with an invoice stay beside it, so your team sees which payments still need attention.
-
Your numbering, checked
For each prefix, such as INV or RO-2025, Enlivy numbers invoices in order and can restart every year. A prefix's next number can never go back to one already issued.
-
Any currency, the client's language
Bill clients abroad in their currency, with a translation of the invoice in their language.
-
Paid by card or by transfer
When your client pays by card, the money goes to your own Stripe account and Enlivy marks the invoice paid. For a bank transfer, you mark the invoice paid yourself. With the Banking pack, you can also link the bank transaction to it.
-
Reuse and schedule invoices
Reuse an invoice for a repeat order without retyping it, or give it a future issue date. It waits as Scheduled until that day, and then you send it.
-
Find any invoice
Search and filter by client, status, tag or amount, even months later.
MORE ON INVOICING
The invoices you receive, and getting paid on the ones you send
Each has its own page, with the steps in the app.
-
Supplier invoices
Drop a supplier's PDF. Enlivy fills in the invoice, offers to create the supplier and checks that it is not already filed.
Learn more -
Getting paid
Clients pay by card through your own Stripe account. Payment links and reminders follow up on what is still due.
Learn more
EU E-INVOICES
E-invoices in the EU standard
Download any invoice as an e-invoice in the EU standard (EN 16931), as Peppol BIS 3.0 or a national variant for some countries. Where Enlivy connects to the national system, it also sends and receives them for you.
Explore Network ExchangesPrepare and send an invoice
Choose the client, add the lines, check the invoice and issue it. Then send it and record the payment when it arrives.
-
Start from the Invoices section
Go to Invoices in the left menu and click Add Invoice. Then choose one of two types:
- Internal Invoices: created in Enlivy for the work or products you sell.
- External Invoices: made in another tool, which you record by hand or import.
-
Set the basics
Enter the key details:
- Direction (outgoing or incoming)
- Issue date and due date
- Prefix and invoice number
- Payment method and bank account
- Sender and receiver, the people or companies involved
-
Add invoice items
Add what you are invoicing:
- Products or services
- Units and quantities
- Product type: service, physical, digital, bonus or penalty
- Unit prices, discounts and the tax class and rate for each line
-
Your invoice is ready
Once it is issued, download its PDF or email it to the client from your connected mailbox. To refund the client, in full or for chosen lines, issue a credit note.
Proposals, contracts, invoices and payments
Create your first invoice today
Issue an invoice, email it to your client and see when it is paid.
- Free to start
- No credit card required
- EU e-invoices (EN 16931, Peppol BIS 3.0)
IN THE READER'S LANGUAGE
Issued in your language, with a translation in the recipient's
Add translations to your products and invoice lines, and the invoice uses them. An issued invoice keeps the wording it was issued with, so later product edits do not change it.
{
"en": "Invoicing",
"ro": "Facturare",
"de": "Rechnungsstellung",
"fr": "Facturation",
"nl": "Facturatie",
"da": "Fakturering"
} | English | Invoicing | / month |
|---|---|---|
| Română | Facturare | / lună |
| Deutsch | Rechnungsstellung | / monat |
| Français | Facturation | / mois |
| Nederlands | Facturatie | / maand |
| Dansk | Fakturering | / måned |
Translations work the same way as on products.
On your dashboard
See what is paid, what is due and what is late
-
Know what's coming in
Invoice Analytics shows the invoices you issued in a period by status (paid, scheduled or outstanding) and the client of each.
-
Track what's going out
Add the same widget for the invoices you receive, to see what you have paid suppliers and what you still owe them.
-
Compare periods
Put invoiced totals for up to four periods side by side, such as this quarter against the last.
-
See what is overdue
Action Required counts your overdue invoices, the ones you sent and the ones you received, and opens the list filtered to them.
EVENT TRAIL
See who changed an invoice, and when
Enlivy records each change to an invoice: who created it, who changed a line, who changed the status, and when.
-
Each change recorded
Created, updated, finalized, status changed, line changed. Each change is logged, with nothing for you to enter.
-
Who did it and from where
Each entry shows who acted and from where: the back office, the client portal, a scheduled task, a webhook or the system. You can tell a person's change from an automatic one.
-
Dated to the minute
Each entry carries its date and time, so you can follow an invoice from creation to finalization.
-
System actions included
Automatic events, such as finalization, appear under System, so a change nobody made by hand is still explained.
-
One click to the invoice
Each entry links to the invoice it refers to.
AFTER YOU SEND
Keep numbering in order and see what was sent
Each invoice takes the next number of its prefix when it is issued, and no number is used twice. Each invoice shows whether it was emailed and its e-invoice status, so your team sees what still needs attention. If an e-invoice connection lapses while scheduled sending is on, reconnect it, and Enlivy schedules the unsent invoices from the last 30 days again.
API reference
Invoice management from the API
Integrate directly with Enlivy through our public API for programmatic access to your account data: invoices, receipts, transactions, products, users, contracts, and more.
The examples below cover the most common invoicing operations: listing invoices, retrieving a single invoice, creating a new one, and updating existing invoice data.
Display a list of recent invoices in your dashboard. Query invoices for your organization with pagination, filters, and metadata. You can also expand invoice details such as line items and taxes.
/organizations/<organization_id>/invoices curl -G 'https://api.enlivy.com/organizations/<organization_id>/invoices' \
--data-urlencode 'page=1' \
--data-urlencode 'limit=20' \
--data-urlencode 'include=invoice_prefix,tag_ids,line_items,taxes' \
--data-urlencode 'include_meta=navigation' \
-H "Authorization: Bearer $ENLIVY_API_TOKEN" \
-H 'Accept: application/json' const baseUrl = "https://api.enlivy.com" ;
const token = process.env.ENLIVY_API_TOKEN;
const organizationId = "<organization_id>";
const query = new URLSearchParams({
page: "1",
limit: "20",
include: "invoice_prefix,tag_ids,line_items,taxes",
include_meta: "navigation",
});
const result = await fetch(`${baseUrl}/organizations/${organizationId}/invoices?${query}` , {
method: "GET",
headers: {
Authorization: `Bearer ${token}`,
Accept: "application/json" ,
},
}).then((response) => response.json());Retrieves detailed information about a specific invoice within your organization. Use this to access invoice data such as totals, line items, status, taxes, tags, and more.
/organizations/<organization_id>/invoices/<invoice_id> curl -G 'https://api.enlivy.com/organizations/<organization_id>/invoices/<invoice_id>' \
--data-urlencode 'include=invoice_prefix,tag_ids,line_items,taxes' \
-H "Authorization: Bearer $ENLIVY_API_TOKEN" \
-H 'Accept: application/json' const baseUrl = "https://api.enlivy.com" ;
const token = process.env.ENLIVY_API_TOKEN;
const organizationId = "<organization_id>";
const invoiceId = "<invoice_id>";
const query = new URLSearchParams({
include: "invoice_prefix,tag_ids,line_items,taxes",
});
const result = await fetch(`${baseUrl}/organizations/${organizationId}/invoices/${invoiceId}?${query}` , {
method: "GET",
headers: {
Authorization: `Bearer ${token}`,
Accept: "application/json" ,
},
}).then((response) => response.json());Creates a new invoice under your organization. You can include detailed data such as sender and receiver users, invoice prefix, currency, line items, and more.
/organizations/<organization_id>/invoices # source (internal), direction (outbound) and type (standard) take their defaults when left out.
curl -X POST 'https://api.enlivy.com/organizations/<organization_id>/invoices' \
-H "Authorization: Bearer $ENLIVY_API_TOKEN" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"organization_receiver_user_id": "<org_user_receiver_id>",
"status": "draft",
"currency": "EUR",
"payment_method": "bank_transfer",
"delivery_method": "email",
"line_items": [
{
"name_lang_map": {
"en": "Web Development Services"
},
"quantity": 10,
"price": 75,
"type": "service",
"organization_tax_class_id": "<tax_class_id>"
}
]
}'const baseUrl = "https://api.enlivy.com" ;
const token = process.env.ENLIVY_API_TOKEN;
const organizationId = "<organization_id>";
// source (internal), direction (outbound) and type (standard) take their defaults when left out.
const result = await fetch(`${baseUrl}/organizations/${organizationId}/invoices` , {
method: "POST",
headers: {
Authorization: `Bearer ${token}`,
Accept: "application/json" ,
"Content-Type": "application/json" ,
},
body: JSON.stringify({
// the customer the invoice is issued to
organization_receiver_user_id: "<org_user_receiver_id>",
// draft | pending | sent_email | paid | ...
status: "draft",
currency: "EUR",
// bank_transfer | card_payment | cash | ...
payment_method: "bank_transfer",
delivery_method: "email",
line_items: [
// or send organization_product_id to bill one of your products
{
name_lang_map: { en: "Web Development Services" },
quantity: 10,
price: 75,
type: "service",
organization_tax_class_id: "<tax_class_id>",
},
],
}),
}).then((response) => response.json());Update an existing invoice’s content such as its status (e.g. issued, paid, canceled), payment method, due date, number, tags, notes, and product lines.
/organizations/<organization_id>/invoices/<invoice_id> curl -X PUT 'https://api.enlivy.com/organizations/<organization_id>/invoices/<invoice_id>' \
-H "Authorization: Bearer $ENLIVY_API_TOKEN" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"status": "paid",
"payment_method": "bank_transfer",
"due_at": "2026-07-31T09:00:00Z"
}'const baseUrl = "https://api.enlivy.com" ;
const token = process.env.ENLIVY_API_TOKEN;
const organizationId = "<organization_id>";
const invoiceId = "<invoice_id>";
const result = await fetch(`${baseUrl}/organizations/${organizationId}/invoices/${invoiceId}` , {
method: "PUT",
headers: {
Authorization: `Bearer ${token}`,
Accept: "application/json" ,
"Content-Type": "application/json" ,
},
body: JSON.stringify({
// partial update, only the fields you send are touched
status: "paid",
payment_method: "bank_transfer",
due_at: "2026-07-31T09:00:00Z",
}),
}).then((response) => response.json());Where it fits
Part of these setups
Each page follows one way of selling and shows what your client does, which features you use and what they cost.
- Agencies and studios Core Numbered with your own series, in the client's currency. See the setup
- Course authors Core Issued with your own numbering and tax settings, and emailed from your own mailbox once you connect it. See the setup
- Monthly billing Core Numbered with your series, in the client's currency. Emailed if you turn that on. See the setup
- Sales teams Core Issued from the accepted proposal, with your numbering and the agreed prices. See the setup
Works together with
- Billing Schedules Each cycle, Enlivy issues the invoice at the agreed price, emails it to your client and charges the saved card. You see what is paid and what is still due.
- Network Exchanges Network Exchanges turns each invoice you issue into an e-invoice in the EU standard (EN 16931), ready to download. Where Enlivy is connected to a national e-invoicing system, today Romania's, it also sends and receives them for you.
- Receipts Record money in and money out, keep the payment file with each receipt, and let Enlivy issue the receipt when you mark an invoice paid with one of the payment methods you set for automatic receipts.
- Taxes Give a product or invoice line a tax class, and Enlivy applies the rate that fits the customer's status and location. For companies based in 32 European countries, Enlivy keeps ready-made classes up to date.
- 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 add to a proposal or invoice.
- Document Intake Drop a supplier invoice or a receipt. With your own AI key, Enlivy fills in the form for you to check and save.
- Dashboard Start the day with what is waiting on you, such as overdue invoices or bank transactions to classify, and open the list behind each one. Arrange the widgets for yourself, or for the whole team if you manage the organization.
- Tasks Keep your team's work beside the invoices, leads and projects it concerns. Tasks are included for every organization at no extra charge, with no limit on the number of tasks.
- Payslips Your accountant works out the figures, and you record each amount in Enlivy on its own line, under your country's payroll code. Enlivy checks that the lines match the payslip's totals.
- Data Export Choose the period and the record types, and download one archive for your accountant, with a summary spreadsheet for each type if you want one. Free on every plan.
- MCP Connect Claude, ChatGPT, Cursor, or another MCP-compatible assistant to work with your invoices, contracts, and pipeline, within your own permissions.