Stripe Charges API

The Charge object represents a single attempt to move money into your Stripe account. PaymentIntent confirmation is the most common way to create Charges, but transferring money to a different Stripe account through Connect also creates Charges. Some legacy payment flows create Charges directly, which is not recommended for new integrations.

Business capability
Card Transaction Processing Management BC-1340.70

Operations 14

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /v1/charges List charges · Get charges #
Ask an LLM
“How do I see all the charges I've made, newest first?”
“Can I list only the charges for one customer?”
Tell an agent
List my recent charges.
List charges for customer {customer}.
POST /v1/charges Charge a card or payment source · Post charges #
Ask an LLM
“How do I charge a customer's saved card directly?”
“Can I authorize a charge now and capture it later?”
Tell an agent
Charge customer {customer} {amount} {currency}.
Charge {amount} {currency} to source {source} for {description}.
GET /v1/charges/search Search charges · Get charges search #
Ask an LLM
“How do I find charges matching an amount, status or metadata value?”
“Can I search charges right after creating one?”
Tell an agent
Search charges for {query}.
Find up to {limit} charges matching {query}.
GET /v1/charges/{charge} Get a charge · Get charges charge #
Ask an LLM
“How do I look up the details of one charge?”
“Did this charge succeed, and was it refunded?”
Tell an agent
Show charge {charge}.
Check the status of charge {charge}.
POST /v1/charges/{charge} Update a charge · Post charges charge #
Ask an LLM
“How do I change the description or receipt email on a charge?”
“Can I flag a charge as fraudulent after the fact?”
Tell an agent
Set the description of charge {charge} to {description}.
Send the receipt for charge {charge} to {receipt_email}.
POST /v1/charges/{charge}/capture Capture an authorized charge · Post charges charge capture #
Ask an LLM
“How do I capture a charge I only authorized earlier?”
“Can I capture less than the full authorized amount?”
Tell an agent
Capture charge {charge}.
Capture {amount} of authorized charge {charge}.
GET /v1/charges/{charge}/dispute Get the dispute on a charge · Get charges charge dispute #
Ask an LLM
“How do I see whether a customer disputed a specific charge?”
“What's the status of the chargeback on this charge?”
Tell an agent
Show the dispute on charge {charge}.
Check the chargeback status for charge {charge}.
POST /v1/charges/{charge}/dispute Submit evidence for a charge's dispute · Post charges charge dispute #
Ask an LLM
“How do I respond to a chargeback on a specific charge?”
“Can I save dispute evidence without submitting it yet?”
Tell an agent
Add evidence {evidence} to the dispute on charge {charge}.
Submit evidence {evidence} for charge {charge} now: {submit}.
POST /v1/charges/{charge}/dispute/close Accept the dispute on a charge · Post charges charge dispute close #
Ask an LLM
“How do I concede a chargeback on a charge I can't contest?”
“What happens if I close the dispute on a charge?”
Tell an agent destructive · confirm first
Close the dispute on charge {charge}.
Accept the chargeback on charge {charge} without evidence.
POST /v1/charges/{charge}/refund Refund a charge · Post charges charge refund #
Ask an LLM
“How do I refund a charge that hasn't been refunded yet?”
“Can I still partially refund a charge through the older single-refund charge endpoint?”
Tell an agent
Refund charge {charge} in full.
Refund {amount} of charge {charge} for reason {reason}.
GET /v1/charges/{charge}/refunds List refunds on a charge · Get charges charge refunds #
Ask an LLM
“How do I see every refund issued against one charge?”
“Can I page through refunds beyond the ten most recent on a charge?”
Tell an agent
List refunds for charge {charge}.
Show the last {limit} refunds on charge {charge}.
POST /v1/charges/{charge}/refunds Create a refund on a charge · Post charges charge refunds #
Ask an LLM
“How do I issue a new refund against a charge?”
“Can I refund part of a charge more than once until it's fully refunded?”
Tell an agent
Create a refund on charge {charge}.
Issue a {amount} refund on charge {charge} marked {reason}.
GET /v1/charges/{charge}/refunds/{refund} Get a refund on a charge · Get charges charge refunds refund #
Ask an LLM
“How do I check the status of one refund on a charge?”
“Has this refund gone through yet?”
Tell an agent
Show refund {refund} on charge {charge}.
Check whether refund {refund} for charge {charge} succeeded.
POST /v1/charges/{charge}/refunds/{refund} Update a refund on a charge · Post charges charge refunds refund #
Ask an LLM
“How do I add my own notes to a refund?”
“What can I change on a refund after creating it?”
Tell an agent
Set metadata {metadata} on refund {refund} of charge {charge}.
Tag refund {refund} on charge {charge} with {metadata}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/stripe-charges-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

stripe-charges-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Stripe Charges API
  description: Needs description.
  contact:
    email: dev-platform@stripe.com
    name: Stripe Dev Platform Team
    url: https://stripe.com
  termsOfService: https://stripe.com/us/terms/
  version: '2023-10-16'
  x-stripeSpecFilename: spec3
servers:
- url: https://api.stripe.com/
security:
- basicAuth: []
- bearerAuth: []
tags:


# --- truncated at 32 KB (78 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/stripe/refs/heads/main/openapi/stripe-charges-api-openapi.yml