Stripe Method API

The Method API from Stripe — 6 operation(s) for method.

OpenAPI Specification

stripe-method-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Stripe Accounts Account Method 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: Method
paths:
  /v1/customers/{customer}/payment_methods/{payment_method}:
    get:
      description: <p>Retrieves a PaymentMethod object for a given Customer.</p>
      operationId: getCustomersCustomerPaymentMethodsPaymentMethod
      parameters:
      - in: path
        name: customer
        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
      - in: path
        name: payment_method
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding: {}
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/GetCustomersCustomerPaymentMethodsPaymentMethodRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Get   Customers Customer Payment Methods Payment Method
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
  /v1/payment_method_configurations:
    get:
      description: <p>List payment method configurations</p>
      operationId: getPaymentMethodConfigurations
      parameters:
      - description: The Connect application to filter by.
        explode: true
        in: query
        name: application
        required: false
        schema:
          anyOf:
          - maxLength: 100
            type: string
          - enum:
            - ''
            type: string
        style: deepObject
      - 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/GetPaymentMethodConfigurationsRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                description: ''
                x-expandableFields:
                - data
                $ref: '#/components/schemas/PaymentMethodConfigResourcePaymentMethodConfigurationsList'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Get   Payment Method Configurations
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
    post:
      description: <p>Creates a payment method configuration</p>
      operationId: postPaymentMethodConfigurations
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding:
              acss_debit:
                explode: true
                style: deepObject
              affirm:
                explode: true
                style: deepObject
              afterpay_clearpay:
                explode: true
                style: deepObject
              alipay:
                explode: true
                style: deepObject
              apple_pay:
                explode: true
                style: deepObject
              apple_pay_later:
                explode: true
                style: deepObject
              au_becs_debit:
                explode: true
                style: deepObject
              bacs_debit:
                explode: true
                style: deepObject
              bancontact:
                explode: true
                style: deepObject
              blik:
                explode: true
                style: deepObject
              boleto:
                explode: true
                style: deepObject
              card:
                explode: true
                style: deepObject
              cartes_bancaires:
                explode: true
                style: deepObject
              cashapp:
                explode: true
                style: deepObject
              eps:
                explode: true
                style: deepObject
              expand:
                explode: true
                style: deepObject
              fpx:
                explode: true
                style: deepObject
              giropay:
                explode: true
                style: deepObject
              google_pay:
                explode: true
                style: deepObject
              grabpay:
                explode: true
                style: deepObject
              ideal:
                explode: true
                style: deepObject
              jcb:
                explode: true
                style: deepObject
              klarna:
                explode: true
                style: deepObject
              konbini:
                explode: true
                style: deepObject
              link:
                explode: true
                style: deepObject
              oxxo:
                explode: true
                style: deepObject
              p24:
                explode: true
                style: deepObject
              paynow:
                explode: true
                style: deepObject
              paypal:
                explode: true
                style: deepObject
              promptpay:
                explode: true
                style: deepObject
              revolut_pay:
                explode: true
                style: deepObject
              sepa_debit:
                explode: true
                style: deepObject
              sofort:
                explode: true
                style: deepObject
              us_bank_account:
                explode: true
                style: deepObject
              wechat_pay:
                explode: true
                style: deepObject
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/PostPaymentMethodConfigurationsRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method_configuration'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Post   Payment Method Configurations
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
  /v1/payment_method_configurations/{configuration}:
    get:
      description: <p>Retrieve payment method configuration</p>
      operationId: getPaymentMethodConfigurationsConfiguration
      parameters:
      - in: path
        name: configuration
        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/GetPaymentMethodConfigurationsConfigurationRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method_configuration'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Get   Payment Method Configurations
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
    post:
      description: <p>Update payment method configuration</p>
      operationId: postPaymentMethodConfigurationsConfiguration
      parameters:
      - in: path
        name: configuration
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding:
              acss_debit:
                explode: true
                style: deepObject
              affirm:
                explode: true
                style: deepObject
              afterpay_clearpay:
                explode: true
                style: deepObject
              alipay:
                explode: true
                style: deepObject
              apple_pay:
                explode: true
                style: deepObject
              apple_pay_later:
                explode: true
                style: deepObject
              au_becs_debit:
                explode: true
                style: deepObject
              bacs_debit:
                explode: true
                style: deepObject
              bancontact:
                explode: true
                style: deepObject
              blik:
                explode: true
                style: deepObject
              boleto:
                explode: true
                style: deepObject
              card:
                explode: true
                style: deepObject
              cartes_bancaires:
                explode: true
                style: deepObject
              cashapp:
                explode: true
                style: deepObject
              eps:
                explode: true
                style: deepObject
              expand:
                explode: true
                style: deepObject
              fpx:
                explode: true
                style: deepObject
              giropay:
                explode: true
                style: deepObject
              google_pay:
                explode: true
                style: deepObject
              grabpay:
                explode: true
                style: deepObject
              ideal:
                explode: true
                style: deepObject
              jcb:
                explode: true
                style: deepObject
              klarna:
                explode: true
                style: deepObject
              konbini:
                explode: true
                style: deepObject
              link:
                explode: true
                style: deepObject
              oxxo:
                explode: true
                style: deepObject
              p24:
                explode: true
                style: deepObject
              paynow:
                explode: true
                style: deepObject
              paypal:
                explode: true
                style: deepObject
              promptpay:
                explode: true
                style: deepObject
              revolut_pay:
                explode: true
                style: deepObject
              sepa_debit:
                explode: true
                style: deepObject
              sofort:
                explode: true
                style: deepObject
              us_bank_account:
                explode: true
                style: deepObject
              wechat_pay:
                explode: true
                style: deepObject
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/PostPaymentMethodConfigurationsConfigurationRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method_configuration'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Post   Payment Method Configurations
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
  /v1/payment_method_domains:
    get:
      description: <p>Lists the details of existing payment method domains.</p>
      operationId: getPaymentMethodDomains
      parameters:
      - description: The domain name that this payment method domain object represents.
        in: query
        name: domain_name
        required: false
        schema:
          maxLength: 5000
          type: string
        style: form
      - description: Whether this payment method domain is enabled. If the domain is not enabled, payment methods will not appear in Elements
        in: query
        name: enabled
        required: false
        schema:
          type: boolean
        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: 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
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding: {}
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/GetPaymentMethodDomainsRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                description: ''
                x-expandableFields:
                - data
                $ref: '#/components/schemas/PaymentMethodDomainResourcePaymentMethodDomainList'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Get   Payment Method Domains
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
    post:
      description: <p>Creates a payment method domain.</p>
      operationId: postPaymentMethodDomains
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding:
              expand:
                explode: true
                style: deepObject
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/PostPaymentMethodDomainsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method_domain'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Post   Payment Method Domains
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
  /v1/payment_method_domains/{payment_method_domain}:
    get:
      description: <p>Retrieves the details of an existing payment method domain.</p>
      operationId: getPaymentMethodDomainsPaymentMethodDomain
      parameters:
      - 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
      - in: path
        name: payment_method_domain
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding: {}
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/GetPaymentMethodDomainsPaymentMethodDomainRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method_domain'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Get   Payment Method Domains
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
    post:
      description: <p>Updates an existing payment method domain.</p>
      operationId: postPaymentMethodDomainsPaymentMethodDomain
      parameters:
      - in: path
        name: payment_method_domain
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding:
              expand:
                explode: true
                style: deepObject
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/PostPaymentMethodDomainsPaymentMethodDomainRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method_domain'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Post   Payment Method Domains
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
  /v1/payment_method_domains/{payment_method_domain}/validate:
    post:
      description: '<p>Some payment methods such as Apple Pay require additional steps to verify a domain. If the requirements weren’t satisfied when the domain was created, the payment method will be inactive on the domain.

        The payment method doesn’t appear in Elements for this domain until it is active.</p>


        <p>To activate a payment method on an existing payment method domain, complete the required validation steps specific to the payment method, and then validate the payment method domain with this endpoint.</p>


        <p>Related guides: <a href="/docs/payments/payment-methods/pmd-registration">Payment method domains</a>.</p>'
      operationId: postPaymentMethodDomainsPaymentMethodDomainValidate
      parameters:
      - in: path
        name: payment_method_domain
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding:
              expand:
                explode: true
                style: deepObject
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/PostPaymentMethodDomainsPaymentMethodDomainValidateRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/payment_method_domain'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Post   Payment Method Domains Validate
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      tags:
      - Method
components:
  schemas:
    PostPaymentMethodDomainsPaymentMethodDomainValidateRequest:
      type: object
      properties:
        expand:
          description: Specifies which fields in the response should be expanded.
          items:
            maxLength: 5000
            type: string
          type: array
    payment_method_configuration:
      description: 'PaymentMethodConfigurations control which payment methods are displayed to your customers when you don''t explicitly specify payment method types. You can have multiple configurations with different sets of payment methods for different scenarios.


        There are two types of PaymentMethodConfigurations. Which is used depends on the [charge type](https://stripe.com/docs/connect/charges):


        **Direct** configurations apply to payments created on your account, including Connect destination charges, Connect separate charges and transfers, and payments not involving Connect.


        **Child** configurations apply to payments created on your connected accounts using direct charges, and charges with the on_behalf_of parameter.


        Child configurations have a `parent` that sets default values and controls which settings connected accounts may override. You can specify a parent ID at payment time, and Stripe will automatically resolve the connected account’s associated child configuration. Parent configurations are [managed in the dashboard](https://dashboard.stripe.com/settings/payment_methods/connected_accounts) and are not available in this API.


        Related guides:

        - [Payment Method Configurations API](https://stripe.com/docs/connect/payment-method-configurations)

        - [Multiple configurations on dynamic payment methods](https://stripe.com/docs/payments/multiple-payment-method-configs)

        - [Multiple configurations for your Connect accounts](https://stripe.com/docs/connect/multiple-payment-method-configurations)'
      properties:
        acss_debit:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        active:
          description: Whether the configuration can be used for new payments.
          type: boolean
        affirm:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        afterpay_clearpay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        alipay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        apple_pay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        application:
          description: For child configs, the Connect application associated with the configuration.
          maxLength: 5000
          nullable: true
          type: string
        au_becs_debit:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        bacs_debit:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        bancontact:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        blik:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        boleto:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        card:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        cartes_bancaires:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        cashapp:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        eps:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        fpx:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        giropay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        google_pay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        grabpay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        id:
          description: Unique identifier for the object.
          maxLength: 5000
          type: string
        ideal:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        is_default:
          description: The default configuration is used whenever a payment method configuration is not specified.
          type: boolean
        jcb:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        klarna:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        konbini:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        link:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        livemode:
          description: Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
          type: boolean
        name:
          description: The configuration's name.
          maxLength: 5000
          type: string
        object:
          description: String representing the object's type. Objects of the same type share the same value.
          enum:
          - payment_method_configuration
          type: string
        oxxo:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        p24:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        parent:
          description: For child configs, the configuration's parent configuration.
          maxLength: 5000
          nullable: true
          type: string
        paynow:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        paypal:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        promptpay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        revolut_pay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        sepa_debit:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        sofort:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        us_bank_account:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
        wechat_pay:
          $ref: '#/components/schemas/payment_method_config_resource_payment_method_properties'
      required:
      - active
      - id
      - is_default
      - livemode
      - name
      - object
      title: PaymentMethodConfigResourcePaymentMethodConfiguration
      type: object
      x-expandableFields:
      - acss_debit
      - affirm
      - afterpay_clearpay
      - alipay
      - apple_pay
      - au_becs_debit
      - bacs_debit
      - bancontact
      - blik
      - boleto
      - card
      - cartes_bancaires
      - cashapp
      - eps
      - fpx
      - giropay
      - google_pay
      - grabpay
      - ideal
      - jcb
      - klarna
      - konbini
      - link
      - oxxo
      - p24
      - paynow
      - paypal
      - promptpay
      - revolut_pay
      - sepa_debit
      - sofort
      - us_bank_account
      - wechat_pay
      x-resourceId: payment_method_configuration
    GetCustomersCustomerPaymentMethodsPaymentMethodRequest:
      type: object
      properties: {}
    PostPaymentMethodConfigurationsRequest:
      type: object
      properties:
        acss_debit:
          description: Canadian pre-authorized debit payments, check this [page](https://stripe.com/docs/payments/acss-debit) for more details like country availability.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        affirm:
          description: '[Affirm](https://www.affirm.com/) gives your customers a way to split purchases over a series of payments. Depending on the purchase, they can pay with four interest-free payments (Split Pay) or pay over a longer term (Installments), which might include interest. Check this [page](https://stripe.com/docs/payments/affirm) for more details like country availability.'
          properties:
            display_preference:
              properties:
  

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