Close the month against the invoice
At month end, finance wants one number they can defend. Put the provider's own bill next to what your agents actually spent, see the difference, and hand over a statement.
You will learn
- How to bring in the provider's bill
- How to read the difference between the bill and what was recorded
- How to confirm a month once it matches
- Which file to hand finance
Where this works
You don't need a plan to read on.| Free editionyour own machines | Hosted Freehosted | Teamhosted | Businesshosted | |
|---|---|---|---|---|
| Compare the bill with what was recorded | ||||
| Download the statement | — | |||
| Confirm the month against the invoice | — | — | ||
| A FOCUS file for finance tools | — | — |
Bring in the provider's bill
AxiGate reads two kinds of bill file. From Anthropic, the cost CSV you download from the Cost page of the Anthropic Console. From OpenAI or Anthropic, the usage and cost reports that axigate-finops fetch saves for you with an admin key from the provider's organization settings. A file downloaded from OpenAI's website can't be read yet, and neither can a Gemini bill.
# OpenAI: save August's usage and cost reports export OPENAI_ADMIN_KEY=<admin key> axigate-finops fetch openai --since 2026-08-01 --until 2026-09-01 --out ~/Downloads # Anthropic: the same export ANTHROPIC_ADMIN_KEY=<admin key> axigate-finops fetch anthropic --since 2026-08-01 --until 2026-09-01 --out ~/Downloads
The cost files (their names start with openai-costs or anthropic-costs) and the Console's cost CSV are the bill. The usage files add the provider's own token counts, priced from AxiGate's list. How you add them depends on where AxiGate runs for you.
Open Import a bill in your workspace and upload each file. It also takes a gateway's own ledger file.
In your own workspace this is Import a bill. Start free to get one.
Read the difference
Statement lines up each provider and month: what AxiGate recorded, what the provider billed, and the gap between them. A month without a bill yet is marked as an estimate.
Confirm the month
Free editionBusinessWhen a month matches the invoice, press Reconcile on it in Statement and confirm. The month is then marked invoice-reconciled and leaves the Needs a look list. Reopen undoes it.
A month with no bill imported can still be closed: press Close on it, then Close on estimate. It is closed on AxiGate's own estimate and marked closed on estimate, never invoice-reconciled. If its bill comes in later, reopen the month and reconcile it against the bill.
On the hosted service, while a month stays closed, Statement links to a frozen copy of its statement exactly as it was saved when you closed it: rows that arrive later never change it, and AxiGate checks it is unaltered before sending it. The saved copy is locked against any change or deletion for 30 days after it is saved: nobody can change or delete it in that time, AxiGate included; the one exception is the owner of AxiGate's storage account, who can lift a lock early only for a legal or safety reason, such as removing a secret that was pasted into a label.
On your own machines, a dashboard opened from another computer, such as on a shared server, asks for a code first: the admin token its gateway was started with, or the dashboard code printed when it started.
Hand finance a file
From Statement, download the file your finance team uses; Preview shows the first rows first. Hand finance a file says which is which, and which plans have each.
Recap
- Add the provider's file on Import a bill, or run analyze on your own machines.
- Statement shows each month's gap on its own line; it is never spread across teams.
- Confirm a month once it matches, then hand finance the statement or a FOCUS file.