Billing
Top up, auto-recharge, view invoices, subscription plans, and pricing notes.
CanalAPI offers two billing models that can be combined:
- Pay-as-you-go (default) — top up an account balance; each API call deducts its token cost from the balance.
- Subscription plans — pay once per period for a fixed quota. See Subscriptions.
Subscription quota is consumed first; overage is handled by the subscription's policy (deny, allow within an extended cap, or fall back to pay-as-you-go).
Top up
- Open Billing → Top up in the console.
- Pick a preset package or enter a custom amount (min / max bounds shown in the console).
- Pick a payment method.
- You'll be redirected to the corresponding payment provider.
- After success, you return to the console; the balance updates after confirmation (typically within a minute).
Supported payment methods
| Method | Audience | Notes |
|---|---|---|
| Stripe | International cards, Apple Pay, Google Pay, etc. | Available methods depend on your Stripe region |
| Alipay | Mainland China | QR / app redirect |
| WeChat Pay | Mainland China | QR / app redirect |
The actual methods / currencies you see depend on your account region. Some plan tiers may only be purchasable with specific methods.
Order states: Pending, Paid, Expired, Cancelled, Failed. An expired order can be replaced by a new one.
Auto top-up
Billing → Auto Top-up (where available) lets you:
- Set a threshold (the balance value that triggers recharge)
- Set the recharge amount
- Pick a default payment method (saved so no repeated confirmation is required; availability shown in the console)
Once enabled, the system tops up automatically when the threshold is crossed. You can change or disable it any time.
Balance breakdown
The Billing page shows your balance composition so subscription quota and balance aren't confused:
- Available balance — main balance, source for pay-as-you-go deductions.
- Promo / granted balance — credits from promotions or referrals (if any); consumed first when applicable.
- Active subscription quota — comes from your active subscription plan and is independent of the balance.
GET /v1/dashboard/billing/credit_grants returns an OpenAI-compatible JSON view of the balance plus active subscription grants, suitable for programmatic reconciliation.
Pricing
Per-request cost is calculated from token usage and depends on the model. Always refer to the console for the authoritative, up-to-date price list:
- Public page
/pricing— model price table with billing units (per 1M tokens) - Public page
/models— model catalog with prices, filterable by provider / category - Console → Models — the models actually available to your account, with current prices
Practical notes:
- Different models have different per-million-token prices for input and output.
- Some models bill tool calls, vision inputs, or cached prefixes separately.
- Streaming and non-streaming requests are priced identically.
- Prices change when upstream providers raise/lower theirs or when the platform updates policy; meaningful changes are announced in the Changelog.
Invoices
Invoices are issued by the Japanese operating entity under Japanese tax law (Qualified Invoice / 適格請求書).
Console → Invoices offers:
- Overview — current balance, month-to-date spend, today's spend, un-invoiced orders
- Top-up orders — full top-up history
- Invoices — issued invoices with a PDF download
- Request invoice — batch-issue invoices for un-invoiced orders
Configure your billing entity
Before topping up, configure under Invoices → Profile:
- Company / individual name
- Address
- Registration / tax ID (e.g. Japan's 適格請求書 registration number, if applicable)
- Notes
Future invoices use this header. To amend a header on an already-issued invoice, raise a ticket via Support.
Refunds and billing disputes
If you believe a request was billed incorrectly:
- Find the record in Usage Logs and copy the request ID.
- Submit a ticket via the console Support form with the request ID and a short description.
- Approved refunds are returned to the original payment channel (some local methods may settle as a balance credit instead).
Subscription refunds follow Stripe's standard terms; disputes go through the same Support flow.