# AX Check: stripe.com
Checked 2026-11-03.

Stripe docs let agents get checkout running and priced fast
18 of 23 checks passed: quickstarts give runnable code and install commands, and pricing (2.9% + 30¢) is stated plainly with units and caps.

## Onboarding needs a login

## Coding sessions
All three independent sessions (DeepSeek V4.1 Flash, Kimi K3, Qwen 3.8 Max) completed and correctly reported pricing as 2.9% + 30¢ per transaction for standard US card payments, each separately noting surcharges for international cards and currency conversion plus lower Billing rates.

### DeepSeek V4.1 Flash
[View public run](https://agents.withgauge.com/p/runs/2f253b0b-92d5-45ab-b4cb-c44f8d7597f4) · [Read transcript](https://www.ax-check.com/stripe.com/sessions/deepseek.json)
Quoted 2.9% + 30¢, scoped to US standard pricing, domestic cards and successful transactions only. Added international and currency-conversion surcharges and noted that rates vary by country. (seq 29, seq 36, seq 61, README.md)
#### End-to-end onboarding
- **Onboarding needs a login**: The agent never obtained a Stripe API key on its own. It searched the sandbox env and filesystem for existing Stripe credentials, found none, then wrote a working example script and only tested it with a deliberately fake key to confirm the request reaches Stripe's API (which returned a 401 auth error). No real account, no real secret key, and no authenticated operation against the hosted Stripe API were ever completed.
  Event 6:

  ```text
  no stripe env vars
  ```
  Event 55:

  ```text
  Stripe error: {
    type: 'StripeAuthenticationError',
    code: undefined,
    statusCode: 401,
    message: 'Invalid API Key provided: sk_test_************real'
  }
  ```
  Event 42:

  ```text
  There is **no Stripe API key** in this sandbox (`STRIPE_SECRET_KEY` is unset), so the example cannot make real calls here. The code itself is complete and runs against a test key. Without credentials, any API call returns `401`.
  ```

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

#### Blockers
- **No Stripe API key available in the sandbox**: The sandbox had no STRIPE_SECRET_KEY and no mechanism for the agent to self-provision a Stripe account or test key. This is a normal credential/login requirement of the product, not a Stripe defect — creating an account and grabbing a test key requires a human to sign up at the Stripe Dashboard. The agent correctly identified this and stopped short of claiming a real transaction succeeded.
  Event 4:

  ```text
  no stripe env vars
  ```
  Event 42:

  ```text
  There is **no Stripe API key** in this sandbox (`STRIPE_SECRET_KEY` is unset), so the example cannot make real calls here.
  ```

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

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/e7f0871c-429b-4226-ae52-f6782d9bf47b) · [Read transcript](https://www.ax-check.com/stripe.com/sessions/kimi.json)
Quoted 2.9% + $0.30 per transaction, scoped to successful domestic card charges on the standard no-monthly-fee plan, with surcharges for international cards and currency conversion, and free test mode (figures not checked against a source) (seq 26)
#### End-to-end onboarding
- **Onboarding needs a login**: The agent never obtained a Stripe API key on its own. It checked the environment for STRIPE_SECRET_KEY, found none, wrote a script that depends on it, and the script exited with an explicit message asking the human to supply a sk_test_ key. No authenticated call to the real Stripe API was ever made (only a dummy key was used to confirm the SDK loads, not to hit the API).
  Event 4:

  ```text
  STRIPE key set: 
  ```
  Event 25:

  ```text
  Set STRIPE_SECRET_KEY (use a sk_test_... key) to run this.
  
  
  Command exited with code 1
  ```
  Event 26:

  ```text
  I don't have a Stripe API key (`STRIPE_SECRET_KEY` is unset in this environment), so I couldn't make a live test-mode API call.
  ```

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

#### Blockers
- **Missing Stripe API key blocked any live API call**: No STRIPE_SECRET_KEY was present in the sandbox and the agent has no self-service way to generate one (that requires a human to sign up at Stripe and copy a test key from the dashboard). This is a missing-credentials limitation of the test environment, not a product defect — Stripe's SDK and workflow otherwise functioned normally once the key issue and local bugs were fixed.
  Event 4:

  ```text
  STRIPE key set: 
  ```
  Event 25:

  ```text
  Set STRIPE_SECRET_KEY (use a sk_test_... key) to run this.
  
  
  Command exited with code 1
  ```
- **Agent-introduced bugs in the generated script (self-corrected)**: The first draft of checkout.js called require('dotenv') without installing the dotenv package, and a separate test command referenced stripe/package.json which the installed package does not expose via its public exports map. Both were agent authoring errors, not Stripe product issues, and both were fixed within the same turn (removing the dotenv require, dropping the package.json probe) before the script ran as intended.
  Event 15:

  ```text
  Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './package.json' is not defined by "exports" in /sandbox/repo/node_modules/stripe/package.json
  ```
  Event 18:

  ```text
  Error: Cannot find module 'dotenv'
  ```

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

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/0a3ede27-a2ae-40cc-81de-cd97456af0de) · [Read transcript](https://www.ax-check.com/stripe.com/sessions/qwen.json)
Quoted 2.9% + $0.30 for standard US card payments, with surcharges for international cards and currency conversion, Billing at 0.5–0.8%, no monthly fee, and free test mode. Figures came from memory, not a pricing page. (seq 29)
#### End-to-end onboarding
- **Onboarding needs a login**: The agent never obtained a Stripe API key on its own. It checked the environment for STRIPE_SECRET_KEY, found none, and proceeded to write a script that requires one. It only tested the script with no key (immediate exit) and a dummy key (authentication failure), never a real authenticated call to the Stripe API.
  Event 4:

  ```text
  env | grep -i -E "stripe|STRIPE" ; ls ~/.config 2>/dev/null; which stripe node npm python3 2>/dev/null
  ```
  Event 29:

  ```text
  **No `STRIPE_SECRET_KEY` is available in this environment.** To actually create a session, you need a free test key from https://dashboard.stripe.com/test/apikeys
  ```
  Event 27:

  ```text
  Missing STRIPE_SECRET_KEY. Get a test key from https://dashboard.stripe.com/test/apikeys
  ---
  Stripe error: Invalid API Key provided: sk_test_*ummy
  ```

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

#### Blockers
- **No Stripe API key available in the sandbox**: The environment has no STRIPE_SECRET_KEY and the agent has no way to self-service one (Stripe requires dashboard-based signup/login to generate a key). This is a normal credential requirement, not a product defect — the agent correctly identified it and stopped rather than faking success.
  Event 14:

  ```text
  Network works (Stripe API reachable, npm reachable), but there's no `STRIPE_SECRET_KEY` in the environment.
  ```
  Event 29:

  ```text
  **No `STRIPE_SECRET_KEY` is available in this environment.** To actually create a session, you need a free test key from https://dashboard.stripe.com/test/apikeys
  ```

#### Suggested Changes
- **Clarify the npm stripe SDK's CJS package.json export restriction in quickstart docs**: Running `require('stripe/package.json')` throws ERR_PACKAGE_PATH_NOT_EXPORTED because the package's exports field blocks that subpath. This tripped up the agent's version-check attempt (a common pattern for verifying successful install). Document the correct way to check the installed SDK version (e.g. reading node_modules/stripe/package.json directly or using npm list) in the Node quickstart to avoid this confusing error on a routine sanity check.
  Event 18:

  ```text
  Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './package.json' is not defined by "exports" in /sandbox/repo/node_modules/stripe/package.json
  ```

### Task given to each agent
Help me build a simple example using Stripe. 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 · 84/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 for a text/markdown request; no Markdown representation served.
  ```

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

  ```text
  llms.txt lists product docs, API reference, testing, and payouts links with descriptions.
  ```

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

  ```text
  llms.txt groups links under Payments, Connect, Billing, Documentation and Resources headings.
  ```

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

  ```text
  llms.txt links API Reference and mentions agentic payments via MPP and x402.
  ```

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

  ```text
  docs.stripe.com serves .md pages, e.g. checkout/quickstart.md and billing/quickstart.md, as text/markdown.
  ```

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

  ```text
  checkout/quickstart.md gives install, session creation, run steps and test cards.
  ```

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

  ```text
  checkout/quickstart.md is 9665 tokens, under the 8000-token guide 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
  Checkout quickstart gives install commands, server code, test cards, and next steps.
  ```

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

  ```text
  Fetched quickstart and API pages resolve; install and next-step links succeed.
  ```


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

  ```text
  Checkout and Billing quickstarts give full working sample apps with concrete steps.
  ```

- **Pass** — Installation commands are extractable

  ```text
  Quickstarts list install commands: npm install stripe, gem install stripe, pip3 install stripe, composer require.
  ```

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

  ```text
  Quickstart pages embed full client and server code samples in multiple languages without interaction.
  ```

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

  ```text
  Quickstarts require secret API key, show where to get it, and warn against committing keys.
  ```


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

  ```text
  Pricing page renders full fee tables as static HTML text without interaction.
  ```

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

  ```text
  Concrete prices stated: 2.9% + 30¢, 0.7% Billing, $620/mo, $15 disputes.
  ```

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

  ```text
  Units and caps explicit: per transaction, $5.00 ACH cap, $2.00 invoice cap.
  ```

- **Pass** — Agents identify pricing and its assumptions

  ```text
  3 of 3 sessions were judged on pricing; 0 fell short. DeepSeek V4.1 Flash: Quoted 2.9% + 30¢, scoped to US standard pricing, domestic cards and successful transactions only. Added international and currency-conversion surcharges and noted that rates vary by country. (seq 29, seq 36, seq 61, README.md) Kimi K3: Quoted 2.9% + $0.30 per transaction, scoped to successful domestic card charges on the standard no-monthly-fee plan, with surcharges for international cards and currency conversion, and free test mode (figures not checked against a source) (seq 26) Qwen 3.8 Max: Quoted 2.9% + $0.30 for standard US card payments, with surcharges for international cards and currency conversion, Billing at 0.5–0.8%, no monthly fee, and free test mode. Figures came from memory, not a pricing page. (seq 29) This behavioural item does not affect the fast grade.
  ```


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

  ```text
  Stripe API Reference at docs.stripe.com/api.md documents REST endpoints, base URL, and client libraries.
  ```

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

  ```text
  No MCP server documentation found in the fetched Stripe documents.
  ```

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

  ```text
  Stripe CLI is referenced (stripe listen) but no dedicated CLI install path page was fetched.
  ```

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

  ```text
  npm stripe and PyPI stripe registry lookups both returned HTTP 200.
  ```

- **Skipped** — Agent skills are published

  ```text
  No agent skills documentation found in the fetched Stripe documents.
  ```



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