Billing

Payments, the credit ledger, and Tokener.ai balance projections.

Updated 2026-10-21
Edit on GitHub

Billing has three product layers:

  1. Payments — card checkout through Stripe
  2. Ledger — append-only credit grants and usage debits
  3. Balances — paid, promotional, and combined available credit

Payments

Successful payment creates a durable payment record. Credits are granted only after webhook processing — never on the browser redirect alone.

With a native Tokener.ai login, all organization roles can view balances and billing history. Only the organization owner can start Checkout or open the Stripe customer portal.

A Partner can give you a one-time link to recharge its organization. You do not need a Tokener.ai account, and this path creates no organization membership. The Partner decides who receives the link. The link expires after 60 seconds and can be used once. After opening it, you have 15 minutes to view the selected organization's balance and purchases or start Stripe Checkout.

The restricted page cannot open Customer Portal, keys, members, settings, or another organization. It never switches to an existing Tokener.ai login. Stripe returns and the logo stay on the restricted billing surface. If access expires, return to the Partner application and request a new link. Completed payments still credit the original organization through the webhook.

Partner billing links cannot change the organization's billing details. If Checkout requires a valid billing address, contact your Partner before retrying.

Ledger

Every credit grant and usage debit is an append-only fact. Balance projections power the console; request paths do not scan the full ledger.

Promotional credits

When a welcome-credit offer is active, an eligible verified account receives one grant. The amount and validity are fixed when the grant is issued. Active Partner allowance credit is consumed before other promotional credit, and promotional credit is consumed before paid credit. Among grants with the same priority, usage consumes the earliest expiry first. Any unused amount expires at the end of its configured UTC billing-day window.