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.
openapi: 3.0.0
info:
title: Stripe Issuing API
description: >-
An API for businesses to instantly create, manage, and distribute payment
cards.
contact:
email: [email protected]
name: Stripe Dev Platform Team
url: https://stripe.com
termsOfService: https://stripe.com/us/terms/
version: '2023-10-16'
x-stripeSpecFilename: spec3
security:
- basicAuth: []
- bearerAuth: []
servers:
- url: https://api.stripe.com/
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.
summary: Stripe Get Issuing Authorizations
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Authorization
- Get
- 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.
summary: Stripe Get Issuing Authorizations
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Authorization
- Get
- 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.
summary: Stripe Post Issuing Authorizations
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Authorization
- Issuing
- Post
/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.
This 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.
summary: Stripe Post Issuing Authorizations Approve
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Approve
- Authorization
- Issuing
- Post
/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.
summary: Stripe Post Issuing Authorizations Decline
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Authorization
- Decline
- Issuing
- Post
/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.
summary: Stripe Get Issuing Cardholders
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Get
- 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.
summary: Stripe Post Issuing Cardholders
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Issuing
- Post
/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.
summary: Stripe Get Issuing Cardholders
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Get
- 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.
summary: Stripe Post Issuing Cardholders
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Issuing
- Post
/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.
summary: Stripe Get Issuing Cards
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Cards
- Get
- 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.
summary: Stripe Post Issuing Cards
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Cards
- Issuing
- Post
/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.
summary: Stripe Get Issuing Cards Card
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Card
- Cards
- Get
- 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.
summary: Stripe Post Issuing Cards Card
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Card
# --- truncated at 32 KB (329 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/stripe/refs/heads/main/openapi/stripe-issuing-api-openapi.yml