# Stripe — Accounting API: overview

> Canonical URL: https://developers.apideck.com/apis/accounting/stripe/overview

Stripe is a payment processing platform that enables businesses to accept online payments, manage billing, and handle subscriptions.
- Status: live
- Authentication: oauth2

- **costs:** Free: Stripe charges no API, setup or monthly fees. Its per-transaction payment processing fees do not apply to API access.
- **sandbox available:** true
- **environment notes:**   - **environment:** Test mode and sandboxes
  - **description:** Stripe issues separate test-mode and sandbox install links for your app. The Client Secret you configure in Apideck must be the secret key for the same mode as the install link. Sandbox installs work only when the app opts in to sandbox compatibility.
  - **description:** Use the live-mode install link together with your live-mode secret key; credentials cannot be mixed across modes. Test-mode and live-mode data stay fully separate, so a connection authorised in one mode never exposes the other.
  - **environment:** Live mode
- **external guides:**   - **url:** https://docs.stripe.com/stripe-apps/api-authentication/oauth
  - **source:** Stripe
  - **title:** Stripe Apps: OAuth 2.0 authentication
  - **url:** https://docs.stripe.com/stripe-apps/test-app
  - **source:** Stripe
  - **title:** Test your app externally
  - **url:** https://docs.stripe.com/stripe-apps/publish-app
  - **title:** Publish an app to the Stripe App Marketplace
  - **source:** Stripe
  - **url:** https://docs.stripe.com/stripe-apps/reference/permissions
  - **source:** Stripe
  - **title:** Stripe Apps permissions reference
  - **source:** Stripe
  - **title:** Rate limits
  - **url:** https://docs.stripe.com/rate-limits
  - **source:** Apideck
  - **url:** https://github.com/apideck-samples/stripe-app
  - **title:** Example Stripe App for Apideck
- **authentication note:** Authorization Code flow through a Stripe App that you build and own.
- **consumer access level:** Administrator on the Stripe account (required to install a Stripe App)
- **supported resource categories:**   - **name:** Core Financial
  - **resources:** company-info
tax-rates
  - **name:** Accounts Receivable
  - **resources:** customers
invoices
invoice-items
credit-notes
payments
refunds
  - **name:** Accounts Payable
  - **resources:** expenses
  - **name:** Banking
  - **resources:** bank-accounts
- **apideck credentials available:** false
- **account type required:** Any activated Stripe account
- **sandbox note:** Free and built in: every Stripe account includes test mode plus up to 5 isolated sandboxes.
- **difficulty reason:** Self-Service OAuth + Stripe App Marketplace Review Required to Scale
- **partnership note:** None: no partner programme, contract or fee.
- **important to know:** Consumers connect through your Stripe App's External test install link, the route this connector uses today. Stripe caps external testing at 25 tester accounts per app, badges the app as a test version, and requires you to tell users it has not been reviewed by Stripe.
Stripe's route past external testing is publishing the app on the Stripe App Marketplace: Stripe reviews it and replies within 4 business days, the account must be activated, one public app is allowed per Stripe account, and the name cannot contain Stripe, app, free or paid.
Creating that app is a small build rather than a portal form: you create and upload it with the Stripe CLI and configure it through a JSON manifest, so this step needs a developer.
Stripe is a payments and billing platform rather than a general ledger, so what the connector exposes is Stripe's billing data mapped onto accounting resources: expect invoicing and payments coverage rather than bookkeeping.
- **responsibility matrix:**   - **customer:** ✓
  - **area:** Create a Stripe account
  - **customer:** ✓
  - **apideck:** Docs and sample app provided
  - **area:** Build and upload the Stripe App (OAuth enabled)
  - **area:** Add Client ID, secret key and Channel Link ID to Apideck
  - **customer:** ✓
  - **area:** Publish the app on the Stripe App Marketplace
  - **customer:** ✓ (to scale beyond external testing)
  - **consumer:** ✓ (Administrator)
  - **apideck:** Handles OAuth flow
  - **area:** Authorize Connection (OAuth)
  - **area:** Register webhooks
  - **apideck:** ✓ Automatic per connection
  - **customer:** ✓
  - **apideck:** Maintains connector
  - **area:** Build via Unified API
  - **area:** Token refresh
  - **apideck:** ✓ Automatic
  - **area:** Monitor connections
  - **customer:** ✓ Via Apideck Dashboard
  - **consumer:** ✓ Can uninstall the app in Stripe
  - **apideck:** Logs and alerts
- **rate limits:** 100 requests/second per connected Stripe account in live mode; 25/second in test mode and sandboxes, and on most individual endpoints.
- **sandbox url:** https://docs.stripe.com/sandboxes
- **difficulty:** moderate
- **webhooks:** Native — customer, invoice, credit note, invoice item, payment, expense, refund, tax rate and company info events (21 Stripe events mapped).
- **apideck credentials note:** Apideck holds no shared Stripe App, so you supply your own app's credentials.
- **partnership required:** false

## Supported resources

[Accounting data model](/guides/accounting-data-model.md)

- **id:** customers
- **status:** live
- **name:** Customers
- **custom field support:** true
- **downstream name:** Customers
- **downstream id:** customers
- **status:** live
- **custom field support:** false
- **id:** invoices
- **name:** Invoices
- **downstream id:** invoices
- **downstream name:** Invoices
- **id:** payments
- **status:** live
- **custom field support:** true
- **downstream id:** payments
- **downstream name:** Payments
- **name:** Payments
- **name:** Credit Notes
- **downstream name:** Credit Notes
- **custom field support:** true
- **status:** live
- **id:** credit-notes
- **downstream id:** credit-notes
- **id:** tax-rates
- **downstream id:** tax-rates
- **name:** Tax Rates
- **downstream name:** Tax Rates
- **status:** live
- **custom field support:** false
- **id:** invoice-items
- **downstream name:** Products
- **downstream id:** products
- **status:** live
- **custom field support:** true
- **name:** Invoice Items
- **status:** beta
- **custom field support:** true
- **downstream id:** refunds
- **name:** Refunds
- **id:** refunds
- **downstream name:** Refunds
- **name:** Company Info
- **downstream name:** Company Info
- **downstream id:** company-info
- **id:** company-info
- **status:** live
- **custom field support:** false
- **custom field support:** true
- **status:** live
- **downstream id:** expenses
- **downstream name:** Expenses
- **id:** expenses
- **name:** Expenses
- **downstream name:** Bank Accounts
- **name:** Bank Accounts
- **downstream id:** bank-accounts
- **status:** beta
- **custom field support:** true
- **id:** bank-accounts

An omitted operation list does not establish operation support. Verify the selected operation in the coverage matrix.

[API reference](https://developers.apideck.com/apis/accounting/reference.md) · [Coverage matrix](https://developers.apideck.com/apis/accounting/coverage)
