Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions app/_how-tos/ai-gateway/meter-llm-traffic.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@ related_resources:
url: /metering-and-billing/metering/
- text: Customers and usage attribution
url: /metering-and-billing/customer/
- text: Billing, invoicing, and subscriptions
url: /metering-and-billing/billing-invoicing-subscriptions/
- text: Billing and invoicing
url: /metering-and-billing/billing-invoicing/
- text: Meter and bill {{site.base_gateway}} API requests
url: /metering-and-billing/get-started/
- text: Get started with {{site.metering_and_billing}} generic meters
Expand Down Expand Up @@ -218,6 +218,9 @@ body:

This will generate AI LLM token usage that will be captured by {{site.metering_and_billing}}.

{:.info}
> **Entitlement enforcement:** The {{site.ai_gateway}} does not automatically block traffic when a customer's entitlement is exhausted. To enforce limits, set up a webhook notification rule and cut off access in your own infrastructure. See [Enforcing entitlements](/metering-and-billing/entitlements/#entitlement-enforcement) for details.

1. In the {{site.konnect_short_name}} sidebar, click **{{site.metering_and_billing}}**.
1. In the {{site.metering_and_billing}} sidebar, click **Billing**.
1. Click the **Invoices** tab.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,8 +53,8 @@ related_resources:
url: /metering-and-billing/metering/
- text: Customers and usage attribution
url: /metering-and-billing/customer/
- text: Billing, invoicing, and subscriptions
url: /metering-and-billing/billing-invoicing-subscriptions/
- text: Billing and invoicing
url: /metering-and-billing/billing-invoicing/
- text: Meter and bill {{site.ai_gateway}} LLM tokens
url: /how-to/meter-llm-traffic/
- text: Get started with {{site.metering_and_billing}} generic meters
Expand Down Expand Up @@ -245,4 +245,7 @@ This will generate six requests. Now, check the invoice that was created in {{si
1. Click the **Invoicing** tab.
1. Click **Preview Invoice**.

You'll see in Lines that `example-service` is listed and was used six times. In this guide, you're using the sandbox for invoices. To deploy your subscription in production, configure a payments integration in **{{site.metering_and_billing}}** > **Settings**.
You'll see in Lines that `example-service` is listed and was used six times. In this guide, you're using the sandbox for invoices. To deploy your subscription in production, configure a payments integration in **{{site.metering_and_billing}}** > **Settings**.

{:.info}
> **Entitlement enforcement:** {{site.base_gateway}} does not automatically block traffic when a customer's entitlement is exhausted. To enforce limits, set up a webhook notification rule and cut off access in your own infrastructure. See [Enforcing entitlements](/metering-and-billing/entitlements/#entitlement-enforcement) for details.
6 changes: 3 additions & 3 deletions app/_how-tos/gateway/meter-api-requests-by-consumer.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ related_resources:
url: /metering-and-billing/metering/
- text: Customers and usage attribution
url: /metering-and-billing/customer/
- text: Billing, invoicing, and subscriptions
url: /metering-and-billing/billing-invoicing-subscriptions/
- text: Billing and invoicing
url: /metering-and-billing/billing-invoicing/
- text: Get started with {{site.metering_and_billing}}
url: /metering-and-billing/get-started/
- text: Meter and bill active users
Expand Down Expand Up @@ -173,4 +173,4 @@ You'll see three events listed, each with `subject: alice`, one for each request

You'll also see an error message like `no customer found for event subject: consumer` associated with the event.
This is expected since we're only tracking API usage.
If you want to meter and bill Consumer's usage, see [Metering](/metering-and-billing/metering/), [Customers and usage attribution](/metering-and-billing/customer/), and [Billing, invoicing, and subscriptions](/metering-and-billing/billing-invoicing-subscriptions/).
If you want to meter and bill Consumers' usage, see [Metering](/metering-and-billing/metering/), [Customers and usage attribution](/metering-and-billing/customer/), and [Billing and invoicing](/metering-and-billing/billing-invoicing/).
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ related_resources:
url: /metering-and-billing/metering/
- text: Customers and usage attribution
url: /metering-and-billing/customer/
- text: Billing, invoicing, and subscriptions
url: /metering-and-billing/billing-invoicing-subscriptions/
- text: Billing and invoicing
url: /metering-and-billing/billing-invoicing/
- text: Meter and bill {{site.base_gateway}} API requests
url: /metering-and-billing/get-started/
- text: Meter and bill {{site.ai_gateway}} LLM tokens
Expand Down Expand Up @@ -151,7 +151,7 @@ In this section, you'll create an Premium Plan plan that charges customers $1 pe

## Start a subscription

[Customers](/metering-and-billing/customer/) are the entities that pay for consumption. Here you'll create a customer and [subscribe](/metering-and-billing/billing-invoicing-subscriptions/#subscriptions) them to the Premium Plan plan.
[Customers](/metering-and-billing/customer/) are the entities that pay for consumption. Here you'll create a customer and [subscribe](/metering-and-billing/subscriptions/) them to the Premium Plan plan.

1. In the {{site.konnect_short_name}} sidebar, click **{{site.metering_and_billing}}**.
1. In the {{site.metering_and_billing}} sidebar, click **Billing**.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ related_resources:
url: /metering-and-billing/metering/
- text: Customers and usage attribution
url: /metering-and-billing/customer/
- text: Billing, invoicing, and subscriptions
url: /metering-and-billing/billing-invoicing-subscriptions/
- text: Billing and invoicing
url: /metering-and-billing/billing-invoicing/
- text: Meter and bill {{site.base_gateway}} API requests
url: /metering-and-billing/get-started/
- text: Meter and bill {{site.ai_gateway}} LLM tokens
Expand Down Expand Up @@ -133,7 +133,7 @@ In this section, you'll create a Per-Seat plan that charges customers $1 per act

## Start a subscription

[Customers](/metering-and-billing/customer/) are the entities that pay for consumption. Here you'll create a customer and [subscribe](/metering-and-billing/billing-invoicing-subscriptions/#subscriptions) them to the Per-Seat plan.
[Customers](/metering-and-billing/customer/) are the entities that pay for consumption. Here you'll create a customer and [subscribe](/metering-and-billing/subscriptions/) them to the Per-Seat plan.

1. In the {{site.konnect_short_name}} sidebar, click **{{site.metering_and_billing}}**.
1. In the {{site.metering_and_billing}} sidebar, click **Billing**.
Expand Down
9 changes: 5 additions & 4 deletions app/_indices/metering-and-billing.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,9 @@ sections:
- path: /metering-and-billing/metering/
- path: /metering-and-billing/product-catalog/
- path: /metering-and-billing/customer/
- path: /metering-and-billing/billing-invoicing-subscriptions/
- path: /metering-and-billing/billing-invoicing/
- path: /metering-and-billing/events/
- path: /metering-and-billing/notifications/
- title: Usage metering
items:
- title: API gateway metering
Expand Down Expand Up @@ -52,13 +53,13 @@ sections:
url: /metering-and-billing/customer/
- title: Subscriptions
description: Subscriptions are a collection of active rate cards that can be assigned to customers.
url: /metering-and-billing/billing-invoicing-subscriptions/#subscriptions
url: /metering-and-billing/subscriptions/
- title: Billing profiles
description: Billing profiles handle invoicing, payment, and tax settings for a customer.
url: /metering-and-billing/billing-invoicing-subscriptions/#billing-profiles
url: /metering-and-billing/billing-invoicing/#billing-profiles
- title: Invoicing
description: Learn how to set up invoicing in {{site.konnect_short_name}} {{site.metering_and_billing}}.
url: /metering-and-billing/billing-invoicing-subscriptions/#invoicing
url: /metering-and-billing/billing-invoicing/#invoicing
- path: /metering-and-billing/stripe-integration/
- title: How tos
items:
Expand Down
16 changes: 13 additions & 3 deletions app/_landing_pages/metering-and-billing.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ rows:
icon: /assets/icons/document.svg
cta:
text: Learn more
url: /metering-and-billing/billing-invoicing-subscriptions/#subscriptions
url: /metering-and-billing/subscriptions/
- blocks:
- type: card
config:
Expand All @@ -211,7 +211,7 @@ rows:
icon: /assets/icons/organization.svg
cta:
text: Learn more
url: /metering-and-billing/billing-invoicing-subscriptions/#billing-profiles
url: /metering-and-billing/billing-invoicing/#billing-profiles
- blocks:
- type: card
config:
Expand All @@ -221,7 +221,17 @@ rows:
icon: /assets/icons/money.svg
cta:
text: Learn more
url: /metering-and-billing/billing-invoicing-subscriptions/#invoicing
url: /metering-and-billing/billing-invoicing/#invoicing
- blocks:
- type: card
config:
title: Notifications
description: |
Configure webhook alerts for usage thresholds and billing events. Use notifications to enforce entitlement limits in your infrastructure.
icon: /assets/icons/event.svg
cta:
text: Learn more
url: /metering-and-billing/notifications/

- header:
type: h2
Expand Down
1 change: 1 addition & 0 deletions app/_redirects
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
/mesh/use-kuma/ /mesh/interact-with-control-plane/
/mesh/configure-transparent-proxying/ /mesh/transparent-proxying/
/mesh/upgrade-notes/ /mesh/version-specific-upgrade-notes/
Comment thread
lmilan marked this conversation as resolved.
/metering-and-billing/billing-invoicing-subscriptions/ /metering-and-billing/billing-invoicing/

# API spec links (delete when fixed)
/gateway/latest/plan-and-deploy/security/secrets-management/getting-started /gateway/entities/vault/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Billing, invoicing, and subscriptions"
title: "Billing and invoicing"
content_type: reference
description: "Learn how billing, invoicing, and subscriptions work in {{site.konnect_short_name}} {{site.metering_and_billing}}."
description: "Learn how billing and invoicing work in {{site.konnect_short_name}} {{site.metering_and_billing}}."
layout: reference
products:
- metering-and-billing
Expand All @@ -14,6 +14,8 @@ breadcrumbs:
related_resources:
- text: "{{site.konnect_short_name}} {{site.metering_and_billing}}"
url: /metering-and-billing/
- text: Subscriptions
url: /metering-and-billing/subscriptions/
- text: Integrate Stripe with {{site.metering_and_billing}}
url: /metering-and-billing/stripe-integration/
faqs:
Expand Down Expand Up @@ -279,38 +281,5 @@ The invoice can include two kinds of lines:

Billing and subscriptions in {{site.metering_and_billing}} create relationships between customers and their [pricing model](/metering-and-billing/pricing-models/). This serves as the bridge between your customers, their usage data, and how that usage translates into billable amounts.

Subscriptions automate the billing lifecycle by:

* **Tracking usage** through meters
* **Applying pricing logic** from plans or custom configurations
* **Generating invoices** based on billing cadences
* **Enforcing entitlements** to control feature access

Subscriptions can be created from predefined plans or fully customized at creation time to accommodate unique customer requirements. This flexibility supports everything from self-serve sign-ups to enterprise contract negotiations.

Subscriptions follow a billing cycle determined by their related [rate card](/metering-and-billing/product-catalog/#rate-cards), anchored to one of the following:
* The subscription start date, either the creation date or a specified future date.
* The first day of the month, with usage prorated for the partial initial period.

To add a subscription to a customer, navigate to **{{site.metering_and_billing}}** > **Billing**, click your customer, and then click the **Subscriptions** tab in the {{site.konnect_short_name}} UI.

Active customer subscriptions can be enhanced with [add-ons](/metering-and-billing/add-ons/), which allow you to make changes to a customer's entitlements without changing the plan directly.

## Plan migration

Plans in {{site.metering_and_billing}} are versioned. When you update a plan, existing subscriptions remain on their current version. This is known as "grandfathering". Customers keep their existing pricing until they're explicitly migrated.

Migrating a subscription to a new plan version allows you to:

* Apply new pricing to existing customers
* Transition customers to improved plan structures
* Deprecate old plan versions
* Standardize customers on current offerings

Migrations follow the same timing rules as other subscription changes:

* **Immediate**: Migration takes effect right away
* **Next billing cycle**: Migration occurs at the end of the current period

Choose timing based on whether the migration is favorable (immediate) or potentially disruptive (next cycle) to the customer.
For information on subscriptions, including how to change plans, customize, cancel, and migrate subscriptions, see [Subscriptions](/metering-and-billing/subscriptions/).
Comment thread
lmilan marked this conversation as resolved.

2 changes: 2 additions & 0 deletions app/metering-and-billing/customer.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ breadcrumbs:
related_resources:
- text: "{{site.konnect_short_name}} {{site.metering_and_billing}}"
url: /metering-and-billing/
- text: Subscriptions
url: /metering-and-billing/subscriptions/
- text: Integrate Stripe with {{site.metering_and_billing}}
url: /metering-and-billing/stripe-integration/
faqs:
Expand Down
13 changes: 12 additions & 1 deletion app/metering-and-billing/entitlements.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ related_resources:
url: /metering-and-billing/
- text: "Rate cards"
url: /metering-and-billing/product-catalog/#rate-cards
- text: Subscriptions
url: /metering-and-billing/subscriptions/
- text: Notifications
url: /metering-and-billing/notifications/

---

Expand Down Expand Up @@ -132,4 +136,11 @@ url: /v3/openmeter/customers/{customerId}/entitlement-access
status_code: 200
method: GET
{% endkonnect_api_request %}
<!--vale on-->
<!--vale on-->

## Entitlement enforcement

{{site.metering_and_billing}} tracks entitlement balances in real time, but does not automatically enforce limits at the {{site.base_gateway}} or {{site.ai_gateway}} level.

{:.info}
> **{{site.base_gateway}} and {{site.ai_gateway}} automatic enforcement is not available yet.** Automatic entitlement enforcement via a {{site.base_gateway}} plugin is planned for a future release. Until then, use [{{site.metering_and_billing}} Notifications](/metering-and-billing/notifications/) to receive a webhook when a customer reaches their entitlement threshold, and enforce access restrictions manually in your own infrastructure (for example, by removing a Consumer from a Consumer Group or returning a `403` response from your application).
Loading
Loading