{"id":29365,"date":"2026-06-09T11:46:44","date_gmt":"2026-06-09T09:46:44","guid":{"rendered":"https:\/\/whiteduck.de\/token-control-for-isvs-monetize-bill-and-control-ai-features\/"},"modified":"2026-09-29T14:45:56","modified_gmt":"2026-09-29T12:45:56","slug":"token-control-for-isvs-monetize-bill-and-control-ai-features","status":"publish","type":"post","link":"https:\/\/whiteduck.de\/en\/token-control-for-isvs-monetize-bill-and-control-ai-features\/","title":{"rendered":"Token Control for ISVs: Monetize, Bill, and Control AI Features"},"content":{"rendered":"<p>The question of cost for AI in your own product is not a model or prompt problem. It is a problem of allocation and architecture. If you cannot clearly assign AI consumption to each customer, you can neither price, bill, nor limit it. This is exactly where a surprising number of AI features fail\u2014not during integration, but in operation.   <\/p>\n<p>We see this pattern repeatedly with software providers. The AI feature is integrated in a few days: include the SDK, store the API key, send the first requests. That is enough for a prototype. However, as soon as the same feature is running productively for many customers, questions arise that no one asked before:   <\/p>\n<p><strong>Which customer is causing which costs? What budget applies per customer, feature, or key? How is consumption passed on? And what happens if a single customer exhausts the model deployment limits?   <\/strong><\/p>\n<p>These questions all depend on one single thing: a reliable consumption allocation per customer. <a href=\"https:\/\/tokencontrol.ai\/\" rel=\"noreferrer noopener\" target=\"_blank\">Token Control<\/a> addresses exactly this. In this post, we will go through the three consequences that arise from this: the monetization of AI features in your own product, billing your own customers, and governance over limits and access. <\/p>\n<h2>Token Control as an AI Gateway<\/h2>\n<p>Token Control is an AI gateway for software providers. It sits between your application and the connected AI providers. Token Control supports common providers such as Azure AI Foundry, Azure OpenAI, Google Gemini, Mistral, Meta, and Anthropic. Your software continues to send its requests as before, while Token Control handles routing, consumption tracking, and budget verification in the background.   <\/p>\n<figure><a href=\"https:\/\/whiteduck.de\/wp-content\/uploads\/token-control-ki-proxy-1.png\"><img decoding=\"async\" alt=\"\" src=\"https:\/\/whiteduck.de\/wp-content\/uploads\/2026\/06\/token-control-ki-proxy.png\" title=\"\"><\/a><figcaption>Token Control as an AI gateway between your product and AI providers<\/figcaption><\/figure>\n<p>The decisive mechanism is not the routing, but the precise allocation of consumption. Token Control maps your product structure: your customers, including individual users or features, and associated API keys that send the requests and generate the costs. Only this hierarchy solves the problem mentioned in the introduction. Those who can allocate consumption at this level have the foundation for everything else.   <\/p>\n<figure><a href=\"https:\/\/whiteduck.de\/wp-content\/uploads\/token-control-struktur-2.png\"><img decoding=\"async\" alt=\"\" src=\"https:\/\/whiteduck.de\/wp-content\/uploads\/2026\/06\/token-control-struktur.png\" title=\"\"><\/a><figcaption>Customers, features, and API keys in Token Control<\/figcaption><\/figure>\n<p>Token Control serves as the measurement, enforcement, and cost allocation layer. The commercial decision regarding which customer may use which AI feature in which plan defines the license or entitlement level of your product. Token Control provides the data foundation and the strict enforcement upon which this level is built. This separation is the reason why Token Control integrates easily into existing product and license architectures.   <\/p>\n<h2>Monetization of AI Features in Your Own Product<\/h2>\n<p>Every packaged or usage-based pricing model needs a native enforcement metric before it can function. With Token Control, this is a budget in euros per customer or feature, measured with token-level precision and strictly enforced before costs are incurred. This is exactly what AI credit packages and tiered pricing are built upon. Without this metric, you are selling AI features blindly and bearing the full cost risk yourself.   <\/p>\n<p>A concrete example: A software provider offers its customers three AI credit packages: Small, Medium, and Large. &#8220;Credit&#8221; is the customer-friendly abstraction. Technically, each package corresponds to a monthly limit in euros per customer, created via the Token Control Management API. Once the package is exhausted, the next request is blocked before uncontrolled costs arise.   <\/p>\n<p>Token Control does not allow silent overspending. If a customer wants more, you increase the limit in your product via API, for example, when switching from Medium to Large. This is a deliberate, logged action of your product:  <\/p>\n<pre><code>PUT https:\/\/mgmt-api.tokencontrol.ai\/api\/management\/consumption\/update\nContent-Type: application\/json\n\n{\n  \"id\": \"<id-des-kunden>\",\n  \"name\": \"Kunde ACME\",\n  \"monthlyLimit\": 400.00,\n}<\/id-des-kunden><\/code><\/pre>\n<p>This allows you to sell a clear package instead of an open-ended cost bet, and your margin remains calculable within the package price. The package definition and the factor between credit and euro remain your pricing decision. Token Control makes them measurable and enforces the resulting upper limit.  <\/p>\n<h2>Billing AI Features to Your Own Customers<\/h2>\n<p>Do you want to bill your customers&#8217; AI consumption with token-level precision? With a direct AI provider connection, consumption is only visible at the subscription or resource level, not per customer. This is exactly what makes clean re-billing impossible.  <\/p>\n<p>Billing runs programmatically via the Management API. The lifecycle looks like this: You create the customer with a budget, the gateway measures token consumption per customer and API key, and for the billing run, you retrieve the consumption and cost data per customer via the Token Control Management API. <\/p>\n<pre><code>POST https:\/\/mgmt-api.tokencontrol.ai\/api\/management\/cost\/query\nContent-Type: application\/json\n\n{\n  \"cloudControlId\": \"<id-des-kunden>\",\n  \"startTime\": \"2026-06-01T00:00:00Z\",\n  \"endTime\": \"2026-06-30T23:59:59Z\",\n  \"includeChildren\": true\n}<\/id-des-kunden><\/code><\/pre>\n<p>The response provides the costs for each entity in the respective currency, as well as input and output tokens:<\/p>\n<pre><code>{\n  \"costData\": [\n    {\n      \"consumptionEntityCloudControlId\": \"<id-des-kunden>\",\n      \"cost\": 142.30,\n      \"currency\": \"EUR\",\n      \"inputTokens\": 820000,\n      \"outputTokens\": 410000\n    }\n  ]\n}<\/id-des-kunden><\/code><\/pre>\n<p>Back to the example. At the end of the month, your billing run retrieves the cost data per customer via the Management API, calculates the package as a flat rate plus any additional purchases, and automatically generates the invoice item in your billing or ERP system. No manual reconciliation, no discussion with the customer about a figure that no one can prove. The same data is available in the portal and via the API for internal evaluations.   <\/p>\n<figure><a href=\"https:\/\/whiteduck.de\/wp-content\/uploads\/token-control-budget-3.png\"><img decoding=\"async\" alt=\"\" src=\"https:\/\/whiteduck.de\/wp-content\/uploads\/2026\/06\/token-control-budget.png\" title=\"\"><\/a><figcaption>Budget hierarchy with monthly limit per customer<\/figcaption><\/figure>\n<p>Invoicing and contract logic remain in your billing or licensing system. Token Control provides the data and enforces the limits. <\/p>\n<h2>Governance and Limitations<\/h2>\n<p>As soon as AI features are delivered productively to customers, a pure API connection to LLM models is no longer sufficient. You must be able to track how AI is used in the product, what costs are incurred, and which rules apply per customer and feature. We have described elsewhere in more detail why <a href=\"https:\/\/whiteduck.de\/ki-kosten-entstehen-in-sekunden-warum-klassisches-kostenmanagement-nicht-mehr-ausreicht\/\" rel=\"noreferrer noopener\" target=\"_blank\">AI costs arise in seconds and classic cost management is not sufficient for this<\/a>.  <\/p>\n<p>Token Control provides a central governance layer for this. Budget enforcement takes effect in real-time: if a limit is reached, the request is blocked before further costs are incurred. Cost control therefore does not just happen in reporting, but during ongoing operations. TPM limits (tokens per minute) can also be used to prevent a single customer or agent from dominating the shared capacity.   <\/p>\n<p>Not every customer should automatically use every model, provider, or deployment. Model and deployment approvals can be defined centrally, and API keys can be managed separately per customer or feature. This creates traceability for operations and support teams: why a request was rejected, which model causes the highest consumption, and what anomalies occur over time. Every request is documented via a correlation ID with token consumption, model deployment, timestamp, and status, while prompts and responses are not stored. Token Control provides the technical foundation for the necessary transparency and compliance. Also for the EU AI Act.     <\/p>\n<h2>Integration into Existing Setups<\/h2>\n<p>The technical hurdle is low. In many cases, only the endpoint and API key of your existing integration change. The SDK you use remains unchanged. Here is an example using the <a href=\"https:\/\/learn.microsoft.com\/azure\/ai-services\/openai\/\" rel=\"noreferrer noopener\" target=\"_blank\">Azure OpenAI SDK<\/a>:   <\/p>\n<pre><code>from openai import AzureOpenAI\n\n# Endpoint und Key zeigen jetzt auf Token Control\nclient = AzureOpenAI(\n    azure_endpoint=\"https:\/\/api.tokencontrol.ai\/api\/v1\/azure\",\n    api_key=\"<token-control-api-key>\",\n    api_version=\"2024-12-01\",\n)<\/token-control-api-key><\/code><\/pre>\n<p>The Management API is available for automated provisioning. This allows you to create customers, budgets, API keys, and deployment allocations directly from your existing onboarding or self-service processes, instead of maintaining them manually in the Token Control Portal: <\/p>\n<pre><code>POST https:\/\/mgmt-api.tokencontrol.ai\/api\/management\/consumption\/create\nContent-Type: application\/json\n\n{\n  \"cloudControlId\": \"<ihre-kunden-id>\",\n  \"name\": \"Kunde ACME\",\n  \"type\": \"Department\",\n  \"parentCloudControlId\": \"<ihre-org-id>\",\n  \"monthlyLimit\": 150.00,\n  \"threshold\": 80\n}<\/ihre-org-id><\/ihre-kunden-id><\/code><\/pre>\n<p>Token Control does not exclude an existing API gateway like Azure API Management, but complements it: the gateway handles routing and load balancing, while Token Control handles allocation per customer, budgets, and reporting.<\/p>\n<h2>Comparison, Classification, and Next Step<\/h2>\n<p>The following overview compares direct provider connection with connection via Token Control:<\/p>\n<figure>\n<table>\n<thead>\n<tr>\n<th>Dimension<\/th>\n<th>Direct Provider Connection<\/th>\n<th>Connection via Token Control<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Real-time Budget Enforcement<\/td>\n<td>\ud83d\udd34<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<tr>\n<td>Consumption per Request<\/td>\n<td>\ud83d\udfe1<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<tr>\n<td>Cost Allocation per Customer, Feature, or Custom Entity<\/td>\n<td>\ud83d\udfe1<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<tr>\n<td>Separation by Customer<\/td>\n<td>\ud83d\udd34<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<tr>\n<td>Multi-Provider Routing<\/td>\n<td>\ud83d\udd34<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<tr>\n<td>API Key Management per Customer<\/td>\n<td>\ud83d\udfe1<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<tr>\n<td>BYOK<\/td>\n<td>&#8211;<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<tr>\n<td>Billing-Ready API Data<\/td>\n<td>\ud83d\udd34<\/td>\n<td>\ud83d\udfe2<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<p>Returning to the initial thesis: AI is quickly integrated, but operation is what counts, and this depends on reliable consumption allocation. Token Control provides this foundation for AI monetization, billing, and governance, without you having to develop your own billing and governance layer for every customer or feature. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>The question of cost for AI in your own product  [&#8230;]<\/p>\n","protected":false},"author":30,"featured_media":29325,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[598],"tags":[644,586,854,727,621,853,855,616,678,779,720],"class_list":["post-29365","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-2","tag-agentic-ai-2","tag-ai-2","tag-ai-3","tag-ai-agents","tag-api-gateway-2","tag-azure-ai-foundry-2","tag-billing-2","tag-cost-control-2","tag-governance-2","tag-isv-2","tag-token-control-2"],"acf":[],"_links":{"self":[{"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/posts\/29365","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/users\/30"}],"replies":[{"embeddable":true,"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/comments?post=29365"}],"version-history":[{"count":0,"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/posts\/29365\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/media\/29325"}],"wp:attachment":[{"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/media?parent=29365"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/categories?post=29365"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/whiteduck.de\/en\/wp-json\/wp\/v2\/tags?post=29365"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}