Stripe Issuing API

An API for businesses to instantly create, manage, and distribute payment cards.

OpenAPI Specification

stripe-issuing-api-openapi.yml Raw ↑
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