```markdown
# Stripe API Reference

This section of the Stripe API documentation provides a comprehensive overview of Stripe's API, organized by resource. Each resource has its own section, detailing its attributes, available actions, and examples.

## Core Resources

*   **/api/accounts**: Manages Stripe accounts, allowing for creation, retrieval, updates, deletion, and rejection of accounts. It also provides endpoints for login links and account links.
*   **/api/account_links**: Facilitates the creation of account links, which grant connected accounts access to Stripe-hosted applications like Connect Onboarding.
*   **/api/account_sessions**: Enables the creation of account sessions, granting platforms client-side API access to connected accounts through Connect embedded components.
*   **/api/application_fees**: Manages application fees, allowing for retrieval, listing, and refunding of fees collected on behalf of users.
*   **/api/balance**: Provides access to the Stripe balance, including available and pending funds, and details on balance transactions.
*   **/api/balance-settings**: Allows for the customization of account balances and payout settings for connected accounts.
*   **/api/balance_transactions**: Represents funds moving through a Stripe account, created for every transaction that enters or leaves the balance.
*   **/api/capabilities**: Manages capabilities for Stripe accounts, allowing for retrieval, listing, updating, and deletion of capabilities.
*   **/api/cards**: Handles card information for customers and external accounts, enabling creation, updates, retrieval, listing, and deletion of cards.
*   **/api/cash_balance**: Represents a customer's cash balance, which can be used for payments and payouts.
*   **/api/charges**: Manages charges, including creation, updates, retrieval, listing, capture, and search functionality.
*   **/api/checkout/sessions**: Represents a customer's session during the payment process, providing a shareable URL for one-time purchases or subscriptions.
*   **/api/climate/order**: Manages orders for Climate products, representing the intent to purchase carbon removal units.
*   **/api/confirmation_tokens**: Facilitates the secure transport of client-side data to the server for confirming PaymentIntents or SetupIntents.
*   **/api/connected-accounts**: Allows platforms to issue requests on behalf of their connected accounts by including a `Stripe-Account` header.
*   **/api/country_specs**: Provides information about country-specific requirements for account creation and supported payment methods.
*   **/api/coupons**: Manages coupons, which represent percent-off or amount-off discounts that can be applied to subscriptions, invoices, and more.
*   **/api/credit_notes**: Allows for the issuance of credit notes to adjust an invoice's amount after it has been finalized.
*   **/api/disputes**: Manages disputes, where customers question charges with their card issuer, and provides functionality to respond with evidence.
*   **/api/entitlements**: Represents a customer's access to a feature, with functionalities for retrieving and listing active entitlements.
*   **/api/financial_connections**: Provides access to Financial Connections Accounts, representing accounts outside of Stripe to which access has been granted.
*   **/api/forwarding**: Enables the creation and management of forwarding requests, instructing Stripe to make requests on your behalf to a destination URL.
*   **/api/identity**: Manages identity verification processes for users, including creating, updating, retrieving, and listing verification sessions and reports.
*   **/api/invoice**: Handles invoices, which are statements of amounts owed by a customer, and includes functionality for creating, updating, retrieving, listing, deleting, finalizing, marking as uncollectible, paying, searching, sending, and voiding invoices.
*   **/api/invoiceitems**: Represents the component lines of an invoice, which can be created before an invoice is finalized.
*   **/api/issuing**: Manages issuing cards and disputes, allowing for the creation, update, retrieval, listing, and reversal of authorizations and disputes.
*   **/api/mandates**: Records customer permission to debit their payment method, with functionalities for retrieval and listing.
*   **/api/metadata**: Allows attaching key-value data to Stripe objects for storing additional information.
*   **/api/payment_intents**: Guides the process of collecting payments from customers, managing payment attempts, and handling confirmations.
*   **/api/payment_method_configurations**: Controls which payment methods are displayed to customers when payment method types are not explicitly specified.
*   **/api/payment_method_domains**: Represents web domains registered with Stripe, used by Stripe Elements for payment method display control.
*   **/api/payment_methods**: Represents customer payment instruments, usable with PaymentIntents for collecting payments or saving for future use.
*   **/api/promotion_codes**: Represents customer-redeemable codes for underlying promotions, with functionalities for creation, update, retrieval, listing, and deletion.
*   **/api/quotes**: Models prices and services for a customer, automatically creating invoices, subscriptions, or subscription schedules upon acceptance.
*   **/api/refunds**: Manages refunds for previously created charges that have not yet been refunded.
*   **/api/reporting**: Provides access to Report Runs and Report Types for generating and retrieving various financial reports.
*   **/api/reserve**: Manages ReserveHolds and ReservePlans, allowing platforms to hold a portion of a connected account's funds to cover potential losses.
*   **/api/secrets**: Provides access to the Secret Store API for securely persisting secrets for UI Extensions and app backends.
*   **/api/setup_attempts**: Describes attempted confirmations of SetupIntents, providing details of each setup attempt.
*   **/api/setup_intents**: Guides the process of setting up and saving customer payment credentials for future payments.
*   **/api/shipping_rates**: Describes the price of shipping presented to customers and applied to purchases.
*   **/api/subscriptions**: Manages recurring customer payments, with functionalities for creation, update, retrieval, listing, cancellation, migration, resumption, and search.
*   **/api/subscription_items**: Allows for the creation and management of multiple plans within a customer subscription, representing complex billing relationships.
*   **/api/subscription_schedules**: Enables the creation and management of subscription lifecycles by predefining expected changes.
*   **/api/tax/associations**: Exposes Tax Transactions that Stripe attempted to create based on PaymentIntent input.
*   **/api/tax/calculations**: Allows for the calculation of tax to be collected from customers.
*   **/api/tax/registrations**: Informs Stripe that a business is registered to collect tax in a specific region, enabling automatic tax collection.
*   **/api/tax_codes**: Classifies goods and services for tax purposes.
*   **/api/tax_ids**: Allows adding tax identification numbers to customers or accounts, which are displayed on invoices and credit notes.
*   **/api/tax_rates**: Manages tax rates that can be applied to invoices, subscriptions, and Checkout Sessions.
*   **/api/terminal**: Provides functionalities for managing Terminal hardware, including configurations, orders, readers, and personalization designs.
*   **/api/tokens**: Handles tokenization for securely collecting sensitive payment or PII information.
*   **/api/transfer_reversals**: Manages reversals of transfers made to connected accounts, allowing for full or partial reversals and optional refunding of application fees.
*   **/api/transfers**: Represents funds moved between Stripe accounts as part of Connect.
*   **/api/treasury**: Manages financial accounts, inbound transfers, outbound payments, and outbound transfers, facilitating money movement.
*   **/api/webhooks**: Allows configuration of webhook endpoints to receive notifications about events occurring in Stripe accounts.

## API Concepts

*   **Authentication**: Stripe API uses API keys for authentication, with test and live secret keys having distinct prefixes. Restricted API keys offer granular permissions.
*   **Errors**: Stripe uses conventional HTTP response codes to indicate success or failure of API requests. 2xx codes indicate success, 4xx indicate client errors, and 5xx indicate server errors.
*   **Expanding Responses**: Many objects allow for requesting additional information as an expanded response using the `expand` request parameter.
*   **Idempotent requests**: The API supports idempotency for safely retrying requests without accidental duplication of operations.
*   **Metadata**: A set of key-value pairs that can be attached to Stripe objects for storing additional, structured information.
*   **Pagination**: List API methods support bulk fetches through cursor-based pagination using `starting_after` and `ending_before` parameters.
*   **Search**: Some top-level API resources support retrieval via "search" API methods using Stripe's Search Query Language.
*   **Versioning**: Stripe's API has major and monthly releases, with major releases potentially including backward-incompatible changes. API versioning is recommended for testing before committing to upgrades.

```