# AX Check: bill.com
Checked 2026-09-29.

Docs and pricing are clear, but one agent still refused to quote a price.
Pricing tiers ($49/$65/$89 per user/month) are stated plainly on the pricing page, yet 1 of 3 sessions declined to report a number.

## Onboarding needs a login

## Coding sessions
All three sessions completed. Two read the pricing page and reported the Essentials/Team/Corporate tiers with per-transaction fees and their own assumptions about API access and sandbox costs. The third refused to state any price, saying it would not invent numbers.

### DeepSeek V4.1 Flash
[View public run](https://agents.withgauge.com/p/runs/ccdf4faf-e6d0-4146-b148-94c1b1e950e3) · [Read transcript](https://www.ax-check.com/bill.com/sessions/deepseek.json)
Final output gives concrete pricing tiers (Essentials/Team/Corporate, ~$89/user/mo) plus per-transaction fees, explicitly sourced 'from bill.com/pricing' and framed with the assumption that cost depends on AP/AR user count and payment method mix.
#### End-to-end onboarding
- **Onboarding needs a login**: Agent never obtained real BILL credentials; sandbox signup requires an interactive web form with email/2-step verification that it explicitly could not complete. It only tested the login endpoint with dummy/invalid credentials, which correctly returned a 400 error — this proves the HTTP layer is reachable but does not demonstrate an authenticated operation. No resource was created against the actual product.
  Event 91:

  ```text
  ⛔ **Blocked on credentials:** sandbox signup is an interactive web form with
  2-step verification, which I cannot complete. Provide the four values and the
  example runs.
  ```
  Event 68:

  ```text
  HTTP 400
  --- body ---
  [{"timestamp":"2026-09-29T09:57:40.278+00:00","code":"BDC_1129","severity":"ERROR","category":"DOWNSTREAM","message":"Invalid parameter value for parameter,value: orgId, 008000000000000000000000000000000000."}]
  ```
  Event 97:

  ```text
  I got blocked on credentials. Sandbox signup is an interactive web form with email/2-step verification, so I can't create the account myself.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No self-service way to obtain BILL sandbox API credentials**: Product behavior: BILL's sandbox sign-up requires filling an interactive web form (name, work email, US phone) plus 2-step verification, which cannot be completed by an unattended agent. Without a devKey/organizationId/username/password, no authenticated API call could be made beyond a dummy-credential 400 test. This is a normal login/signup requirement, not a product defect, but it fully stopped the developer workflow beyond doc review and a syntax/reachability check.
  Event 91:

  ```text
  BILL does not hand out API keys programmatically. You must:
  
  1. Sign up for the **sandbox** at <https://www-test.bill.com/signup?env=stage>
     (first/last name, work email, US phone, company) and complete 2-step verification.
  ```
  Event 97:

  ```text
  I got blocked on credentials. Sandbox signup is an interactive web form with email/2-step verification, so I can't create the account myself.
  ```

#### Suggested Changes
- **Publish a consolidated pricing page for the AP & AR API product**: Pricing for the developer-facing AP & AR API is scattered across the general bill.com/pricing marketing page (subscription tiers, transaction fees, accountant console fees) with no single reference tied to developer.bill.com docs. Add a pricing summary or link directly from the BILL v3 API get-started doc (developer.bill.com/docs/bill-v3-api-get-started) so developers evaluating the API don't have to scrape the consumer pricing page separately. Verify by checking that a link to per-transaction and per-user fees appears on that get-started page.
  Event 41:

  ```text
  - [Get organization price plan details](https://developer.bill.com/reference/getpriceplan.md): Get the BILL price plan details for an existing organization.
  ```
  Event 42:

  ```text
  BILL Accounts Payable and Accounts Receivable are offered in subscription plans (such as Essentials, Team, and Corporate) that are priced per user per month
  ```

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/b860eefe-cc19-4dac-88e5-f27238c30d97) · [Read transcript](https://www.ax-check.com/bill.com/sessions/kimi.json)
Final output lists BILL plan tiers ($49/$65/$89/user/month, Enterprise custom) with explicit assumptions: pricing checked date 2026-09-29, API access gated to Enterprise tier, sandbox not charged, and separate per-transaction payment fees.
Session findings unavailable.

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/e7beb9e0-1c2c-4239-8650-1b53ae1195a9) · [Read transcript](https://www.ax-check.com/bill.com/sessions/qwen.json)
Final output explicitly refuses to give a price ('I can't tell you... I'm not going to invent numbers or a pricing model') — no pricing figure or assumption set was ever stated.
#### End-to-end onboarding
- **Onboarding needs a login**: Agent found no BILL credentials in the environment (only an unrelated, unused gateway key), no SDK installed, and no docs/spec locally. It concluded that BILL's developer signup requires a human-gated step (registered developer account, devKey/appId, company ID) and stopped without obtaining or using any real credentials.
  Event 6:

  ```text
  PI_GATEWAY_API_KEY=unused***
  ```
  Event 23:

  ```text
  No credentials, and I can't self-serve them. Bill.com's API needs a registered developer account plus devKey/appId, an authenticated session, and a company ID. Signup requires a human, a real company account, and often a partner agreement. That's a human-gated step, not something I can act on.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No BILL developer credentials available in sandbox**: The environment had no BILL/bill.com API keys, SDK, or docs, and BILL's developer onboarding requires human signup (registered developer account, devKey/appId, company ID). This is a missing-credentials/test-environment limitation rather than a product defect, since normal login/signup gating is expected for a financial API.
  Event 6:

  ```text
  PI_GATEWAY_API_KEY=unused***
  ```
  Event 23:

  ```text
  No credentials, and I can't self-serve them. Bill.com's API needs a registered developer account plus devKey/appId, an authenticated session, and a company ID.
  ```
- **Empty repo with no BILL SDK or reference code**: The repo contained only a .gitignore and a single initial commit, with no BILL SDK installed in node/python and no matching package found via npm registry search. This is a test-environment limitation (empty starter repo), not a product issue.
  Event 7:

  ```text
  total 16
  drwxr-xr-x 3 root root 4096 Sep 18 08:00 .
  ... --- git ---
  9ebf5fb Initial workspace
  ```
  Event 20:

  ```text
  bill | css selectors for React Elements
  ```

#### Suggested Changes
None identified in this transcript.

### Task given to each agent
Help me build a simple example using BILL. Tell me how pricing works, and briefly tell me whether this product will be easy for you to manage. Let me know if you get blocked. If this product has no developer workflow you can act on, say so plainly and stop. Stay light: use the hosted product through its SDK or API. Do not start local service stacks or wait for long-running commands; if the quickstart requires either, say so plainly and stop.

No product credentials were supplied and no purchases were authorized.

## Score: B · 82/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Failed** — Homepage answers Markdown requests

  ```text
  Homepage returned text/html even when text/markdown was requested; no Markdown representation served.
  ```

- **Failed** — llms.txt mentions offered API, MCP, and skills

  ```text
  llms.txt covers products, integrations, and blog but never mentions the offered API or developer docs.
  ```

- **Pass** — llms.txt provides an actionable documentation index

  ```text
  llms.txt links product overviews, learning center, integrations, and compare pages with descriptions.
  ```

- **Pass** — llms.txt provides navigation guidance

  ```text
  llms.txt groups resources under Homepage, Product Overviews, Learning Center, Blog, Integrations, and Compare headings.
  ```

- **Pass** — A compact guide representation exists

  ```text
  developer.bill.com serves .md pages; llms.txt notes appending .md to any docs URL.
  ```

- **Pass** — A focused guide is directly retrievable

  ```text
  BILL v3 API get-started guide fetched as standalone Markdown with sign-up and workflow steps.
  ```

- **Pass** — Equivalent instructions fit a token budget

  ```text
  Markdown guide measured 1288 tokens, well under the 8000-token budget.
  ```

- **Skipped** — Product-docs links survive format changes

  ```text
  Homepage Markdown unsupported, so link preservation across formats cannot be measured.
  ```

- **Pass** — The compact guide is independently actionable

  ```text
  BILL v3 API guide gives concrete steps: sandbox sign-up, POST /v3/login, then create bills and pay vendors.
  ```

- **Pass** — Install and next-step links resolve

  ```text
  Fetched signup and API get-started pages returned 200; install/next-step routes resolve.
  ```


### Onboarding
- **Pass** — Docs lead to a relevant quickstart

  ```text
  BILL v3 API get-started page gives sign-up steps and links to sandbox API sign up and recipes.
  ```

- **Skipped** — Installation commands are extractable

  ```text
  No install commands; BILL is a REST API with no SDK/CLI install shown in fetched docs.
  ```

- **Skipped** — Code examples are available without interaction

  ```text
  Fetched docs describe endpoints and workflows but show no inline code examples.
  ```

- **Pass** — Prerequisites and auth boundaries are explicit

  ```text
  Docs state developer key and S&E API token required, linking sandbox sign-up and auth pages.
  ```


### Pricing
- **Failed** — Agents identify pricing and its assumptions

  ```text
  3 of 3 sessions were judged on pricing; 1 fell short. DeepSeek V4.1 Flash: Final output gives concrete pricing tiers (Essentials/Team/Corporate, ~$89/user/mo) plus per-transaction fees, explicitly sourced 'from bill.com/pricing' and framed with the assumption that cost depends on AP/AR user count and payment method mix. Kimi K3: Final output lists BILL plan tiers ($49/$65/$89/user/month, Enterprise custom) with explicit assumptions: pricing checked date 2026-09-29, API access gated to Enterprise tier, sandbox not charged, and separate per-transaction payment fees. Qwen 3.8 Max: Final output explicitly refuses to give a price ('I can't tell you... I'm not going to invent numbers or a pricing model') — no pricing figure or assumption set was ever stated. This behavioural item does not affect the fast grade.
  ```

- **Pass** — Pricing is readable without interaction

  ```text
  Pricing page renders plan tiers and fees directly in fetched HTML, no interaction needed.
  ```

- **Pass** — Prices are stated, not gated

  ```text
  Prices stated: Essentials $49, Team $65, Corporate $89 per user/month; Spend & Expense $0.
  ```

- **Pass** — Pricing units and limits are explicit

  ```text
  Units explicit: per user/month plans plus detailed per-transaction fee table.
  ```


### Activation
- **Pass** — An API reference or OpenAPI spec is reachable

  ```text
  BILL v3 API reference overview and full endpoint index reachable on developer.bill.com.
  ```

- **Skipped** — An MCP server is documented and well-formed

  ```text
  No MCP server documentation found in fetched BILL pages.
  ```

- **Skipped** — A CLI install path is documented

  ```text
  No CLI install path documented in fetched BILL developer pages.
  ```

- **Skipped** — SDK packages resolve on their registries

  ```text
  No SDK package registry lookup supplied for BILL developer packages.
  ```

- **Skipped** — Agent skills are published

  ```text
  No agent skills published in fetched BILL documentation.
  ```



[Full report data](https://www.ax-check.com/bill.com/report.json)
