Skip to content

How Credits Are Consumed by Each Feature

Different AI features consume credits in different ways. Voice calls are metered by the raw provider cost (transport, speech-to-text, language model, text-to-speech). WhatsApp, SMS and customer portal AI replies are metered by the AI tokens used. Haynes Pro vehicle data works differently again: it is a flat charge per vehicle, not per lookup. Finding an address by postcode is a flat 1 credit per lookup that finds addresses. Xero and extra phone numbers are flat monthly charges. This article explains how each one works, what creates a charge, and what doesn’t, so you can interpret your Usage This Cycle breakdown and spot unexpected patterns.

  • You are an owner with billing.credits.view.
  • You have had at least some AI usage in the current billing cycle.
  1. When a voice call ends, the voice AI sends an end-of-call report with a cost breakdown in US dollars:
    • Transport - the telephony carrier cost.
    • STT (speech-to-text) - audio transcription cost.
    • LLM - the language model cost for the AI reasoning.
    • TTS (text-to-speech) - audio generation for the AI voice.
    • Platform - voice provider platform fee.
  2. Torqueflow sums these into a single USD cost and converts it to credits using the configured ratio for the voice channel (default: 1 credit per cent of provider cost).
  3. The charge is recorded against the call record ID and posted to the ledger after the call ends - never during.
  4. The Usage This Cycle card on Settings > Billing shows voice as number of calls and total credits used, with per-call cost hidden by design.

How WhatsApp AI reply credits are calculated

Section titled “How WhatsApp AI reply credits are calculated”
  1. When an inbound WhatsApp message arrives at the AI, it goes through two internal stages: a classify step (decide intent) and a respond step (generate the reply). Both consume AI tokens.
  2. Torqueflow sums the classify and respond tokens (input + output) into a single deduction per inbound message. You are not charged twice.
  3. Token cost is estimated in USD using the current AI provider pricing (configurable per environment), then converted to credits using the WhatsApp channel ratio.
  4. A back-and-forth conversation charges once per inbound message. Each turn is metered separately because each turn is a full AI round trip.
  1. SMS works the same way as WhatsApp: classify + respond tokens are summed into a single deduction per inbound message.
  2. Same AI pricing, same channel ratio (configurable, default 1 credit per cent).
  3. You are not charged for staff-written SMS replies or for manually sent bridge SMS (see troubleshooting/portal-messaging-fallback) - those are SMS sending costs, not AI costs.
  1. AI diagnostics (where enabled) charge per query based on tokens in + tokens out.
  2. Same pricing model as WhatsApp/SMS.
  3. If the feature is not enabled for your organisation, the Diagnostics tile shows 0.

How Haynes Pro vehicle data credits are calculated

Section titled “How Haynes Pro vehicle data credits are calculated”
  1. Haynes Pro lookups are the one part of the system charged at a flat rate per vehicle, not per interaction. Opening a lookup on a vehicle costs 20 credits.
  2. That one charge opens a window on that vehicle. Everything else you pull on the same car inside the window is free: repair times, service schedules, service checklists, part categories and technical drawings.
  3. The window is per vehicle. Come back to the same car after it has closed and the next lookup is a fresh 20 credits.
  4. Identifying a vehicle is free. It costs nothing, and it is the step that makes the rest of the lookups possible.
  5. You always see the cost and your balance before anything is deducted, and you have to confirm.
  6. This spend shows on the Usage This Cycle card as Vehicle data, counted in vehicle lookups. Each 20-credit charge counts as one lookup, so the same car charged again after its window closed counts twice.
  1. Finding an address by postcode costs 1 credit for each lookup that returns a list of addresses.
  2. A postcode that is not found costs nothing. A lookup that fails on our side costs nothing.
  3. Looking up the same postcode again while the address form is still open is free. The line under the button reads “Already looked up - free.” Closing the form and opening it again starts afresh, so the next lookup of that postcode is charged.
  4. There is no confirm step. The line under the Find address button always shows the cost and your balance before you click.
  5. This spend shows on the Usage This Cycle card as Address lookups, counted in lookups.

See Managing customer addresses for where the button appears.

  1. When you capture a VIN from a phone photo, the AI can read the VIN from the picture as a suggestion. Whether it offers to is set in Settings > AI Settings under Read the VIN from a captured photo.
  2. A read costs 1 credit, and only when the VIN you save is exactly the one the AI read. If you correct it, type your own or do not save, it costs nothing.
  3. The AI never saves a VIN on its own. Someone always checks it and taps Save.
  4. If your account has no credits, the AI read is not offered. There is also a daily limit on reads per garage.
  5. This spend shows on the Usage This Cycle card as AI VIN reads, counted in reads.

See Capturing a VIN from your phone for the whole flow.

How customer portal, document scanning and Xero credits are calculated

Section titled “How customer portal, document scanning and Xero credits are calculated”
  1. Customer portal AI replies work the same way as WhatsApp: one deduction per inbound message, based on the AI tokens used.
  2. Document scans are charged as each document is processed. A very long document can cost more than a standard one.
  3. Xero sync is a flat 50 credits a month for each connected Xero organisation, taken on the same day each month.
  1. On a paid subscription, your first phone number uses 100 credits a month. Your 800-credit monthly allowance includes those 100, so the first number is covered.
  2. During a free trial, your first number is free. The charge starts on the 1st after you subscribe.
  3. Every additional number is a further 100 credits a month.
  4. The charge is taken on the 1st of each month, not per call.
  5. It shows on the usage card as Phone rental, counted in numbers rather than interactions.
  1. Go to Settings > Billing.
  2. The Usage This Cycle card has two sections. Per-use shows a tile for each of these:
    • Voice - calls and credits used.
    • SMS - messages and credits used.
    • WhatsApp - messages and credits used.
    • Customer portal - messages and credits used.
    • Diagnostics - queries and credits used.
    • Document scans - scans and credits used.
    • Vehicle data - vehicle lookups and credits used.
    • Address lookups - lookups and credits used.
    • AI VIN reads - reads and credits used.
  3. Recurring shows:
    • Xero sync - credits used, with no count because it is a flat monthly charge.
    • Phone rental - numbers billed and credits used.
  4. Every channel is shown, even with no usage. An unused channel shows 0 so you can see what else your credits can pay for.
  5. Per-use figures come from an overnight update, so today’s activity appears tomorrow. The card says “Usage updates overnight”. Vehicle data, address lookup, Xero sync and phone rental charges appear as soon as they are taken.
  6. The card leads with how much you use each channel rather than per-interaction cost. This is intentional - you should think about “how much am I using the AI?” rather than “how much did that last call cost?”.
  1. Below the usage grid is the Credit Trend Chart showing daily credit consumption over time.
  2. It reports the current period total, the previous period total, and the percentage change.
  3. A sudden spike usually means unusual traffic (for example a marketing campaign driving lots of inbound calls) or a degradation issue causing extra interactions. A sudden drop usually means a quiet day or an AI outage.

The following are always free:

  • Staff-written messages (WhatsApp, SMS, or portal) typed by a human.
  • Manual work order creation, invoicing, parts, labour, time tracking.
  • Scheduler, reports, audit log, settings pages.
  • Customer portal activity (logins, quote approvals, reading messages).
  • Identifying a vehicle for Haynes Pro data.
  • Repeat Haynes Pro lookups on a vehicle inside an open window.
  • An address lookup for a postcode that is not found, and a repeat lookup of the same postcode while the form is still open.
  • Test calls triggered from the Voice Dashboard.
  • Calls to and from demo organisations.
  • Voice calls with zero cost (for example instantly abandoned calls reported at £0).
  • Spam-filtered SMS messages (the AI was never called, so there’s nothing to charge).
  • WhatsApp/SMS messages routed to a human inbox without an AI call (including out-of-hours auto-replies, wrong-number templates, and credit-exhausted fallbacks).
  • You can explain why a busy voice day costs more credits than a busy WhatsApp day.
  • You know what shows up in the Usage grid and what is intentionally hidden.
  • You can tell when a consumption spike is from real customer activity versus a configuration problem.

Problem: Voice credits are higher than I expected for the number of calls. Cause: Long call durations, lots of tool calls during the conversation, or premium voice TTS can all increase the per-call cost. The voice AI charges per-minute and per-token, so a 10-minute booking call is far more expensive than a 30-second hang-up. Fix: Check Voice AI > Call Logs for unusually long calls. Tune the voice persona to be more concise if verbosity is driving cost.

Problem: WhatsApp is consuming credits even though I’m replying manually. Cause: The AI still runs a classify step on every inbound message to decide whether a human or AI should respond. Even if a human replies, the classify tokens are charged. Fix: This is by design and the cost is very small. If the volume is material, contact support - there are advanced settings to disable classification for specific scenarios.

Problem: Credits went down but the Usage This Cycle card shows zero for a channel. Cause: Per-use figures on the card update overnight. Your balance updates as soon as the credits are used. Fix: Check the card again tomorrow. The balance is authoritative - if it went down, the deduction is recorded.

Problem: “Interaction count” and “credits used” look mismatched. Cause: One voice call can cost several times more than one WhatsApp reply. Interaction counts are not comparable across channels. Fix: Use the credit number for cost comparisons, not the interaction count.

Problem: My balance dropped by 20 credits. Cause: Someone opened a Haynes Pro lookup on a vehicle. It is a flat 20 credits per vehicle window. Fix: Check the Vehicle data tile on the Usage This Cycle card. If it happens more than you expect, remember it is once per vehicle per window, so working through ten cars in a morning is ten charges.

Problem: My balance dropped by 1 credit and I did not use the AI. Cause: Someone used Find address on a postcode that returned addresses. Fix: Check the Address lookups tile on the Usage This Cycle card.

Problem: I’m on a trial and my AI features have stepped back to taking messages. Cause: Trial accounts draw on their 2,500 trial credits exactly as a paid account draws on its balance. When the trial credits are used up, or expire when the trial ends, the AI steps back to taking messages. Fix: Start your subscription from Settings > Billing. See How your free trial works.

  • Raw interaction records are retained for 90 days then purged. Daily rollups (one row per channel per day) are retained indefinitely for historical reporting.
  • Conversion ratios per channel are set by Torqueflow Support. The current default is 1 credit = 1 cent of provider cost, so rough mental model: £0.01 = 1 credit.
  • Torqueflow absorbs rounding difference - provider cost to credits uses a round-then-floor calculation to prevent double-rounding inflation.
  • If the credit deduction fails due to an internal error, the AI interaction still completes normally. Billing never blocks AI.
  • billing.credits.view - required to see the Usage grid and trend chart.