Prepaid credits are a popular way to sell AI usage. Customers buy a balance, the product draws it down as they work, and they top up when it runs low. For the vendor, credits bring cash forward and remove collection risk on usage. For the customer, they cap spend by design. The details decide whether the wallet feels fair and whether finance can account for it cleanly.
Fix the value of a credit
Tie one credit to a fixed currency amount, $0.01 in this example, so a $500 top-up issues 50,000 credits. A fixed value keeps the wallet understandable and makes the accounting straightforward. Change what an action costs in credits, never what a credit is worth.
Price actions in credits from cost
Price each action from its model cost times your markup, rounded up to whole credits. An action that makes one Claude Haiku 4.5 call with 4,000 input and 400 output tokens costs $0.0060 at list price. With a 2.5x markup that is $0.0150, rounded up to 2 credits.
A customer running 900 of those actions a day burns 1,800 credits a day, so a $500 top-up lasts 27 days. Show that runway in the product; it is the number customers care about.
For agent tasks with variable cost, either price per task with an envelope that bounds your cost, or draw down by actual metered cost converted to credits. The second is fairer and less predictable for the customer; publish the conversion so it can be audited.
Draw down in real time
A wallet that updates nightly lets a customer run far past zero during the day, which turns a prepaid product into an unplanned credit line. Draw down per request, from the same metered cost that drives quotas. In PALM SOUQ, the wallet balance is a tenant budget whose limit is the remaining credits, so the gateway refuses or degrades requests the moment the balance runs out.
Decide low-balance behavior
- Warn at a threshold, such as 20% of the last top-up, in the product and by email.
- Offer auto top-up with a saved payment method and a monthly ceiling the customer sets.
- At zero, choose between a hard stop, a fallback to a cheaper model for a grace period, or a small negative allowance billed on the next top-up.
- Never silently stop an agent mid-task; finish or checkpoint the current step and tell the user why.
Expiry and accounting questions to settle early
Prepaid credits are generally treated as a liability until they are used, with revenue recognized as credits are consumed. Expiry policies and unused balances raise questions about when remaining value is recognized. These are decisions for your finance team and auditors, and they are much easier to settle before launch than after the first annual contract renews. Make sure your metering can report consumed credits per customer per period, because that is the basis for recognition.
Common commercial choices are credits that expire twelve months after purchase, rollover of unused credits on annual plans, and bonus credits on larger top-ups. Each one changes the liability on your balance sheet, so model them with finance first.
What to show the customer
Customers who can see their runway top up before they run out, which is better for them and for your cash flow than a wallet that surprises them at zero.
- Current balance in credits and in currency, updated per request.
- Runway at the current burn rate, in days.
- Credits used per feature this period, so the customer can see where the balance goes.
- A history of top-ups and any credits that expired.
Billing platform support
Metronome, Orb and Lago all support prepaid credit balances with drawdown from usage, and Stripe supports credit grants against usage-based prices. PALM SOUQ billing sync sends metered usage to whichever platform holds the wallet and reads the remaining balance back as the tenant's budget, so enforcement and invoicing stay in step.
Vineet Saresar
Founder & CEO, PALM SOUQ
Founder of PALM SOUQ. Sets company direction, product strategy and customer partnerships, and leads the work to make runaway LLM spend impossible for AI SaaS teams.