Stripe API logo

Stripe API

Stripe API

Payment and commerce infrastructure API covering card payments, subscriptions, marketplaces, and disputes.

Visit site ↗Health checked 9h ago
Use it when

Best-in-class developer documentation

Watch for

Per-transaction fees can be heavy for small-ticket payments

First check

Sign up at stripe.com and grab a test/live secret key from the Dashboard. All requests authenticate via the Authorization header with your secret key. Build and verify everything in test mode, then switch to live.

Auth
api_key
CORS
No
HTTPS
Yes
Signup
Required
Latency
333 ms
Protocol
REST
Pricing
paid

Uptime · 30-day window

Probes: 1Uptime: 100%Avg latency: 333ms
01

About this API

Stripe is payment and commerce infrastructure built for software businesses. It wraps card acquiring, recurring billing, dispute management, compliance, and marketplace split payouts into a single REST API, so developers can accept online payments without integrating bank-by-bank.

What sets Stripe apart is the developer experience: versioned APIs, SDKs in every major language, field-level documentation, and a thorough test mode (with dozens of simulated cards covering 3DS, declines, disputes, and more). Its product surface — Connect, Billing, Tax, Identity, Issuing — shares the same API shape, so an app can grow from a single-merchant integration to a marketplace or global operation without rewriting integration logic.

Pricing is per-transaction; there is no monthly fee but small-ticket payments carry a relatively high effective rate. Some advanced products (card issuing, banking) are gated by country. Check supported-region pages before committing to a launch market.

02

What you can build

  • 1Accept card and wallet payments
  • 2Build subscriptions and usage-based billing
  • 3Run a marketplace with split payouts via Connect
  • 4Handle refunds, disputes, and reconciliation
  • 5Embed Stripe Checkout or Elements
03

Strengths & limitations

Strengths

  • Best-in-class developer documentation
  • SDKs in all major languages
  • Idempotency keys make retries safe
  • Comprehensive test mode with simulated card scenarios

Limitations

  • Per-transaction fees can be heavy for small-ticket payments
  • Country and currency support varies — check supported regions
  • Some advanced features (Issuing, Atlas) are region-gated
04

Example request

Generic template — replace <endpoint> with the real path from the docs.
curl https://stripe.com/<endpoint> \
  -H "Authorization: Bearer $API_KEY"
# Some providers use X-Api-Key instead — verify in the docs.
05

Getting started

Sign up at stripe.com and grab a test/live secret key from the Dashboard. All requests authenticate via the Authorization header with your secret key. Build and verify everything in test mode, then switch to live.

06

FAQ

Is there a cost to use the API?+

API calls themselves are free; you only pay fees on actual transactions — about 2.9% + $0.30 per card charge, with surcharges for cross-border and currency conversion.

How should I store the secret key?+

Keep it only in server-side environment variables — never bundle it in frontend code or commit it. Use restricted keys to scope permissions.

Which countries does Stripe support?+

Acquired currencies and merchant payout countries differ; check stripe.com/global for the current matrix.

Is there a test environment?+

Yes — a full test mode with dozens of simulated cards covering declines, 3DS, disputes, and more. Test and live keys are fully isolated.

Does the API have versioning?+

Every request runs against your account API version. Upgrade in the Dashboard or pin per-request via the Stripe-Version header.

07

Technical details

CORS: NoHTTPS: YesSignup: YesOpen source: No
Auth type
api_key
Pricing
paid
Protocols
REST
SDKs
python, javascript, typescript, ruby, java, go, php, csharp
Response time
333 ms
Last health check
5/12/2026, 7:38:28 AM
08

Endpoints

Parsed from the OpenAPI spec. Showing 12 of 442 non-deprecated endpoints.

GET
/v1/account
expand:query
POST
/v1/account_links
GET
/v1/accounts
created:queryending_before:queryexpand:querylimit:querystarting_after:query
POST
/v1/accounts
DELETE
/v1/accounts/{account}
account:path*
GET
/v1/accounts/{account}
account:path*expand:query
POST
/v1/accounts/{account}
account:path*
POST
/v1/accounts/{account}/bank_accounts
account:path*
DELETE
/v1/accounts/{account}/bank_accounts/{id}
account:path*id:path*
GET
/v1/accounts/{account}/bank_accounts/{id}
account:path*expand:queryid:path*
POST
/v1/accounts/{account}/bank_accounts/{id}
account:path*id:path*
GET
/v1/accounts/{account}/capabilities
account:path*expand:query

430 more endpoints not shown. See the OpenAPI spec for the full list.

09

Tags

10

Alternatives to consider

Different providers solving similar problems. Picked by category, auth, pricing, and tag overlap.