Stripe Payment Method Configurations API

Payment method configurations allow you to configure which payment methods are available to your customers during checkout. Manage payment method availability across multiple Connect accounts.

OpenAPI Specification

stripe-payment-method-configurations-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Stripe Accounts Account Payment Method Configurations 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: Payment Method Configurations
paths:
  /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.
      tags:
      - Payment Method Configurations
    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.
      tags:
      - Payment Method Configurations
  /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.
      tags:
      - Payment Method Configurations
    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.
      tags:
      - Payment Method Configurations
components:
  schemas:
    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
    error:
      description: An error response from the Stripe API
      properties:
        error:
          $ref: '#/components/schemas/api_errors'
      required:
      - error
      type: object
    GetPaymentMethodConfigurationsConfigurationRequest:
      type: object
      properties: {}
    PaymentMethodConfigResourcePaymentMethodConfigurationsList:
      type: object
      required:
      - data
      - has_more
      - object
      - url
      properties:
        data:
          items:
            $ref: '#/components/schemas/payment_method_configuration'
          type: array
        has_more:
          description: True if this list has another page of items after this one that can be fetched.
          type: boolean
        object:
          description: String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
          enum:
          - list
          type: string
        url:
          description: The URL where this list can be accessed.
          maxLength: 5000
          type: string
    GetPaymentMethodConfigurationsRequest:
      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:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        afterpay_clearpay:
          description: Afterpay gives your customers a way to pay for purchases in installments, check this [page](https://stripe.com/docs/payments/afterpay-clearpay) for more details like country availability. Afterpay is particularly popular among businesses selling fashion, beauty, and sports products.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        alipay:
          description: Alipay is a digital wallet in China that has more than a billion active users worldwide. Alipay users can pay on the web or on a mobile device using login credentials or their Alipay app. Alipay has a low dispute rate and reduces fraud by authenticating payments using the customer's login credentials. Check this [page](https://stripe.com/docs/payments/alipay) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        apple_pay:
          description: Stripe users can accept [Apple Pay](/payments/apple-pay) in iOS applications in iOS 9 and later, and on the web in Safari starting with iOS 10 or macOS Sierra. There are no additional fees to process Apple Pay payments, and the [pricing](/pricing) is the same as other card transactions. Check this [page](https://stripe.com/docs/apple-pay) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        apple_pay_later:
          description: Apple Pay Later, a payment method for customers to buy now and pay later, gives your customers a way to split purchases into four installments across six weeks.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        au_becs_debit:
          description: Stripe users in Australia can accept Bulk Electronic Clearing System (BECS) direct debit payments from customers with an Australian bank account. Check this [page](https://stripe.com/docs/payments/au-becs-debit) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        bacs_debit:
          description: Stripe users in the UK can accept Bacs Direct Debit payments from customers with a UK bank account, check this [page](https://stripe.com/docs/payments/payment-methods/bacs-debit) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        bancontact:
          description: Bancontact is the most popular online payment method in Belgium, with over 15 million cards in circulation. [Customers](https://stripe.com/docs/api/customers) use a Bancontact card or mobile app linked to a Belgian bank account to make online payments that are secure, guaranteed, and confirmed immediately. Check this [page](https://stripe.com/docs/payments/bancontact) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        blik:
          description: BLIK is a [single use](https://stripe.com/docs/payments/payment-methods#usage) payment method that requires customers to authenticate their payments. When customers want to pay online using BLIK, they request a six-digit code from their banking application and enter it into the payment collection form. Check this [page](https://stripe.com/docs/payments/blik) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        boleto:
          description: Boleto is an official (regulated by the Central Bank of Brazil) payment method in Brazil. Check this [page](https://stripe.com/docs/payments/boleto) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        card:
          description: Cards are a popular way for consumers and businesses to pay online or in person. Stripe supports global and local card networks.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        cartes_bancaires:
          description: Cartes Bancaires is France's local card network. More than 95% of these cards are co-branded with either Visa or Mastercard, meaning you can process these cards over either Cartes Bancaires or the Visa or Mastercard networks. Check this [page](https://stripe.com/docs/payments/cartes-bancaires) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        cashapp:
          description: Cash App is a popular consumer app in the US that allows customers to bank, invest, send, and receive money using their digital wallet. Check this [page](https://stripe.com/docs/payments/cash-app-pay) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        eps:
          description: EPS is an Austria-based payment method that allows customers to complete transactions online using their bank credentials. EPS is supported by all Austrian banks and is accepted by over 80% of Austrian online retailers. Check this [page](https://stripe.com/docs/payments/eps) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        expand:
          description: Specifies which fields in the response should be expanded.
          items:
            maxLength: 5000
            type: string
          type: array
        fpx:
          description: Financial Process Exchange (FPX) is a Malaysia-based payment method that allows customers to complete transactions online using their bank credentials. Bank Negara Malaysia (BNM), the Central Bank of Malaysia, and eleven other major Malaysian financial institutions are members of the PayNet Group, which owns and operates FPX. It is one of the most popular online payment methods in Malaysia, with nearly 90 million transactions in 2018 according to BNM. Check this [page](https://stripe.com/docs/payments/fpx) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        giropay:
          description: giropay is a German payment method based on online banking, introduced in 2006. It allows customers to complete transactions online using their online banking environment, with funds debited from their bank account. Depending on their bank, customers confirm payments on giropay using a second factor of authentication or a PIN. giropay accounts for 10% of online checkouts in Germany. Check this [page](https://stripe.com/docs/payments/giropay) for more details.
          properties:
            display_preference:
              properties:
                preference:
                  enum:
                  - none
                  - 'off'
                  - 'on'
                  type: string
              title: display_preference_param
              type: object
          title: payment_method_param
          type: object
        google_pay:
          description: Google Pay allow

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