Stripe Issuing API
An API for businesses to instantly create, manage, and distribute payment cards.
An API for businesses to instantly create, manage, and distribute payment cards.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/stripe-issuing-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Stripe Accounts Account Issuing API
description: This is an object representing a Stripe account. You can retrieve it to see properties on the account like its current requirements or if the account is enabled to make live charges or receive payouts.
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:
- name: Issuing
paths:
/v1/issuing/authorizations:
get:
description: <p>Returns a list of Issuing <code>Authorization</code> objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.</p>
operationId: GetIssuingAuthorizations
parameters:
- description: Only return authorizations that belong to the given card.
in: query
name: card
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Only return authorizations that belong to the given cardholder.
in: query
name: cardholder
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Only return authorizations that were created during the given date interval.
explode: true
in: query
name: created
required: false
schema:
anyOf:
- properties:
gt:
type: integer
gte:
type: integer
lt:
type: integer
lte:
type: integer
title: range_query_specs
type: object
- type: integer
style: deepObject
- description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
in: query
name: ending_before
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
- description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
in: query
name: starting_after
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Only return authorizations with the given status. One of `pending`, `closed`, or `reversed`.
in: query
name: status
required: false
schema:
enum:
- closed
- pending
- reversed
type: string
style: form
requestBody:
content:
application/x-www-form-urlencoded:
encoding: {}
schema:
additionalProperties: false
$ref: '#/components/schemas/GetIssuingAuthorizationsRequest'
required: false
responses:
'200':
content:
application/json:
schema:
description: ''
x-expandableFields:
- data
$ref: '#/components/schemas/IssuingAuthorizationList'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/authorizations/{authorization}:
get:
description: <p>Retrieves an Issuing <code>Authorization</code> object.</p>
operationId: GetIssuingAuthorizationsAuthorization
parameters:
- in: path
name: authorization
required: true
schema:
maxLength: 5000
type: string
style: simple
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
requestBody:
content:
application/x-www-form-urlencoded:
encoding: {}
schema:
additionalProperties: false
$ref: '#/components/schemas/GetIssuingAuthorizationsAuthorizationRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.authorization'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
post:
description: <p>Updates the specified Issuing <code>Authorization</code> object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.</p>
operationId: PostIssuingAuthorizationsAuthorization
parameters:
- in: path
name: authorization
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingAuthorizationsAuthorizationRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.authorization'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/authorizations/{authorization}/approve:
post:
description: "<p>[Deprecated] Approves a pending Issuing <code>Authorization</code> object. This request should be made within the timeout window of the <a href=\"/docs/issuing/controls/real-time-authorizations\">real-time authorization</a> flow. \nThis method is deprecated. Instead, <a href=\"/docs/issuing/controls/real-time-authorizations#authorization-handling\">respond directly to the webhook request to approve an authorization</a>.</p>"
operationId: PostIssuingAuthorizationsAuthorizationApprove
parameters:
- in: path
name: authorization
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingAuthorizationsAuthorizationApproveRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.authorization'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/authorizations/{authorization}/decline:
post:
description: '<p>[Deprecated] Declines a pending Issuing <code>Authorization</code> object. This request should be made within the timeout window of the <a href="/docs/issuing/controls/real-time-authorizations">real time authorization</a> flow.
This method is deprecated. Instead, <a href="/docs/issuing/controls/real-time-authorizations#authorization-handling">respond directly to the webhook request to decline an authorization</a>.</p>'
operationId: PostIssuingAuthorizationsAuthorizationDecline
parameters:
- in: path
name: authorization
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingAuthorizationsAuthorizationDeclineRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.authorization'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/cardholders:
get:
description: <p>Returns a list of Issuing <code>Cardholder</code> objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.</p>
operationId: GetIssuingCardholders
parameters:
- description: Only return cardholders that were created during the given date interval.
explode: true
in: query
name: created
required: false
schema:
anyOf:
- properties:
gt:
type: integer
gte:
type: integer
lt:
type: integer
lte:
type: integer
title: range_query_specs
type: object
- type: integer
style: deepObject
- description: Only return cardholders that have the given email address.
in: query
name: email
required: false
schema:
type: string
style: form
- description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
in: query
name: ending_before
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
- description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: Only return cardholders that have the given phone number.
in: query
name: phone_number
required: false
schema:
type: string
style: form
- description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
in: query
name: starting_after
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Only return cardholders that have the given status. One of `active`, `inactive`, or `blocked`.
in: query
name: status
required: false
schema:
enum:
- active
- blocked
- inactive
type: string
style: form
- description: Only return cardholders that have the given type. One of `individual` or `company`.
in: query
name: type
required: false
schema:
enum:
- company
- individual
type: string
x-stripeBypassValidation: true
style: form
requestBody:
content:
application/x-www-form-urlencoded:
encoding: {}
schema:
additionalProperties: false
$ref: '#/components/schemas/GetIssuingCardholdersRequest'
required: false
responses:
'200':
content:
application/json:
schema:
description: ''
x-expandableFields:
- data
$ref: '#/components/schemas/IssuingCardholderList'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
post:
description: <p>Creates a new Issuing <code>Cardholder</code> object that can be issued cards.</p>
operationId: PostIssuingCardholders
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
billing:
explode: true
style: deepObject
company:
explode: true
style: deepObject
expand:
explode: true
style: deepObject
individual:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
preferred_locales:
explode: true
style: deepObject
spending_controls:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingCardholdersRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.cardholder'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/cardholders/{cardholder}:
get:
description: <p>Retrieves an Issuing <code>Cardholder</code> object.</p>
operationId: GetIssuingCardholdersCardholder
parameters:
- in: path
name: cardholder
required: true
schema:
maxLength: 5000
type: string
style: simple
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
requestBody:
content:
application/x-www-form-urlencoded:
encoding: {}
schema:
additionalProperties: false
$ref: '#/components/schemas/GetIssuingCardholdersCardholderRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.cardholder'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
post:
description: <p>Updates the specified Issuing <code>Cardholder</code> object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.</p>
operationId: PostIssuingCardholdersCardholder
parameters:
- in: path
name: cardholder
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
billing:
explode: true
style: deepObject
company:
explode: true
style: deepObject
expand:
explode: true
style: deepObject
individual:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
preferred_locales:
explode: true
style: deepObject
spending_controls:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingCardholdersCardholderRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.cardholder'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/cards:
get:
description: <p>Returns a list of Issuing <code>Card</code> objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.</p>
operationId: GetIssuingCards
parameters:
- description: Only return cards belonging to the Cardholder with the provided ID.
in: query
name: cardholder
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Only return cards that were issued during the given date interval.
explode: true
in: query
name: created
required: false
schema:
anyOf:
- properties:
gt:
type: integer
gte:
type: integer
lt:
type: integer
lte:
type: integer
title: range_query_specs
type: object
- type: integer
style: deepObject
- description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
in: query
name: ending_before
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Only return cards that have the given expiration month.
in: query
name: exp_month
required: false
schema:
type: integer
style: form
- description: Only return cards that have the given expiration year.
in: query
name: exp_year
required: false
schema:
type: integer
style: form
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
- description: Only return cards that have the given last four digits.
in: query
name: last4
required: false
schema:
maxLength: 5000
type: string
style: form
- description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
in: query
name: starting_after
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Only return cards that have the given status. One of `active`, `inactive`, or `canceled`.
in: query
name: status
required: false
schema:
enum:
- active
- canceled
- inactive
type: string
x-stripeBypassValidation: true
style: form
- description: Only return cards that have the given type. One of `virtual` or `physical`.
in: query
name: type
required: false
schema:
enum:
- physical
- virtual
type: string
style: form
requestBody:
content:
application/x-www-form-urlencoded:
encoding: {}
schema:
additionalProperties: false
$ref: '#/components/schemas/GetIssuingCardsRequest'
required: false
responses:
'200':
content:
application/json:
schema:
description: ''
x-expandableFields:
- data
$ref: '#/components/schemas/IssuingCardList'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
post:
description: <p>Creates an Issuing <code>Card</code> object.</p>
operationId: PostIssuingCards
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
shipping:
explode: true
style: deepObject
spending_controls:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingCardsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.card'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/cards/{card}:
get:
description: <p>Retrieves an Issuing <code>Card</code> object.</p>
operationId: GetIssuingCardsCard
parameters:
- in: path
name: card
required: true
schema:
maxLength: 5000
type: string
style: simple
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
requestBody:
content:
application/x-www-form-urlencoded:
encoding: {}
schema:
additionalProperties: false
$ref: '#/components/schemas/GetIssuingCardsCardRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.card'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
post:
description: <p>Updates the specified Issuing <code>Card</code> object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.</p>
operationId: PostIssuingCardsCard
parameters:
- in: path
name: card
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
pin:
explode: true
style: deepObject
spending_controls:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingCardsCardRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.card'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/disputes:
get:
description: <p>Returns a list of Issuing <code>Dispute</code> objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.</p>
operationId: GetIssuingDisputes
parameters:
- description: Select Issuing disputes that were created during the given date interval.
explode: true
in: query
name: created
required: false
schema:
anyOf:
- properties:
gt:
type: integer
gte:
type: integer
lt:
type: integer
lte:
type: integer
title: range_query_specs
type: object
- type: integer
style: deepObject
- description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
in: query
name: ending_before
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
- description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
in: query
name: starting_after
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Select Issuing disputes with the given status.
in: query
name: status
required: false
schema:
enum:
- expired
- lost
- submitted
- unsubmitted
- won
type: string
style: form
- description: Select the Issuing dispute for the given transaction.
in: query
name: transaction
required: false
schema:
maxLength: 5000
type: string
style: form
requestBody:
content:
application/x-www-form-urlencoded:
encoding: {}
schema:
additionalProperties: false
$ref: '#/components/schemas/GetIssuingDisputesRequest'
required: false
responses:
'200':
content:
application/json:
schema:
description: ''
x-expandableFields:
- data
$ref: '#/components/schemas/IssuingDisputeList'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
post:
description: <p>Creates an Issuing <code>Dispute</code> object. Individual pieces of evidence within the <code>evidence</code> object are optional at this point. Stripe only validates that required evidence is present during submission. Refer to <a href="/docs/issuing/purchases/disputes#dispute-reasons-and-evidence">Dispute reasons and evidence</a> for more details about evidence requirements.</p>
operationId: PostIssuingDisputes
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
evidence:
explode: true
style: deepObject
expand:
explode: true
style: deepObject
metadata:
explode: true
style: deepObject
treasury:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIssuingDisputesRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/issuing.dispute'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
tags:
- Issuing
/v1/issuing/disputes/{dispute}:
get:
description: <p>Retrieves an Issuing <code>Dis
# --- truncated at 32 KB (301 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/stripe/refs/heads/main/openapi/stripe-issuing-api-openapi.yml