Skip to main content
Older updates: 2025 · 2024 · 2023 · 2022
AI agentsIntegrationsRevenue recognitionInvoicing

The Dunning Agent: chase the customer, not the calendar Beta

A dunning campaign is a timer. Day 3, day 7, day 14, the same ladder for everyone. So it sends a past due notice to the customer who has paid on day 8 for two years, chases the face value of an invoice a partial payment already covered, and emails “please pay your invoice” to someone whose card simply expired.The Dunning Agent reads the account before it writes the email: twelve months of invoices and payments, the disputes, the provider status.
  • It waits on customers who aren’t a problem. Reliably eight days late and six days overdue is not a collections issue.
  • It chases the net, never the face value. Payments and credit notes come off first.
  • A declined card gets a card-fix link, not a reminder. And a retry, once, through the provider you already connected.
  • Large or unanswered accounts go to a person, with the reason and the next step, in Slack.
The model drafts. Deterministic code decides. It re-reads the invoice a moment before sending, so one paid in the meantime is never chased.Learn more
Beta. Available on request. Contact us for access. It sends email and re-attempts real charges, so start with a dry run.

Revenue Recognition: from what you billed to what you earned Alpha

Lago revenue recognition report showing recognized and deferred revenue by period.
Invoicing tells you what you billed. Your auditor, your board, and your accountant want to know what you earned. For subscription and usage-based businesses, those are almost never the same number in the same month.A customer pays $1,200 in January for a year of service. January didn’t earn $1,200. It earned one month of revenue and eleven months of obligation. Today someone on your team rebuilds that in a spreadsheet, every month, for every contract, and hopes the tabs still tie out.Revenue Recognition does it for you. Lago already holds the invoices, subscriptions, usage, payments, credit notes, and wallets. It now turns all of it into accrual-basis revenue, period by period.
  • Earned, not billed. Revenue follows the service period, not the invoice date and not the payment date. Bill annually, monthly, upfront or in arrears: the revenue still lands in the month you delivered.
  • The reports finance already works in. Recognized revenue, deferred revenue, a waterfall showing when everything you’ve booked releases into revenue, plus a balance sheet and income statement built from your billing activity.
  • ASC 606 and IFRS 15 by construction. Not a compliance badge. Recognition is driven by delivery, advance billings sit as a liability until earned, delivered-but-unbilled work sits as an asset, and tax never counts as revenue.
  • Every number traces back. Drill any figure down to the balanced journal entry and the invoice or subscription behind it. Recognized plus deferred always reconciles to what you invoiced.
  • Built for the close. Export any report to reconcile against your general ledger and post into your accounting system or ERP.
  • Nothing to configure. No allocation rules, no recognition methods, no account mappings. Lago reads how you already bill and applies the logic.
Your billing data and your revenue reporting stop being two separate jobs.Available as a premium add-on on request ✨Learn more
Alpha. Released gradually, account by account, so the figures get validated against real ledgers and real closes first. Reports, exports, and edge-case treatment can still change between releases, so reconcile the output before you rely on it for a statutory close.

Databricks AI Gateway: hosted models in tokens, BYOK in dollars

Lago billing configuration for Databricks AI Gateway usage, separating hosted-model and BYOK traffic.
Databricks AI Gateway fronts two kinds of traffic. Hosted foundation models that Databricks serves and bills you for in DBUs. And BYOK calls, where Databricks proxies your own OpenAI or Anthropic credential and records the vendor’s cost. They bill differently, so the Lago Agent SDK treats them differently.Bill as calls happen. There is no Databricks client to wrap. You wrap the OpenAI or Anthropic client you already use, pointed at your workspace:
The base_url does the routing. /ai-gateway/mlflow/ marks a call as Databricks-hosted. The BYOK paths keep their real vendor, so those calls price against the vendor’s rate card as normal.Or backfill from Databricks’ own books. Point the SDK at the system.ai_gateway.usage table and bill usage that already happened:
  • BYOK rows bill the metered dollar cost. Databricks records the vendor’s USD per call. The SDK bills that number, not a rate-card estimate.
  • Hosted rows bill as token counts. Databricks publishes no per-request dollar figure for its own models, and prices them well above the open-weight rate cards, so the SDK deliberately never prices them. You set the rate in Lago.
  • Re-run any window safely. Event ids derive from the source row, so a re-run has Lago reject the duplicates instead of billing them again.
  • Per-call attribution. Set Databricks-Ai-Gateway-Request-Tags with a lago_subscription and every call carries its own subscription. The backfill reads the same tag, so the two paths agree on who pays.
Use each for different traffic: live events for current calls, backfill for the windows the live path never covered.Available in both the Python and JavaScript / TypeScript SDKs. Both fully open source.Learn more

Cloudflare AI Gateway: bill what your gateway actually metered

Lago billing view for Cloudflare AI Gateway usage, including cached and non-cached calls.
If your AI features run through Cloudflare AI Gateway, your gateway already knows things your billing does not. It serves some responses straight from its own cache, so those calls cost you nothing. And it meters the real cost of every call it does forward.Standard metering throws both away. It counts the tokens in the response and prices them off a public rate card. So you charge customers for cached responses you never paid for, and your revenue drifts from the invoice your provider actually sends you.The Lago Agent SDK now reads the gateway, two ways.Bill as calls happen. Same wrap(), same code. Change a URL:
On non-streaming OpenAI and Anthropic calls, the SDK checks whether Cloudflare answered from cache. If it did, the model was never called, so nothing is billed. Your customer does not pay for a request that never left Cloudflare.Or bill from the gateway’s own books. Point the SDK at the gateway’s logs and it bills Cloudflare’s metered cost per call. Not our estimate of what the call cost. The number Cloudflare charged you.
  • The real figure, not a rate card. Cloudflare reports an exact cost per call. On this path the SDK bills that number and skips its own price lookup entirely, so the cost you bill on is the cost you were charged, before you add your own margin. One caveat: Cloudflare’s figure leaves out reasoning tokens, so bill thinking-heavy models in token mode instead.
  • Bill history you never metered. Your gateway kept logging while you were still wiring up billing. Backfill as far back as its log retention goes, and re-run it as often as you like: pass each entry’s log id as the event key and Lago rejects the duplicate instead of billing it again.
  • Cache hits settle themselves. Cloudflare logs a cache hit with zero tokens and zero cost, so a backfilled cache hit bills zero without you filtering anything.
  • Workers AI, priced from source. Give the SDK a Cloudflare account id and API token and it prices Cloudflare’s own models from Cloudflare’s own catalog. No price file to maintain.
  • Every provider, one gateway. OpenAI, Anthropic, Mistral, Gemini, Workers AI. Each event is tagged with the model that actually served it, so one billable metric can charge a different rate per provider.
Use each for different traffic and you get both: live events so customers see usage right away, and a backfill for the windows the live path never covered. Pointing both at the same calls would bill them twice — the two paths share no idempotency key.Available in both the Python and JavaScript / TypeScript SDKs. Both fully open source.Learn more

Sign in to Lago with Microsoft Entra ID

Lago single sign-on settings with Microsoft Entra ID configured as an OIDC provider.
Single Sign-On (SSO) now supports Microsoft Entra ID. Alongside Google and Okta, your team can sign in to Lago using their corporate Microsoft accounts through OpenID Connect (OIDC).Setup takes just a few fields. Once configured, your team signs in with their existing Microsoft account—no additional usernames or passwords to manage.What you can do:
  • Connect Microsoft Entra ID by adding your client ID, client secret, and tenant ID in Settings → Authentication.
  • Custom Microsoft login domains are also supported.
  • Sign in or accept invitations using a corporate Microsoft account, as long as the Entra ID email matches the email used in Lago.
  • Control authentication methods by choosing which login providers are allowed for your organization.
Available as a Premium add-on on request ✨Learn more
AI agentsInvoicingAnalyticsBilling entities

AI Finance Assistant (Beta): ask your billing data anything, get the report

Lago AI Finance Assistant answering a billing data question and returning a generated report.
BetaThe AI Finance Assistant is currently in beta. Results are AI-generated and can contain mistakes, so review each report before relying on it or sharing it.
Your numbers, one question away. The AI Finance Assistant turns plain-text questions into aggregated reports. Ask “What was my MRR by plan last quarter?” or “How much did EU customers pay in June?” and Lago reads your data and hands back the answer. No dashboard to build, no filters to set, no SQL to write.
  • Just ask: Type what you want to know in your own words. Revenue, invoices, payments, usage, customers. The assistant does the aggregation.
  • Preview, then export: In the app you get a clean preview of the data. Need every row? Export the full CSV in one click.
  • Where you already work: Open it from the side panel, or query the same data through the Lago MCP Server from Claude, your own agent, or any MCP client.
  • Reporting, not operations: The Finance Assistant is read-only. It answers questions and never touches your data.
Learn more

Delete draft invoices: erase billing mistakes before they become real

Lago draft invoice with the delete action available during the grace period.
Grace periods exist to catch mistakes before an invoice becomes real. Until now, there was nothing you could do about the biggest one: a draft that should never have been generated. A duplicate subscription producing two drafts. Test data leaking into production. A misconfigured charge generating nonsensical fees. Your only option was to let the draft finalize, then void it. That leaves a numbered, zero-value invoice in your records and a question from your auditor.You can now delete a draft invoice. It disappears as if it had never been generated. No accounts receivable entry, no invoice number consumed, no voided record to explain. The subscription stays active and billing resumes cleanly from the next period.This is safe because a draft has no footprint yet: no email sent, no payment attempted, no sync to your accounting or tax stack. Deleting one removes it from every view, export, and analytics surface. The action itself stays traceable: an audit log entry records who deleted what, and an invoice.deleted webhook fires with the full payload before the invoice disappears.
  • Draft-only, by design: finalized invoices keep their paper trail and can only be voided.
  • A dedicated permission: invoices:delete, granted to Admins by default, so you decide who can use it.
  • Dashboard and API: one click in the app, or DELETE /api/v1/invoices/:id.
Two actions, two intents. Void keeps the record because the invoice was real. Delete removes the record because the invoice was a mistake.Learn more

One customer, many currencies and billing entities

Lago customer record billed across several currencies and billing entities.
Until now, a customer was tied to one currency and one billing entity. Billing the same customer in another currency or from another entity required creating duplicate customer records.That limitation is now gone.Customer currency and billing entity now act as defaults, not constraints. When creating a billing object — subscription, coupon, one-off invoice, or wallet — you can choose a different currency or billing entity when needed.Invoices are then issued using the currency and billing entity selected on the object.This makes it easier to manage global customers from a single profile, while keeping settings, payment methods, taxes, CRM sync, accounting sync, and reporting aligned in one place.Learn more

Purchase order numbers on one-off invoices

Lago one-off invoice form with a purchase order number field filled in.
Enterprise accounts payable teams need a purchase order reference to approve an invoice. Without it, the invoice gets sent back and payment is delayed.You can now set a purchase order number when creating a one-off invoice. The reference appears on the invoice your customer receives, ready to be matched and approved on the first pass.
  • In the dashboard: add the PO number directly in the invoice creation form.
  • Via the API: pass purchase_order_number when creating the invoice.
This is the first step for this field: we’ll roll it out to subscriptions and wallets next.Learn more
PaymentsAI agentsInvoicingSubscriptions

Activation Rules: hold a subscription until it’s ready to bill

Lago activation rule holding a subscription until payment is received.
Subscriptions used to start the moment their start date arrived. Sometimes that’s too soon. You want the customer to pay first, or to clear a condition, before access is granted and the meter starts running.Activation Rules put that gate in your hands. Add a rule to a subscription and it stays incomplete until the rule is satisfied. While it waits, no invoice is issued, no usage is billed, and nothing lands in your books. Once the rule passes, the subscription activates and bills exactly like any other. No rules means nothing changes: subscriptions activate on their start date as they always have.The first rule is payment activation. The subscription stays incomplete until its first payment succeeds, then it activates and the invoice is finalized. If the payment fails, or a timeout you set is reached, the subscription cancels on its own. No access granted, no revenue booked, nothing to clean up. Turn it on when you assign a plan: choose “Activate on successful payment”, set a timeout, confirm.This is the start of a framework, not a one-off. Activation Rules are designed to grow, and payment is the first of more conditions to come.Learn more

German e-invoicing: XRechnung and ZUGFeRD now supported

Lago e-invoicing settings with XRechnung and ZUGFeRD enabled for Germany.
Germany 🇩🇪 is now a fully supported e-invoicing jurisdiction in Lago. Invoices, credit notes, and payment receipts are issued in both formats the German mandate recognizes, with no extra configuration.
  • XRechnung: a pure XML file using UBL (EN 16931), built for machine processing and public-sector portals.
  • ZUGFeRD 2.x: a hybrid PDF/A-3 with embedded CII (UN/CEFACT), readable by a human and a machine from the same file.
Both run on the same UBL and CII templates that already power France. Adding Germany was a template change, not a new engine. That is the point of an open-source, format-first approach: each new jurisdiction reuses the standards underneath instead of rebuilding from scratch.As with France, Lago does not transmit documents to the authorities. You download the XML and upload it to your jurisdiction portal. Turn it on per billing entity in Settings.Learn more

Redesigned plan and subscription experience

Redesigned Lago plan and subscription view with the new structural sidebar.
We’ve revamped the way you navigate and manage plans and subscriptions. A new sidebar gives you a clear view of the plan structure. Expand folders to reveal their contents, then click any item to jump directly to the relevant section.We’ve also redesigned editing under the hood:
  • Faster performance
  • Improved accessibility
  • Simpler editing workflows
Changes are now applied through focused updates, making it easier to manage complex plans and subscriptions with confidence. Take full control of how your plans and subscriptions work.

Agent SDK: bill the dollar cost of LLM calls, with your margin built in

Lago Agent SDK price mode applying a margin on top of LLM token cost.
The Lago Agent SDK already turns LLM token usage into billing events. It can now do the pricing for you. Switch on price mode and the SDK looks up the price of every model you call, computes the dollar cost, applies your markup, and sends Lago one cost event per call. Your LLM costs are centralized in one place, and you decide what to resell them for.
  • Real cost per call: the SDK sends the dollar amount, after your markup, ready to bill on a dynamic charge.
  • Prices fetched for you: live from OpenRouter and the AWS Bedrock public price lists. No API keys, no price file to maintain, refreshed automatically in the background.
  • Your margin, your call: set a markup to resell LLM access at a profit. 1.2 bills your cost plus 20%.
  • Never under-bill: if a price is not available, the SDK falls back to sending token counts and alerts you. It never silently drops usage.
  • Opt-in: the default stays token mode, so nothing changes until you turn it on.
Available in both the Python and JavaScript / TypeScript SDKs. Both fully open source.Learn more

Stripe Shared Payment Token: Lago auto-charges invoices through agent payments

When an AI agent buys on a customer’s behalf, there is no card to type into a checkout page. Stripe issues a Shared Payment Token instead: a scoped credential the agent grants to you, with built-in usage limits, expiry, and deactivation. Lago now reads that token and charges your invoices against it automatically when they are generated. If the token is valid and within its limits, Stripe resolves it to a real payment method and the charge goes through. No extra step in your billing flow.
  • Automatic fallback: the token kicks in only when no other payment method is on file, so existing cards and mandates are never touched.
  • Same receipts: Stripe still issues a real payment method behind the scenes, so last4, payment status, and receipts look exactly like a card charge.
  • Public preview: available behind a flag while Stripe rolls the feature out.
A big thank you to Julien and the Laravel team, who built this contribution.Learn more

Stripe Shared Payment Token: Lago auto-charges invoices through agent payments

When an AI agent buys on a customer’s behalf, there is no card to type into a checkout page. Stripe issues a Shared Payment Token instead: a scoped credential the agent grants to you, with built-in usage limits, expiry, and deactivation. Lago now reads that token and charges your invoices against it automatically when they are generated. If the token is valid and within its limits, Stripe resolves it to a real payment method and the charge goes through. No extra step in your billing flow.
  • Automatic fallback: the token kicks in only when no other payment method is on file, so existing cards and mandates are never touched.
  • Same receipts: Stripe still issues a real payment method behind the scenes, so last4, payment status, and receipts look exactly like a card charge.
  • Public preview: available behind a flag while Stripe rolls the feature out.
A big thank you to Julien and the Laravel team, who built this contribution.Learn more

Presentation group keys: break down usages

Lago charge configuration using a presentation group key to break usage down by dimension.
Pricing group keys already let you price per dimension, with each value billed as its own line item. But sometimes you just want to see a dimension, like usage per instance or per region, without turning it into a separate charge.Presentation group keys do exactly that. Add up to two event properties to a charge, and Lago breaks each fee’s units down across them, on the invoice and in usage, purely for reporting. The fee is still computed and priced once. Two complementary tools: one to price by dimension, one to report on it.
  • No pricing impact: no extra line items, no changed amounts, works with every aggregation type.
  • Your call per key: keep a breakdown on the invoice PDF, or make it API-only.
Available in the dashboard and via the API.Learn more
AI agentsWallets & creditsInvoicingAPI

Free credits for recurring target top-ups

Lago recurring target top-up configured to refill a wallet with free credits.
Recurring target top-ups can now refill a wallet with free credits instead of paid ones. A target top-up tops the balance back up to a fixed amount on every interval, so this is exactly what you need when customers are granted a set allowance of free credits each period.Want every customer to start each month with $5 of free credits? Set a monthly target top-up of 5 with free credits, and Lago tops the balance back up to that amount at the start of every month. No manual grants, no paid charge.
  • Free or paid, your choice: mark the recurring target top-up as free credits so refills never bill the customer.
  • Self-correcting balance: whatever the customer has left, Lago only adds the difference needed to reach the target.
  • Set it once: define the target and interval when creating or editing the wallet, in the dashboard or via the API.
Built for teams that hand out a recurring free allowance and want the balance to reset to that number on its own.Learn more

Lago Agent SDK: Bill LLM tokens without middleware

Lago Agent SDK metering LLM token usage directly from the client library.
You’re launching an AI feature inside your SaaS, or your product runs entirely on top of LLMs. Either way, your costs scale with tokens, and your pricing should too. The hard part has never been the model. It’s the plumbing between the model and the invoice: extracting usage from every provider, normalizing response shapes, batching events, surviving retries, and keeping it all alive in production.The Lago Agent SDK removes that layer. Wrap your existing LLM client in a single line and keep calling it exactly as before. Same arguments, same return shape, same exceptions. The SDK extracts token usage from every response, normalizes it across providers, and streams events to Lago in the background.Wrap once. Bill forever.
  • One-line drop-in: sdk.wrap(client) returns a client that behaves identically. No call-site changes, no refactor.
  • 10 token dimensions captured by default: input, output, cached input, cache writes (5m and 1h TTL), reasoning, tool calls, image, audio. Each one maps to a billable metric you already control.
  • Multi-tenant by design: route every call to the right external_subscription_id via per-call override, request-scoped context (contextvars in Python, AsyncLocalStorage in Node), or a default at init.
  • Production-grade reliability: in-memory buffering, exponential backoff, bounded queue. p99 wrap overhead under 5 ms. Your LLM call is never blocked on Lago.
  • Never breaks your LLM call: instrumentation errors are caught, logged, and optionally forwarded to Sentry, Datadog, or any other observability stack.
Available in Python and JavaScript / TypeScript . Both fully open source.Built for AI or SaaS teams that want to ship usage-based billing the same week they ship their new AI product on top of LLMs.Learn more

Invoice consolidation: Choose what gets bundled into a single invoice

Lago invoice consolidation settings choosing which subscriptions share a single invoice.
Some customers want one tidy invoice covering all their subscriptions. Others need each subscription billed separately, to track a contract independently, bill a different cost center, or simplify internal reporting. Now you can decide, subscription by subscription.By default, Lago automatically consolidates subscriptions into a single invoice when they share the same billing day and the same payment method — fewer invoices for your customers, easier reconciliation for your finance team.
  • Opt out per subscription: set consolidate_invoices to false to keep a subscription on its own invoice, even when others bill on the same day
  • Mix and match: combine consolidated and standalone subscriptions for the same customer
  • Editable anytime: change the setting from the dashboard or via the API whenever the contract or billing arrangement evolves
Available in the dashboard and via API, on the subscription endpoint.Built for teams managing customers with multiple plans, contracts, or cost centers, where invoice structure matters as much as the totals.Learn more
Wallets & credits

Wallet traceability — Follow every credit from top-up to deduction

Lago wallet transaction traceability linking a top-up through to each deduction.
When a customer’s wallet balance drops, you should be able to explain exactly why. Now you can. Wallet traceability gives you full visibility into how credits flow — linking every top-up to the transactions it funded, and every deduction back to its source.
  • Consumptions: for any inbound transaction, see which outbound transactions consumed its credits and how much
  • Fundings: for any outbound transaction, see which inbound transactions funded it and their respective contributions
Available in the dashboard and via API, you can inspect credit flows directly from a wallet transaction or query them programmatically through new endpoints.Built for teams managing prepaid credit systems at scale — where transparency and auditability are critical.To OSS users: this feature requires a migration. Please follow this guide to enable it.Learn more
SubscriptionsWallets & creditsAPISecurity & access

Credit alerts — Never let a customer run out of credits by surprise

Lago wallet alert configured with a credit balance threshold.
Your customers shouldn’t discover they’re out of credits when their service stops working. Now they won’t.Wallet alerts let you set threshold-based notifications on any wallet, so your team and customers know exactly when credits are running low, before it becomes a problem.Set decreasing thresholds (e.g. USD 100, USD 50, USD 10) and Lago fires a webhook every time the balance crosses one. Need continuous monitoring without defining every step? Add a recurring threshold that triggers repeatedly as the balance keeps dropping.
  • 4 alert types — monitor wallet balance or ongoing balance, in currency or credits
  • Up to 20 thresholds per alert — with optional names to distinguish soft warnings from hard limits
  • Recurring thresholds — get notified continuously without creating an endless list of thresholds
  • Webhook-driven — listen for alert.triggered events and plug into your own notification or automation workflows
Whether you’re powering a self-serve credits experience or managing enterprise wallets at scale, wallet alerts give you the control to keep customers informed and revenue flowing.Learn more

Security logs

Lago security logs listing authentication and permission events with actor and timestamp.
Every action that touches your security perimeter is now tracked, searchable, and auditable. Right inside Lago.Security logs give your team full visibility into who did what, and when, across user access, API keys, roles, webhooks, integrations, and more. Whether it’s an API key rotation, a new device login, or a role change, every event is captured with rich context including user, timestamp, and affected resources.
  • Comprehensive coverage: Tracks events across users, roles, API keys, webhooks, integrations, exports, and billing entities
  • Powerful filtering: Slice logs by date range, user, event type, or category to find exactly what you need
  • API-first: Query security logs programmatically via the GET /api/v1/security_logs endpoint
  • Role-based access: Visible to Admins by default, with granular permission support for custom roles
Built for teams that need to meet compliance requirements, investigate incidents fast, or simply want peace of mind that nothing slips through unnoticed.Learn more

Granular API access to plan and subscription charges

Lago API endpoints for managing charges, charge filters, and fixed charges.
You can now manage charges, charge filters, and fixed charges directly through the API — without going through the full plan or subscription payload.Previously, updating a charge required sending the entire plan object. These new dedicated endpoints give you surgical control over individual charges and their pricing rules.
AnalyticsPaymentsUsage & meteringAPI

Multiple payment methods on customer (Beta)

Lago customer record storing several payment methods, including a manual option.
Lago now supports storing and managing multiple payment methods per customer — including manual payments.Need a subscription paid by card, but a one-off invoice handled manually? You can now store multiple payment methods per customer and assign them independently to subscriptions, one-off invoices, and wallet top-ups.Learn more

Reinvented billing analytics

Rebuilt Lago analytics dashboard powered by Apache Superset.
We’ve completely rebuilt analytics in Lago from the ground up, powered by Apache Superset.The old single-purpose dashboards are gone. In their place: a fully composable analytics layer where you can build, customize, and explore the reports that matter to your business: Revenue streams, MRR, usage patterns, credit consumption, and more.What’s new:
  • Composable dashboards — mix and match visualizations to fit your reporting needs
  • Multi-dimensional filtering — slice data by customer, plan, subscription, currency, country, and time
  • Data export — download any chart or dataset as JSON, CSV, or Excel
  • Extensible by design — create custom dashboards for board reporting, product analysis, or customer-level deep dives
Learn more

Filter webhook messages by event type

Lago webhook endpoint configured to receive only selected event types.
You can now choose exactly which events are sent to each webhook endpoint. This gives you full control over the notifications your systems receive and helps reduce unnecessary traffic.We also added new filtering options in the webhook list. You can now filter deliveries by HTTP status, event type, and date range to quickly find and troubleshoot specific messages.Learn more

Resend emails to customers

Lago resend email dialog with To, CC, and BCC recipients.
Need to send or resend an invoice or credit note to a different recipient? You can now resend emails with full control over who receives them. Choose your recipients using To, CC, and BCC fields, making it easy to forward billing documents to different departments or team members. This gives you the flexibility to manage your customer communications exactly how you need.Learn more

Track billing emails in audit logs

Lago audit logs showing billing emails sent for invoices, credit notes, and payments.
Stay on top of your customer communications with email logs now integrated into your audit logs. Track all emails sent by the system for invoices, credit notes, and payments in one centralized location. You can easily filter logs to find specific email types and monitor delivery status, ensuring complete visibility into your automated billing communications.Learn more
InvoicingSubscriptionsSecurity & access

Offset unused amounts when terminating a subscription

Lago subscription termination offsetting the unused amount with a credit note.
With the new credit note offset settings, you can now apply this option when terminating a subscription to offset any unused amount due. The used amount remains payable, while the remaining balance is automatically settled through a closing credit note.Learn more

Fixed charges are now available in plans

Lago plan with a fixed charge added alongside usage-based charges.
You can now add fixed charges to your plans to bill recurring fixed fees, independently of usage.This unlocks common pricing patterns such as platform fees, seat licenses, support plans, or contractual fees. Fixed charges are managed directly at the plan level and billed automatically with subscriptions. There’s no need to rely on one-off invoices anymore.Learn more

Offset invoice amount due with credit notes

Lago credit note applied to offset the remaining amount due on an invoice.
Overcharged a customer? Issued an invoice by mistake? No problem.You can now use a credit note to offset the remaining amount due on an invoice. The credited amount is immediately deducted from the invoice balance, keeping your records accurate and cleanLearn more

Define custom roles and permissions

Lago custom role configuration with granular permissions selected.
We have introduced Custom Roles and Permissions to give organizations full control over user access within Lago and your billing data. You can now create an unlimited number of custom roles and define precise permission sets that match your team’s responsibilities and workflows. This allows you to grant users only the access they need, improving both security and operational clarity.Key capabilities:
  • Create and manage unlimited custom roles;
  • Assign granular permissions to each role;
  • Automatically propagate permission changes to all users assigned to a role; and
  • Ensure continuous platform governance by maintaining at least one admin role at all times.
This update simplifies scaling billing operations across teams, strengthens access control enforcement, and allows permissions to evolve seamlessly as your organization grows.Learn more