openapi: 3.0.3
info:
  title: Payments API
  description: >
    Welcome to the Payments API documentation!


    # Introduction


    This is the reference documentation and schemas for the Payments API.


    ## Authentication


    The platform uses API Keys to manage access to the API. You can pass the API
    key in the `x-api-key` header to the request.

    Talk you your sales rep about acquiring these API keys.

    Authorization is done via headers. You should pass the api key as the value
    to the `x-api-key` header. For example, `x-api-key: ${API_KEY}`.

    Please note that you will be given 2 API keys, one public key and one
    private key.  Use the private key for all server to server communication.

    The public key is used for interfacing wih the JS SDK.


    ## Idempotency


    The platform provides support for
    [idempotency](https://en.wikipedia.org/wiki/Idempotence), a feature that
    allows requests to be safely retried without the risk of duplicate
    operations. This becomes particularly useful when an API call is interrupted
    during transmission, resulting in the absence of a response.


    To execute an idempotent request, include the idempotency key in the
    x-idempotency-key header of the request. This key, which should be a unique
    value of at least 10 characters, is generated by the client. The method of
    creating this key is up to you, but we recommend using UUID v4 or any other
    string that has sufficient entropy to prevent overlaps.


    Idempotency works by saving the resulting status code and body of the first
    request made for any given idempotency key for any successful request. 

    Subsequent requests with the same key return the same result for a period of
    up to 1 hour.


    Idempotency is only supported for `POST` and `PUT` requests.
  version: v1.4.0
paths:
  /checkout_sessions:
    get:
      operationId: get_checkout_session_list
      summary: Fetch list of checkout sessions for a given account
      tags:
        - Checkout Sessions
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
          description: The id of the entity, use to sort in reverse order
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
          description: The id of the entity
        - schema:
            default: 10
            type: number
          in: query
          name: limit
          required: false
          description: Max value is 50
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-18'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
      description: >-
        Use this endpoint to retrieve a paginated list of checkout sessions for
        a specific account. Checkout sessions are hosted payment forms that
        allow customers to complete payments. This endpoint is useful for
        monitoring session statuses, tracking conversion rates, and managing
        customer checkout experiences.
    post:
      operationId: create_checkout_session
      summary: Create a new checkout session
      tags:
        - Checkout Sessions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-10'
      parameters:
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-17'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
      description: >-
        Use this endpoint to create a new hosted checkout session for customers.
        Checkout sessions provide a secure, branded payment experience where
        customers can enter payment information. You'll receive a URL that you
        can redirect customers to, and they'll be able to complete their payment
        securely.
  /checkout_sessions/{id}:
    get:
      operationId: get_checkout_session
      summary: 'Fetch a specific checkout session '
      tags:
        - Checkout Sessions
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-17'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    patch:
      operationId: update_checkout_session
      summary: Update a checkout session
      tags:
        - Checkout Sessions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-15'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-17'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /checkout_sessions/{id}/expire:
    post:
      operationId: expire_checkout_session
      summary: Expire a check session
      tags:
        - Checkout Sessions
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-17'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /checkout_sessions/{id}/send/sms:
    post:
      operationId: send_checkout_session_sms
      summary: Send checkout session link via SMS
      tags:
        - Checkout Sessions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-19'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-21'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /checkout_sessions/{id}/send/email:
    post:
      operationId: send_checkout_session_email
      summary: Send checkout session link via email
      tags:
        - Checkout Sessions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-20'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-21'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /checkout_sessions/{id}/receipt/email:
    post:
      operationId: send_checkout_session_receipt_email
      summary: Send checkout session receipt via email
      tags:
        - Checkout Sessions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-138'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-21'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents:
    post:
      operationId: create_payment_intent
      summary: Create a payment intent
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-11'
      parameters:
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    get:
      operationId: get_payment_intents
      summary: Fetch a list of payment intents for an account
      tags:
        - Payment Intents
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
          description: The id of the entity, use to sort in reverse order
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
          description: The id of the entity
        - schema:
            default: 10
            type: number
          in: query
          name: limit
          required: false
          description: Max value is 50
        - schema:
            type: string
          in: header
          name: x-account-id
          required: false
        - schema:
            type: string
          in: header
          name: x-business-id
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-78'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents/search:
    post:
      operationId: search_payment_intent
      summary: Search for payment intents
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-84'
      parameters:
        - schema:
            type: string
          in: header
          name: x-account-id
          required: false
        - schema:
            type: string
          in: header
          name: x-business-id
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-80'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents/{id}:
    get:
      operationId: get_payment_intent
      summary: Fetch a payment intent for an account
      tags:
        - Payment Intents
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    patch:
      operationId: update_payment_intent
      summary: Patch a payment intent
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-72'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents/{id}/cancel:
    post:
      operationId: cancel_payment_intent
      summary: Cancel a payment intent
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-70'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents/{id}/capture:
    post:
      operationId: capture_payment_intent
      summary: Capture a payment intent
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-71'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents/{id}/payments:
    get:
      operationId: list_payments
      summary: Fetch list of payments for a payment intent
      tags:
        - Payment Intents
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
          description: The id of the entity, use to sort in reverse order
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
          description: The id of the entity
        - schema:
            default: 10
            type: number
          in: query
          name: limit
          required: false
          description: Max value is 50
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-86'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    post:
      operationId: create_payment
      summary: Create a payment
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-68'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-74'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents/{id}/refunds:
    post:
      operationId: create_refund
      summary: Create a refund
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-34'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-103'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_intents/{id}/receipt/email:
    post:
      operationId: send_payment_intent_receipt_email
      summary: Send payment intent receipt via email
      tags:
        - Payment Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-139'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-21'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /refunds/{id}:
    get:
      operationId: get_refund
      summary: Fetch a refund by id
      tags:
        - Refunds
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-103'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_methods/{id}:
    get:
      operationId: get_payment_method
      summary: Fetch payment method
      tags:
        - Payment Methods
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-89'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    patch:
      operationId: update_payment_method
      summary: Update payment method
      tags:
        - Payment Methods
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-88'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-89'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_methods/{id}/attach:
    post:
      operationId: attach_payment_method
      summary: Attach payment method to customer
      tags:
        - Payment Methods
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                customer_id:
                  type: string
              required:
                - customer_id
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-89'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_methods/{id}/detach:
    post:
      operationId: detach_payment_method
      summary: Detach payment method from customer
      tags:
        - Payment Methods
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-89'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_methods/{id}/disable_account_updater:
    post:
      operationId: disable_account_updater
      summary: Disable Card Account Updater for a payment method
      tags:
        - Payment Methods
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-89'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /external_payments:
    post:
      operationId: create_payment_intent_external
      summary: Create External Payment Intent
      tags:
        - External Payments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-32'
      parameters:
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /external_payments/{payment_intent_id}:
    patch:
      operationId: update_payment_intent_external
      summary: Update External Payment Intent
      tags:
        - External Payments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-29'
      parameters:
        - schema:
            type: string
          in: path
          name: payment_intent_id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /external_payments/{payment_intent_id}/cancel:
    post:
      operationId: cancel_payment_intent_external
      summary: Cancel Payment Intent
      tags:
        - External Payments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-28'
      parameters:
        - schema:
            type: string
          in: path
          name: payment_intent_id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /external_payments/{payment_intent_id}/capture:
    post:
      operationId: capture_external_payment
      summary: Capture External Payment
      tags:
        - External Payments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-31'
      parameters:
        - schema:
            type: string
          in: path
          name: payment_intent_id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-79'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /external_refunds:
    post:
      operationId: create_refund_external
      summary: Create External Refund
      tags:
        - External Refunds
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-33'
      parameters:
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-103'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /external_refunds/{refund_id}:
    patch:
      operationId: update_refund_external
      summary: Update External Refund
      tags:
        - External Refunds
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-33'
      parameters:
        - schema:
            type: string
          in: path
          name: refund_id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-103'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /external_refunds/{refund_id}/cancel:
    post:
      operationId: cancel_refund_external
      summary: Cancel External Refund
      tags:
        - External Refunds
      parameters:
        - schema:
            type: string
          in: path
          name: refund_id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-103'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /disputes:
    get:
      operationId: get_disputes
      summary: Fetch list of disputes matching query
      tags:
        - Disputes
      parameters:
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
        - schema:
            anyOf:
              - type: string
                enum:
                  - new
              - type: string
                enum:
                  - accepted
              - type: string
                enum:
                  - contested
              - type: string
                enum:
                  - in_review
              - type: string
                enum:
                  - in_pre_arbitration
              - type: string
                enum:
                  - lost
              - type: string
                enum:
                  - won
          in: query
          name: status
          required: false
        - schema:
            default: 10
            maximum: 50
            type: number
          in: query
          name: limit
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-25'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /disputes/{id}:
    get:
      operationId: get_dispute
      summary: Fetch dispute by id
      tags:
        - Disputes
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-24'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /balances:
    get:
      operationId: get_ledger_account_balances
      summary: Fetch ledger account balances
      tags:
        - Balances
      parameters:
        - schema:
            type: string
            enum:
              - operating
              - funding
          in: query
          name: ledger_type
          required: false
        - schema:
            type: string
            enum:
              - USD
              - CAD
          in: query
          name: currency
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-7'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /transactions:
    get:
      operationId: get_transactions
      summary: Fetch a list of transactions
      tags:
        - Transactions
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
        - schema:
            type: number
          in: query
          name: limit
          required: false
        - schema:
            type: string
          in: query
          name: payout_id
          required: false
        - schema:
            type: string
            enum:
              - USD
              - CAD
          in: query
          name: currency
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-115'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /transactions/{id}:
    get:
      operationId: get_transaction
      summary: Fetch a transaction
      tags:
        - Transactions
      parameters:
        - schema:
            type: string
            enum:
              - USD
              - CAD
          in: query
          name: currency
          required: false
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-116'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /transactions/search:
    post:
      operationId: search_transactions
      summary: Search a list of transactions
      tags:
        - Transactions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-121'
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-118'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /transactions/download:
    post:
      operationId: download_transactions
      summary: Download list of transactions
      tags:
        - Transactions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-120'
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema: {}
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payouts:
    get:
      operationId: get_payouts
      summary: Fetch a list of payouts
      tags:
        - Payouts
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
        - schema:
            type: number
          in: query
          name: limit
          required: false
        - schema:
            anyOf:
              - type: string
                enum:
                  - created
              - type: string
                enum:
                  - held
              - type: string
                enum:
                  - staged
              - type: string
                enum:
                  - pending
              - type: string
                enum:
                  - completed
              - type: string
                enum:
                  - returned
              - type: string
                enum:
                  - cancelled
              - type: string
                enum:
                  - failed
          in: query
          name: status
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-100'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payouts/{id}:
    get:
      operationId: get_payout
      summary: Fetch a payout by id
      tags:
        - Payouts
      parameters:
        - schema:
            type: string
            enum:
              - operating
              - funding
          in: query
          name: ledger_type
          required: false
        - schema:
            type: string
            enum:
              - USD
              - CAD
          in: query
          name: currency
          required: false
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: false
          description: >-
            Required when fetching a payout associated with an account, exclude
            if fetching your own payout
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-98'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /businesses/payouts:
    get:
      operationId: get_payouts_by_business
      summary: Fetch a list of payouts for a business
      tags:
        - Payouts
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
          description: The id of the entity, use to sort in reverse order
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
          description: The id of the entity
        - schema:
            default: 10
            type: number
          in: query
          name: limit
          required: false
          description: Max value is 50
        - schema:
            type: string
          in: header
          name: x-business-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-100'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers:
    post:
      operationId: create_customer
      summary: Create Customer
      tags:
        - Customers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-43'
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-44'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    get:
      operationId: list_customers
      summary: List Customers
      tags:
        - Customers
      parameters:
        - schema:
            maxLength: 50
            type: string
          in: query
          name: starting_after
          required: false
        - schema:
            minimum: 1
            default: 10
            maximum: 50
            type: integer
          in: query
          name: limit
          required: false
        - schema:
            type: string
          in: header
          name: x-account-id
          required: false
        - schema:
            type: string
          in: header
          name: x-business-id
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-46'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers/{id}:
    get:
      operationId: get_customer
      summary: Get Customer
      tags:
        - Customers
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-44'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    patch:
      operationId: update_customer
      summary: Update Customer
      tags:
        - Customers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-52'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-44'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    delete:
      operationId: delete_customer
      summary: Delete Customer
      tags:
        - Customers
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-44'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers/{id}/accounts:
    get:
      operationId: list_customer_accounts
      summary: List accounts attached to a customer
      tags:
        - Customers
      parameters:
        - schema:
            maxLength: 50
            type: string
          in: query
          name: starting_after
          required: false
        - schema:
            minimum: 1
            default: 10
            maximum: 50
            type: integer
          in: query
          name: limit
          required: false
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-54'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
    post:
      operationId: attach_account_to_customer
      summary: Attach an account to a customer
      tags:
        - Customers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-56'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-53'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers/{id}/accounts/{accountId}:
    delete:
      operationId: detach_account_from_customer
      summary: Detach an account from a customer
      tags:
        - Customers
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: path
          name: accountId
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-53'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers/{id}/primary-account:
    put:
      operationId: change_customer_primary_account
      summary: Change a customer's primary (billing) account
      tags:
        - Customers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-57'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-44'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers/{id}/payments:
    get:
      operationId: list_customer_payments
      summary: List payments for a customer
      tags:
        - Customers
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
          description: The id of the entity, use to sort in reverse order
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
          description: The id of the entity
        - schema:
            minimum: 1
            default: 10
            maximum: 50
            type: integer
          in: query
          name: limit
          required: false
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-50'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers/{id}/payment_intents:
    get:
      operationId: list_customer_payment_intents
      summary: List payment intents completed by a customer
      tags:
        - Customers
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
          description: The id of the entity, use to sort in reverse order
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
          description: The id of the entity
        - schema:
            minimum: 1
            default: 10
            maximum: 50
            type: integer
          in: query
          name: limit
          required: false
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-48'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /customers/{id}/payment_methods:
    get:
      operationId: list_customer_payment_methods
      summary: List payment methods for a customer
      tags:
        - Customers
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-49'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_method_intents:
    post:
      operationId: create_payment_method_intent
      summary: Create a payment method intent
      tags:
        - Payment Method Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-126'
      parameters:
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
        - schema:
            type: string
          in: header
          name: x-idempotency-key
          required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-127'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '409':
          description: >-
            Conflict — the request conflicts with the current state of the
            resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
      description: >-
        Use this endpoint to create a new payment method intent for securely
        collecting and validating payment method information. Payment method
        intents provide a secure way to collect card or bank account details
        from customers. You can create them with or without payment method data,
        and they support validation to ensure the payment method is valid before
        storing.
    get:
      operationId: get_payment_method_intents
      summary: Fetch a payment method intents
      tags:
        - Payment Method Intents
      parameters:
        - schema:
            type: string
          in: query
          name: ending_before
          required: false
          description: The id of the entity, use to sort in reverse order
        - schema:
            type: string
          in: query
          name: starting_after
          required: false
          description: The id of the entity
        - schema:
            default: 10
            type: number
          in: query
          name: limit
          required: false
          description: Max value is 50
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-128'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
      description: >-
        Use this endpoint to retrieve a paginated list of payment method intents
        for an account. This is useful for monitoring the status of payment
        method creation requests, tracking validation attempts, and managing the
        lifecycle of payment method setup processes.
  /payment_method_intents/{id}:
    get:
      operationId: get_payment_method_intent
      summary: Fetch a payment method intent
      tags:
        - Payment Method Intents
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-127'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
      description: >-
        Use this endpoint to retrieve details about a specific payment method
        intent by its ID. This returns information about the payment method
        creation process, validation status, and any associated payment method
        data. Useful for checking the status of a payment method setup request.
    patch:
      operationId: update_payment_method_intent
      summary: Update a payment method intent
      tags:
        - Payment Method Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-132'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-127'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /payment_method_intents/{id}/cancel:
    post:
      operationId: cancel_payment_method_intent
      summary: Cancel a payment method intent
      tags:
        - Payment Method Intents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-129'
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-127'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /fees:
    get:
      description: >-
        Use this endpoint to retrieve a paginated list of fees for a merchant
        account. Fees represent various charges including processing fees,
        interchange fees, monthly minimums, and adhoc fees. You can filter by
        fee type, source, and date ranges to understand your cost structure and
        track fee-related transactions.
      summary: Fetch a list of fees.
      tags:
        - Fees
      parameters:
        - name: x-account-id
          in: header
          required: true
          schema:
            type: string
            pattern: ^acct_[\s\S]{0,}$
        - name: ending_before
          in: query
          description: Returns items listed before this ID.
          schema:
            type: string
        - name: starting_after
          in: query
          description: Returns items listed after this ID.
          schema:
            type: string
        - name: limit
          in: query
          description: Maximum number of items to return (0 or more)
          schema:
            type: number
            minimum: 0
        - name: fee_type
          in: query
          description: Filter fees by fee type
          schema:
            type: string
            enum:
              - APPLICATION
              - BATCH
              - CHARGEBACK
              - INTERCHANGE
              - PLATFORM
              - TOKEN
              - PROCESSING
              - RETRIEVAL
              - DDA_REJECT
              - MONTHLY_MINIMUM
              - PCI_NON_COMPLIANCE
              - GATEWAY_FEE
              - EARLY_CANCELLATION
              - REGULATORY_PRODUCT
              - VALIDATION_FEE
              - LINKING_FEE
              - REJECT_FEE
              - REVERSAL_FEE
              - RETURN_FEE
              - UNKNOWN_BANK_ACTIVITY_ADJUSTMENT
              - UNMATCHED_SETTLEMENT
              - ACCOUNT_UPDATE
              - NETWORK_TOKEN_ISSUANCE
              - PARTNER_ADHOC
              - EQUIPMENT
              - PFAC_PROCESSING
        - name: source_id
          in: query
          description: >-
            Filter fees by source_id. Examples: A fee refund has a source_id of
            the original fee it is refunding. A processing fee has a source id
            of the payment.
          schema:
            type: string
      operationId: getManyFees
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          description: The fee identifier
                          type: string
                          pattern: ^fee_[\s\S]{0,}$
                        entity:
                          type: string
                          enum:
                            - fee
                        created_at:
                          description: When the fee was created
                          type: string
                          format: date-time
                          pattern: >-
                            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                        updated_at:
                          description: When the fee was last updated
                          type: string
                          format: date-time
                          pattern: >-
                            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                        currency:
                          type: string
                          enum:
                            - USD
                            - CAD
                        fee_type:
                          description: The type of fee
                          type: string
                          enum:
                            - APPLICATION
                            - BATCH
                            - CHARGEBACK
                            - INTERCHANGE
                            - PLATFORM
                            - TOKEN
                            - PROCESSING
                            - RETRIEVAL
                            - DDA_REJECT
                            - MONTHLY_MINIMUM
                            - PCI_NON_COMPLIANCE
                            - GATEWAY_FEE
                            - EARLY_CANCELLATION
                            - REGULATORY_PRODUCT
                            - VALIDATION_FEE
                            - LINKING_FEE
                            - REJECT_FEE
                            - REVERSAL_FEE
                            - RETURN_FEE
                            - UNKNOWN_BANK_ACTIVITY_ADJUSTMENT
                            - UNMATCHED_SETTLEMENT
                            - ACCOUNT_UPDATE
                            - NETWORK_TOKEN_ISSUANCE
                            - PARTNER_ADHOC
                            - EQUIPMENT
                            - PFAC_PROCESSING
                        fee_sub_type:
                          description: The sub-type of fee
                          type: string
                          enum:
                            - auth
                            - card
                            - bank_per_transaction
                            - bank_bps
                            - unmatched_settlement_reversal
                        description:
                          description: Human-readable description of the fee
                          type: string
                        from_owner_id:
                          description: The entity paying the fee
                          type: string
                        from_owner_type:
                          type: string
                          enum:
                            - account
                            - contractor
                            - tenant
                            - partner
                        to_owner_id:
                          description: The entity receiving the fee
                          type: string
                        to_owner_type:
                          type: string
                          enum:
                            - account
                            - contractor
                            - tenant
                            - partner
                        source_type:
                          description: >-
                            The type of the source entity that generated this
                            fee
                          type: string
                          enum:
                            - adjustment
                            - bank_transfer
                            - checkout_session
                            - dispute
                            - fee
                            - fee_refund
                            - funding
                            - payment
                            - payment_intent
                            - payment_method
                            - payment_refund
                            - payout
                            - refund
                            - reversal
                            - unmatched_settlement
                        source_id:
                          description: The ID of the source entity that generated this fee
                          type: string
                        source_account_id:
                          description: The account ID associated with the source entity
                          type: string
                        amount:
                          description: Fee amount in minor units (cents)
                          type: number
                        amount_refunded:
                          description: Amount of the fee that has been refunded
                          type: number
                        auth_fee:
                          type: number
                        card_fee_bps:
                          type: number
                        ach_per_transaction_fee:
                          type: number
                        ach_fee_bps:
                          type: number
                        ach_bps_fee_max:
                          type: number
                        ach_service_type:
                          type: string
                          enum:
                            - standard
                            - same_day
                        card_type:
                          type: string
                          enum:
                            - visa
                            - mastercard
                            - american_express
                            - discover
                        settlement_id:
                          type: string
                          pattern: ^se_[\s\S]{0,}$
                        settlement_status:
                          type: string
                          enum:
                            - settled
                            - unsettled
                        settled_at:
                          type: string
                          format: date-time
                          pattern: >-
                            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                        monthly_fee_date:
                          type: string
                          format: date
                          pattern: >-
                            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                        reference_id:
                          description: External reference identifier
                          type: string
                        user_fields:
                          description: Custom user-defined metadata
                          type: object
                          additionalProperties: {}
                          x-propertyNames:
                            type: string
                        is_refund:
                          description: Whether this fee is a refund of another fee
                          type: boolean
                      required:
                        - id
                        - entity
                        - created_at
                        - updated_at
                        - currency
                        - fee_type
                        - from_owner_id
                        - from_owner_type
                        - amount
                        - settlement_id
                        - settlement_status
                      additionalProperties: false
                  meta:
                    type: object
                    properties:
                      has_more:
                        type: boolean
                      limit:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                    required:
                      - has_more
                      - limit
                    additionalProperties: false
                required:
                  - data
                  - meta
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      code:
                        default: 400-01
                        type: string
                        enum:
                          - 400-01
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Bad Request
                        type: string
                      detail:
                        default: The request is invalid or malformed
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-02
                        type: string
                        enum:
                          - 400-02
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Body
                        type: string
                      detail:
                        default: The request contains an invalid body property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-03
                        type: string
                        enum:
                          - 400-03
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Query
                        type: string
                      detail:
                        default: The request contains an invalid query property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-04
                        type: string
                        enum:
                          - 400-04
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Header
                        type: string
                      detail:
                        default: The request contains an invalid header property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-05
                        type: string
                        enum:
                          - 400-05
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Parameter
                        type: string
                      detail:
                        default: >-
                          The request contains an invalid parameter property
                          value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 401-01
                    type: string
                    enum:
                      - 401-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Unauthorized
                    type: string
                  detail:
                    default: >-
                      Access token not set or invalid, and the requested
                      resource could not be returned
                    type: string
                  status:
                    default: 401
                    type: number
                    enum:
                      - 401
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 403-01
                    type: string
                    enum:
                      - 403-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Forbidden
                    type: string
                  detail:
                    default: >-
                      The resource could not be returned as the requestor is not
                      authorized
                    type: string
                  status:
                    default: 403
                    type: number
                    enum:
                      - 403
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 404-01
                    type: string
                    enum:
                      - 404-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Found
                    type: string
                  detail:
                    default: The requested resource could not be found
                    type: string
                  status:
                    default: 404
                    type: number
                    enum:
                      - 404
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '409':
          description: '409'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 409-01
                    type: string
                    enum:
                      - 409-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Conflict
                    type: string
                  detail:
                    default: The request resulted in a conflict.
                    type: string
                  status:
                    default: 409
                    type: number
                    enum:
                      - 409
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 500-01
                    type: string
                    enum:
                      - 500-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Server Error
                    type: string
                  detail:
                    default: The server encountered an unexpected error
                    type: string
                  status:
                    default: 500
                    type: number
                    enum:
                      - 500
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '501':
          description: '501'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 501-01
                    type: string
                    enum:
                      - 501-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Implemented
                    type: string
                  detail:
                    default: The requested resource is not implemented
                    type: string
                  status:
                    default: 501
                    type: number
                    enum:
                      - 501
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
    post:
      description: >-
        Create a fee for a merchant account. Requires tenant admin
        authorization.
      summary: Create a fee.
      tags:
        - Fees
      parameters:
        - name: x-account-id
          in: header
          required: true
          schema:
            type: string
            pattern: ^acct_[\s\S]{0,}$
      operationId: createFee
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              type: object
              properties:
                fee_type:
                  type: string
                  enum:
                    - APPLICATION
                    - BATCH
                    - CHARGEBACK
                    - INTERCHANGE
                    - PLATFORM
                    - TOKEN
                    - PROCESSING
                    - RETRIEVAL
                    - DDA_REJECT
                    - MONTHLY_MINIMUM
                    - PCI_NON_COMPLIANCE
                    - GATEWAY_FEE
                    - EARLY_CANCELLATION
                    - REGULATORY_PRODUCT
                    - VALIDATION_FEE
                    - LINKING_FEE
                    - REJECT_FEE
                    - REVERSAL_FEE
                    - RETURN_FEE
                    - UNKNOWN_BANK_ACTIVITY_ADJUSTMENT
                    - UNMATCHED_SETTLEMENT
                    - ACCOUNT_UPDATE
                    - NETWORK_TOKEN_ISSUANCE
                    - PARTNER_ADHOC
                    - EQUIPMENT
                    - PFAC_PROCESSING
                amount:
                  type: integer
                  minimum: 0
                  maximum: 9007199254740991
                currency:
                  type: string
                  enum:
                    - USD
                    - CAD
                description:
                  type: string
                  maxLength: 1000
                reference_id:
                  type: string
                  maxLength: 300
                user_fields:
                  type: object
                  additionalProperties: {}
                  x-propertyNames:
                    type: string
              required:
                - fee_type
                - amount
                - description
              additionalProperties: false
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: The fee identifier
                    type: string
                    pattern: ^fee_[\s\S]{0,}$
                  entity:
                    type: string
                    enum:
                      - fee
                  created_at:
                    description: When the fee was created
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  updated_at:
                    description: When the fee was last updated
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  currency:
                    type: string
                    enum:
                      - USD
                      - CAD
                  fee_type:
                    description: The type of fee
                    type: string
                    enum:
                      - APPLICATION
                      - BATCH
                      - CHARGEBACK
                      - INTERCHANGE
                      - PLATFORM
                      - TOKEN
                      - PROCESSING
                      - RETRIEVAL
                      - DDA_REJECT
                      - MONTHLY_MINIMUM
                      - PCI_NON_COMPLIANCE
                      - GATEWAY_FEE
                      - EARLY_CANCELLATION
                      - REGULATORY_PRODUCT
                      - VALIDATION_FEE
                      - LINKING_FEE
                      - REJECT_FEE
                      - REVERSAL_FEE
                      - RETURN_FEE
                      - UNKNOWN_BANK_ACTIVITY_ADJUSTMENT
                      - UNMATCHED_SETTLEMENT
                      - ACCOUNT_UPDATE
                      - NETWORK_TOKEN_ISSUANCE
                      - PARTNER_ADHOC
                      - EQUIPMENT
                      - PFAC_PROCESSING
                  fee_sub_type:
                    description: The sub-type of fee
                    type: string
                    enum:
                      - auth
                      - card
                      - bank_per_transaction
                      - bank_bps
                      - unmatched_settlement_reversal
                  description:
                    description: Human-readable description of the fee
                    type: string
                  from_owner_id:
                    description: The entity paying the fee
                    type: string
                  from_owner_type:
                    type: string
                    enum:
                      - account
                      - contractor
                      - tenant
                      - partner
                  to_owner_id:
                    description: The entity receiving the fee
                    type: string
                  to_owner_type:
                    type: string
                    enum:
                      - account
                      - contractor
                      - tenant
                      - partner
                  source_type:
                    description: The type of the source entity that generated this fee
                    type: string
                    enum:
                      - adjustment
                      - bank_transfer
                      - checkout_session
                      - dispute
                      - fee
                      - fee_refund
                      - funding
                      - payment
                      - payment_intent
                      - payment_method
                      - payment_refund
                      - payout
                      - refund
                      - reversal
                      - unmatched_settlement
                  source_id:
                    description: The ID of the source entity that generated this fee
                    type: string
                  source_account_id:
                    description: The account ID associated with the source entity
                    type: string
                  amount:
                    description: Fee amount in minor units (cents)
                    type: number
                  amount_refunded:
                    description: Amount of the fee that has been refunded
                    type: number
                  auth_fee:
                    type: number
                  card_fee_bps:
                    type: number
                  ach_per_transaction_fee:
                    type: number
                  ach_fee_bps:
                    type: number
                  ach_bps_fee_max:
                    type: number
                  ach_service_type:
                    type: string
                    enum:
                      - standard
                      - same_day
                  card_type:
                    type: string
                    enum:
                      - visa
                      - mastercard
                      - american_express
                      - discover
                  settlement_id:
                    type: string
                    pattern: ^se_[\s\S]{0,}$
                  settlement_status:
                    type: string
                    enum:
                      - settled
                      - unsettled
                  settled_at:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  monthly_fee_date:
                    type: string
                    format: date
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                  reference_id:
                    description: External reference identifier
                    type: string
                  user_fields:
                    description: Custom user-defined metadata
                    type: object
                    additionalProperties: {}
                    x-propertyNames:
                      type: string
                  is_refund:
                    description: Whether this fee is a refund of another fee
                    type: boolean
                required:
                  - id
                  - entity
                  - created_at
                  - updated_at
                  - currency
                  - fee_type
                  - from_owner_id
                  - from_owner_type
                  - amount
                  - settlement_id
                  - settlement_status
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      code:
                        default: 400-01
                        type: string
                        enum:
                          - 400-01
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Bad Request
                        type: string
                      detail:
                        default: The request is invalid or malformed
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-02
                        type: string
                        enum:
                          - 400-02
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Body
                        type: string
                      detail:
                        default: The request contains an invalid body property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-03
                        type: string
                        enum:
                          - 400-03
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Query
                        type: string
                      detail:
                        default: The request contains an invalid query property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-04
                        type: string
                        enum:
                          - 400-04
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Header
                        type: string
                      detail:
                        default: The request contains an invalid header property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-05
                        type: string
                        enum:
                          - 400-05
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Parameter
                        type: string
                      detail:
                        default: >-
                          The request contains an invalid parameter property
                          value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 401-01
                    type: string
                    enum:
                      - 401-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Unauthorized
                    type: string
                  detail:
                    default: >-
                      Access token not set or invalid, and the requested
                      resource could not be returned
                    type: string
                  status:
                    default: 401
                    type: number
                    enum:
                      - 401
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 403-01
                    type: string
                    enum:
                      - 403-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Forbidden
                    type: string
                  detail:
                    default: >-
                      The resource could not be returned as the requestor is not
                      authorized
                    type: string
                  status:
                    default: 403
                    type: number
                    enum:
                      - 403
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 404-01
                    type: string
                    enum:
                      - 404-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Found
                    type: string
                  detail:
                    default: The requested resource could not be found
                    type: string
                  status:
                    default: 404
                    type: number
                    enum:
                      - 404
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '409':
          description: '409'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 409-01
                    type: string
                    enum:
                      - 409-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Conflict
                    type: string
                  detail:
                    default: The request resulted in a conflict.
                    type: string
                  status:
                    default: 409
                    type: number
                    enum:
                      - 409
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 500-01
                    type: string
                    enum:
                      - 500-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Server Error
                    type: string
                  detail:
                    default: The server encountered an unexpected error
                    type: string
                  status:
                    default: 500
                    type: number
                    enum:
                      - 500
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '501':
          description: '501'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 501-01
                    type: string
                    enum:
                      - 501-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Implemented
                    type: string
                  detail:
                    default: The requested resource is not implemented
                    type: string
                  status:
                    default: 501
                    type: number
                    enum:
                      - 501
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
  /fees/{id}:
    get:
      description: Fetch a fee by id for a merchant account.
      summary: Fetch a fee by id.
      tags:
        - Fees
      parameters:
        - name: id
          in: path
          description: The fee identifier
          required: true
          schema:
            type: string
            pattern: ^fee_[\s\S]{0,}$
        - name: x-account-id
          in: header
          description: The merchant account identifier
          required: true
          schema:
            type: string
            pattern: ^acct_[\s\S]{0,}$
      operationId: getOneFeeById
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: The fee identifier
                    type: string
                    pattern: ^fee_[\s\S]{0,}$
                  entity:
                    type: string
                    enum:
                      - fee
                  created_at:
                    description: When the fee was created
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  updated_at:
                    description: When the fee was last updated
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  currency:
                    type: string
                    enum:
                      - USD
                      - CAD
                  fee_type:
                    description: The type of fee
                    type: string
                    enum:
                      - APPLICATION
                      - BATCH
                      - CHARGEBACK
                      - INTERCHANGE
                      - PLATFORM
                      - TOKEN
                      - PROCESSING
                      - RETRIEVAL
                      - DDA_REJECT
                      - MONTHLY_MINIMUM
                      - PCI_NON_COMPLIANCE
                      - GATEWAY_FEE
                      - EARLY_CANCELLATION
                      - REGULATORY_PRODUCT
                      - VALIDATION_FEE
                      - LINKING_FEE
                      - REJECT_FEE
                      - REVERSAL_FEE
                      - RETURN_FEE
                      - UNKNOWN_BANK_ACTIVITY_ADJUSTMENT
                      - UNMATCHED_SETTLEMENT
                      - ACCOUNT_UPDATE
                      - NETWORK_TOKEN_ISSUANCE
                      - PARTNER_ADHOC
                      - EQUIPMENT
                      - PFAC_PROCESSING
                  fee_sub_type:
                    description: The sub-type of fee
                    type: string
                    enum:
                      - auth
                      - card
                      - bank_per_transaction
                      - bank_bps
                      - unmatched_settlement_reversal
                  description:
                    description: Human-readable description of the fee
                    type: string
                  from_owner_id:
                    description: The entity paying the fee
                    type: string
                  from_owner_type:
                    type: string
                    enum:
                      - account
                      - contractor
                      - tenant
                      - partner
                  to_owner_id:
                    description: The entity receiving the fee
                    type: string
                  to_owner_type:
                    type: string
                    enum:
                      - account
                      - contractor
                      - tenant
                      - partner
                  source_type:
                    description: The type of the source entity that generated this fee
                    type: string
                    enum:
                      - adjustment
                      - bank_transfer
                      - checkout_session
                      - dispute
                      - fee
                      - fee_refund
                      - funding
                      - payment
                      - payment_intent
                      - payment_method
                      - payment_refund
                      - payout
                      - refund
                      - reversal
                      - unmatched_settlement
                  source_id:
                    description: The ID of the source entity that generated this fee
                    type: string
                  source_account_id:
                    description: The account ID associated with the source entity
                    type: string
                  amount:
                    description: Fee amount in minor units (cents)
                    type: number
                  amount_refunded:
                    description: Amount of the fee that has been refunded
                    type: number
                  auth_fee:
                    type: number
                  card_fee_bps:
                    type: number
                  ach_per_transaction_fee:
                    type: number
                  ach_fee_bps:
                    type: number
                  ach_bps_fee_max:
                    type: number
                  ach_service_type:
                    type: string
                    enum:
                      - standard
                      - same_day
                  card_type:
                    type: string
                    enum:
                      - visa
                      - mastercard
                      - american_express
                      - discover
                  settlement_id:
                    type: string
                    pattern: ^se_[\s\S]{0,}$
                  settlement_status:
                    type: string
                    enum:
                      - settled
                      - unsettled
                  settled_at:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  monthly_fee_date:
                    type: string
                    format: date
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                  reference_id:
                    description: External reference identifier
                    type: string
                  user_fields:
                    description: Custom user-defined metadata
                    type: object
                    additionalProperties: {}
                    x-propertyNames:
                      type: string
                  is_refund:
                    description: Whether this fee is a refund of another fee
                    type: boolean
                required:
                  - id
                  - entity
                  - created_at
                  - updated_at
                  - currency
                  - fee_type
                  - from_owner_id
                  - from_owner_type
                  - amount
                  - settlement_id
                  - settlement_status
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      code:
                        default: 400-01
                        type: string
                        enum:
                          - 400-01
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Bad Request
                        type: string
                      detail:
                        default: The request is invalid or malformed
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-02
                        type: string
                        enum:
                          - 400-02
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Body
                        type: string
                      detail:
                        default: The request contains an invalid body property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-03
                        type: string
                        enum:
                          - 400-03
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Query
                        type: string
                      detail:
                        default: The request contains an invalid query property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-04
                        type: string
                        enum:
                          - 400-04
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Header
                        type: string
                      detail:
                        default: The request contains an invalid header property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-05
                        type: string
                        enum:
                          - 400-05
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Parameter
                        type: string
                      detail:
                        default: >-
                          The request contains an invalid parameter property
                          value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 401-01
                    type: string
                    enum:
                      - 401-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Unauthorized
                    type: string
                  detail:
                    default: >-
                      Access token not set or invalid, and the requested
                      resource could not be returned
                    type: string
                  status:
                    default: 401
                    type: number
                    enum:
                      - 401
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 403-01
                    type: string
                    enum:
                      - 403-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Forbidden
                    type: string
                  detail:
                    default: >-
                      The resource could not be returned as the requestor is not
                      authorized
                    type: string
                  status:
                    default: 403
                    type: number
                    enum:
                      - 403
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 404-01
                    type: string
                    enum:
                      - 404-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Found
                    type: string
                  detail:
                    default: The requested resource could not be found
                    type: string
                  status:
                    default: 404
                    type: number
                    enum:
                      - 404
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '409':
          description: '409'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 409-01
                    type: string
                    enum:
                      - 409-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Conflict
                    type: string
                  detail:
                    default: The request resulted in a conflict.
                    type: string
                  status:
                    default: 409
                    type: number
                    enum:
                      - 409
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 500-01
                    type: string
                    enum:
                      - 500-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Server Error
                    type: string
                  detail:
                    default: The server encountered an unexpected error
                    type: string
                  status:
                    default: 500
                    type: number
                    enum:
                      - 500
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '501':
          description: '501'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 501-01
                    type: string
                    enum:
                      - 501-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Implemented
                    type: string
                  detail:
                    default: The requested resource is not implemented
                    type: string
                  status:
                    default: 501
                    type: number
                    enum:
                      - 501
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
  /fees/{id}/refund:
    post:
      description: >-
        Partially or fully refund an adhoc fee up to the amount of the original
        fee. If partially refunding a fee, there is a limit of 10 refunds per
        fee.
      summary: Refund an adhoc fee.
      tags:
        - Fees
      parameters:
        - name: id
          in: path
          description: The fee identifier to refund
          required: true
          schema:
            type: string
            pattern: ^fee_[\s\S]{0,}$
      operationId: createRefund
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              type: object
              properties:
                amount:
                  type: integer
                  minimum: 0
                  maximum: 9007199254740991
                description:
                  type: string
                  maxLength: 1000
                reference_id:
                  type: string
                  maxLength: 300
                user_fields:
                  type: object
                  additionalProperties: {}
                  x-propertyNames:
                    type: string
              required:
                - amount
                - description
              additionalProperties: false
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: The fee identifier
                    type: string
                    pattern: ^fee_[\s\S]{0,}$
                  entity:
                    type: string
                    enum:
                      - fee
                  created_at:
                    description: When the fee was created
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  updated_at:
                    description: When the fee was last updated
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  currency:
                    type: string
                    enum:
                      - USD
                      - CAD
                  fee_type:
                    description: The type of fee
                    type: string
                    enum:
                      - APPLICATION
                      - BATCH
                      - CHARGEBACK
                      - INTERCHANGE
                      - PLATFORM
                      - TOKEN
                      - PROCESSING
                      - RETRIEVAL
                      - DDA_REJECT
                      - MONTHLY_MINIMUM
                      - PCI_NON_COMPLIANCE
                      - GATEWAY_FEE
                      - EARLY_CANCELLATION
                      - REGULATORY_PRODUCT
                      - VALIDATION_FEE
                      - LINKING_FEE
                      - REJECT_FEE
                      - REVERSAL_FEE
                      - RETURN_FEE
                      - UNKNOWN_BANK_ACTIVITY_ADJUSTMENT
                      - UNMATCHED_SETTLEMENT
                      - ACCOUNT_UPDATE
                      - NETWORK_TOKEN_ISSUANCE
                      - PARTNER_ADHOC
                      - EQUIPMENT
                      - PFAC_PROCESSING
                  fee_sub_type:
                    description: The sub-type of fee
                    type: string
                    enum:
                      - auth
                      - card
                      - bank_per_transaction
                      - bank_bps
                      - unmatched_settlement_reversal
                  description:
                    description: Human-readable description of the fee
                    type: string
                  from_owner_id:
                    description: The entity paying the fee
                    type: string
                  from_owner_type:
                    type: string
                    enum:
                      - account
                      - contractor
                      - tenant
                      - partner
                  to_owner_id:
                    description: The entity receiving the fee
                    type: string
                  to_owner_type:
                    type: string
                    enum:
                      - account
                      - contractor
                      - tenant
                      - partner
                  source_type:
                    description: The type of the source entity that generated this fee
                    type: string
                    enum:
                      - adjustment
                      - bank_transfer
                      - checkout_session
                      - dispute
                      - fee
                      - fee_refund
                      - funding
                      - payment
                      - payment_intent
                      - payment_method
                      - payment_refund
                      - payout
                      - refund
                      - reversal
                      - unmatched_settlement
                  source_id:
                    description: The ID of the source entity that generated this fee
                    type: string
                  source_account_id:
                    description: The account ID associated with the source entity
                    type: string
                  amount:
                    description: Fee amount in minor units (cents)
                    type: number
                  amount_refunded:
                    description: Amount of the fee that has been refunded
                    type: number
                  auth_fee:
                    type: number
                  card_fee_bps:
                    type: number
                  ach_per_transaction_fee:
                    type: number
                  ach_fee_bps:
                    type: number
                  ach_bps_fee_max:
                    type: number
                  ach_service_type:
                    type: string
                    enum:
                      - standard
                      - same_day
                  card_type:
                    type: string
                    enum:
                      - visa
                      - mastercard
                      - american_express
                      - discover
                  settlement_id:
                    type: string
                    pattern: ^se_[\s\S]{0,}$
                  settlement_status:
                    type: string
                    enum:
                      - settled
                      - unsettled
                  settled_at:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                  monthly_fee_date:
                    type: string
                    format: date
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                  reference_id:
                    description: External reference identifier
                    type: string
                  user_fields:
                    description: Custom user-defined metadata
                    type: object
                    additionalProperties: {}
                    x-propertyNames:
                      type: string
                  is_refund:
                    description: Whether this fee is a refund of another fee
                    type: boolean
                required:
                  - id
                  - entity
                  - created_at
                  - updated_at
                  - currency
                  - fee_type
                  - from_owner_id
                  - from_owner_type
                  - amount
                  - settlement_id
                  - settlement_status
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      code:
                        default: 400-01
                        type: string
                        enum:
                          - 400-01
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Bad Request
                        type: string
                      detail:
                        default: The request is invalid or malformed
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-02
                        type: string
                        enum:
                          - 400-02
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Body
                        type: string
                      detail:
                        default: The request contains an invalid body property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-03
                        type: string
                        enum:
                          - 400-03
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Query
                        type: string
                      detail:
                        default: The request contains an invalid query property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-04
                        type: string
                        enum:
                          - 400-04
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Header
                        type: string
                      detail:
                        default: The request contains an invalid header property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-05
                        type: string
                        enum:
                          - 400-05
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Parameter
                        type: string
                      detail:
                        default: >-
                          The request contains an invalid parameter property
                          value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 401-01
                    type: string
                    enum:
                      - 401-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Unauthorized
                    type: string
                  detail:
                    default: >-
                      Access token not set or invalid, and the requested
                      resource could not be returned
                    type: string
                  status:
                    default: 401
                    type: number
                    enum:
                      - 401
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 403-01
                    type: string
                    enum:
                      - 403-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Forbidden
                    type: string
                  detail:
                    default: >-
                      The resource could not be returned as the requestor is not
                      authorized
                    type: string
                  status:
                    default: 403
                    type: number
                    enum:
                      - 403
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 404-01
                    type: string
                    enum:
                      - 404-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Found
                    type: string
                  detail:
                    default: The requested resource could not be found
                    type: string
                  status:
                    default: 404
                    type: number
                    enum:
                      - 404
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '409':
          description: '409'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 409-01
                    type: string
                    enum:
                      - 409-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Conflict
                    type: string
                  detail:
                    default: The request resulted in a conflict.
                    type: string
                  status:
                    default: 409
                    type: number
                    enum:
                      - 409
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 500-01
                    type: string
                    enum:
                      - 500-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Server Error
                    type: string
                  detail:
                    default: The server encountered an unexpected error
                    type: string
                  status:
                    default: 500
                    type: number
                    enum:
                      - 500
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '501':
          description: '501'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 501-01
                    type: string
                    enum:
                      - 501-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Implemented
                    type: string
                  detail:
                    default: The requested resource is not implemented
                    type: string
                  status:
                    default: 501
                    type: number
                    enum:
                      - 501
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
  /payments/{id}:
    get:
      operationId: get_payment
      summary: Fetch a payment by ID
      tags:
        - Payments
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-74'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /surcharge:
    post:
      operationId: calculate_surcharge
      summary: Calculate surcharge fee for a payment
      tags:
        - Surcharge
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-135'
      parameters:
        - schema:
            type: string
          in: header
          name: x-account-id
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-136'
        '400':
          description: Bad Request — the request data was invalid or malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '401':
          description: Unauthorized — missing or invalid authentication credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '403':
          description: Forbidden — not permitted to access this resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '404':
          description: Not Found — the requested resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '422':
          description: >-
            Unprocessable Entity — the request was well-formed but could not be
            processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '429':
          description: Too Many Requests — the rate limit has been exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '500':
          description: Internal Server Error — an unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '502':
          description: Bad Gateway — an upstream dependency returned an invalid response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
        '503':
          description: >-
            Service Unavailable — the service is temporarily unable to handle
            the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/def-27'
  /unmatched_settlements:
    get:
      description: Fetch unmatched payments, refunds, and associated unmatched record data.
      summary: Fetch a list of unmatched settlements.
      tags:
        - Unmatched Settlements
      parameters: []
      operationId: getPartnerUnmatched
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        account_id:
                          type: string
                        merchant_id:
                          type: string
                        account_name:
                          type: string
                        unmatched_settlement_net_amount:
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                        unmatched_settlement_records:
                          type: array
                          items:
                            type: object
                            properties:
                              amount:
                                type: number
                              auth_code:
                                anyOf:
                                  - type: string
                                    nullable: true
                              auth_date:
                                type: string
                              funded_date:
                                anyOf:
                                  - type: string
                                    nullable: true
                              record_date:
                                type: string
                              transaction_date:
                                type: string
                              transaction_type:
                                anyOf:
                                  - type: string
                                    enum:
                                      - payment
                                  - type: string
                                    enum:
                                      - refund
                              card_last_four:
                                type: string
                              card_first_six:
                                type: string
                              invoice_number:
                                type: string
                              card_brand:
                                type: string
                            required:
                              - auth_date
                              - record_date
                              - transaction_date
                              - transaction_type
                              - card_last_four
                              - card_first_six
                              - invoice_number
                              - card_brand
                            additionalProperties: false
                        unmatched_payments:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: string
                              payment_intent_id:
                                type: string
                              amount:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              auth_code:
                                anyOf:
                                  - type: string
                                    nullable: true
                              transaction_date:
                                type: string
                              card_last_four:
                                type: string
                              settlement_id:
                                type: string
                            required:
                              - id
                              - payment_intent_id
                              - amount
                              - transaction_date
                              - card_last_four
                              - settlement_id
                            additionalProperties: false
                        unmatched_refunds:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: string
                              payment_id:
                                anyOf:
                                  - type: string
                                    nullable: true
                              amount:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              auth_code:
                                anyOf:
                                  - type: string
                                    nullable: true
                              transaction_date:
                                type: string
                              card_last_four:
                                type: string
                              settlement_id:
                                type: string
                            required:
                              - id
                              - amount
                              - transaction_date
                              - card_last_four
                              - settlement_id
                            additionalProperties: false
                      required:
                        - account_id
                        - merchant_id
                        - account_name
                        - unmatched_settlement_net_amount
                        - unmatched_settlement_records
                        - unmatched_payments
                        - unmatched_refunds
                      additionalProperties: false
                required:
                  - data
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      code:
                        default: 400-01
                        type: string
                        enum:
                          - 400-01
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Bad Request
                        type: string
                      detail:
                        default: The request is invalid or malformed
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-02
                        type: string
                        enum:
                          - 400-02
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Body
                        type: string
                      detail:
                        default: The request contains an invalid body property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-03
                        type: string
                        enum:
                          - 400-03
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Query
                        type: string
                      detail:
                        default: The request contains an invalid query property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-04
                        type: string
                        enum:
                          - 400-04
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Header
                        type: string
                      detail:
                        default: The request contains an invalid header property value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
                  - type: object
                    properties:
                      code:
                        default: 400-05
                        type: string
                        enum:
                          - 400-05
                      type:
                        default: about:blank
                        type: string
                        enum:
                          - about:blank
                      title:
                        default: Invalid Parameter
                        type: string
                      detail:
                        default: >-
                          The request contains an invalid parameter property
                          value.
                        type: string
                      status:
                        default: 400
                        type: number
                        enum:
                          - 400
                      instance:
                        default: Unknown
                        type: string
                      errors:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                expected:
                                  type: string
                                message:
                                  type: string
                                path:
                                  type: array
                                  items:
                                    anyOf:
                                      - type: string
                                      - type: number
                                received:
                                  type: string
                              required:
                                - code
                                - message
                                - path
                              additionalProperties: false
                            nullable: true
                    required:
                      - code
                      - type
                      - title
                      - detail
                      - status
                      - instance
                    additionalProperties: false
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 401-01
                    type: string
                    enum:
                      - 401-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Unauthorized
                    type: string
                  detail:
                    default: >-
                      Access token not set or invalid, and the requested
                      resource could not be returned
                    type: string
                  status:
                    default: 401
                    type: number
                    enum:
                      - 401
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 403-01
                    type: string
                    enum:
                      - 403-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Forbidden
                    type: string
                  detail:
                    default: >-
                      The resource could not be returned as the requestor is not
                      authorized
                    type: string
                  status:
                    default: 403
                    type: number
                    enum:
                      - 403
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 404-01
                    type: string
                    enum:
                      - 404-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Found
                    type: string
                  detail:
                    default: The requested resource could not be found
                    type: string
                  status:
                    default: 404
                    type: number
                    enum:
                      - 404
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '409':
          description: '409'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 409-01
                    type: string
                    enum:
                      - 409-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Conflict
                    type: string
                  detail:
                    default: The request resulted in a conflict.
                    type: string
                  status:
                    default: 409
                    type: number
                    enum:
                      - 409
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 500-01
                    type: string
                    enum:
                      - 500-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Server Error
                    type: string
                  detail:
                    default: The server encountered an unexpected error
                    type: string
                  status:
                    default: 500
                    type: number
                    enum:
                      - 500
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
        '501':
          description: '501'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    default: 501-01
                    type: string
                    enum:
                      - 501-01
                  type:
                    default: about:blank
                    type: string
                    enum:
                      - about:blank
                  title:
                    default: Not Implemented
                    type: string
                  detail:
                    default: The requested resource is not implemented
                    type: string
                  status:
                    default: 501
                    type: number
                    enum:
                      - 501
                  instance:
                    default: Unknown
                    type: string
                  errors:
                    anyOf:
                      - type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            expected:
                              type: string
                            message:
                              type: string
                            path:
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                  - type: number
                            received:
                              type: string
                          required:
                            - code
                            - message
                            - path
                          additionalProperties: false
                        nullable: true
                required:
                  - code
                  - type
                  - title
                  - detail
                  - status
                  - instance
                additionalProperties: false
components:
  schemas:
    def-7:
      type: object
      properties:
        currency:
          type: string
          enum:
            - USD
            - CAD
        pending:
          maximum: 9007199254740991
          type: integer
        available:
          maximum: 9007199254740991
          type: integer
      required:
        - currency
        - pending
        - available
      title: BalanceDTO
    def-10:
      type: object
      properties:
        cancel_url:
          maxLength: 500
          type: string
        success_url:
          maxLength: 500
          type: string
        customer_email:
          format: email
          maxLength: 255
          type: string
        reference_id:
          maxLength: 300
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        payment_rail_types:
          type: array
          items:
            type: string
            enum:
              - card
              - us_bank_ach
              - ca_bank_eft
        payment_intent_data:
          type: object
          properties:
            amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            merchant_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            payment_splits:
              type: array
              items:
                type: object
                properties:
                  account_id:
                    type: string
                  amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  description:
                    maxLength: 1000
                    type: string
                required:
                  - account_id
                  - amount
                  - description
            order_details:
              type: object
              properties:
                card_not_present_type:
                  type: string
                  enum:
                    - ecommerce
                    - recurring
                po_number:
                  maxLength: 36
                  type: string
                tax_exempt:
                  type: boolean
                tax_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                tip_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                surcharge_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                freight_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                duty_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                initiated_by:
                  type: string
                  enum:
                    - merchant
                    - customer
                is_scheduled_payment:
                  type: boolean
                order_date:
                  format: date-time
                  type: string
                ship_to_zip:
                  maxLength: 12
                  type: string
                ship_from_zip:
                  maxLength: 12
                  type: string
                ship_to_country:
                  maxLength: 2
                  description: Country Code (ISO 3166-1 alpha-2)
                  type: string
                invoice_id:
                  maxLength: 36
                  type: string
                description:
                  maxLength: 1000
                  type: string
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      line_number:
                        type: number
                      material:
                        maxLength: 36
                        type: string
                      name:
                        maxLength: 300
                        type: string
                      description:
                        maxLength: 300
                        type: string
                      upc:
                        type: number
                      quantity:
                        minimum: 0
                        type: number
                      uom:
                        maxLength: 36
                        type: string
                      unit_cost:
                        maximum: 9007199254740991
                        type: integer
                      net_amount:
                        maximum: 9007199254740991
                        type: integer
                      tax_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tip_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      surcharge_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tax_exempt:
                        type: boolean
                      discount_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                subtotal:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                discount_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                total:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
            capture:
              type: boolean
            reference_id:
              maxLength: 300
              type: string
            user_fields:
              type: object
              additionalProperties: {}
            description:
              maxLength: 1000
              type: string
            payment_method_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - bank
                  - ca_bank
            payment_rail_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - us_bank_ach
                  - ca_bank_eft
            payment_method_data:
              type: object
              properties:
                id:
                  type: string
                cvv2:
                  type: string
                billing_details:
                  type: object
                  properties:
                    address:
                      type: object
                      properties:
                        city:
                          maxLength: 100
                          type: string
                        country:
                          maxLength: 4
                          type: string
                        state:
                          maxLength: 100
                          type: string
                        address_line1:
                          maxLength: 200
                          type: string
                        address_line2:
                          maxLength: 200
                          type: string
                        postal_code:
                          maxLength: 12
                          type: string
                    email:
                      maxLength: 255
                      type: string
                    name:
                      maxLength: 200
                      type: string
                    phone:
                      maxLength: 50
                      type: string
                payment_method_type:
                  type: string
                  enum:
                    - card
                    - bank
                    - ca_bank
                payment_rail_type:
                  type: string
                  enum:
                    - card
                    - us_bank_ach
                    - ca_bank_eft
              required:
                - id
            customer_id:
              maxLength: 50
              description: >-
                Associate this payment intent with a customer. The customer must
                have an active link to the merchant account. Once set (here or
                by the first successful customer-owned payment), the association
                is immutable.
              type: string
          required:
            - amount
          title: PaymentIntentCreateRequestDTO
        google_pay_enabled:
          default: true
          type: boolean
        apple_pay_enabled:
          default: true
          type: boolean
        surcharge:
          anyOf:
            - description: Surcharge configuration for percentage mode
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                surcharge_mode:
                  type: string
                  enum:
                    - percentage
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
                - surcharge_mode
                - surcharge_percentage
              title: CheckoutSessionSurchargePercentageDTO
            - description: Surcharge configuration for fixed mode
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                surcharge_mode:
                  type: string
                  enum:
                    - fixed
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
                - surcharge_mode
                - surcharge_fixed_amount
              title: CheckoutSessionSurchargeFixedDTO
            - description: Surcharge configuration when disabled
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                  enum:
                    - false
                surcharge_mode:
                  type: string
                  enum:
                    - percentage
                    - fixed
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
              title: CheckoutSessionSurchargeDisabledDTO
      required:
        - payment_intent_data
      title: CheckoutSessionCreateRequestDTO
    def-11:
      type: object
      properties:
        amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        merchant_amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        payment_splits:
          type: array
          items:
            type: object
            properties:
              account_id:
                type: string
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              description:
                maxLength: 1000
                type: string
            required:
              - account_id
              - amount
              - description
        order_details:
          type: object
          properties:
            card_not_present_type:
              type: string
              enum:
                - ecommerce
                - recurring
            po_number:
              maxLength: 36
              type: string
            tax_exempt:
              type: boolean
            tax_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            tip_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            surcharge_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            freight_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            duty_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            initiated_by:
              type: string
              enum:
                - merchant
                - customer
            is_scheduled_payment:
              type: boolean
            order_date:
              format: date-time
              type: string
            ship_to_zip:
              maxLength: 12
              type: string
            ship_from_zip:
              maxLength: 12
              type: string
            ship_to_country:
              maxLength: 2
              description: Country Code (ISO 3166-1 alpha-2)
              type: string
            invoice_id:
              maxLength: 36
              type: string
            description:
              maxLength: 1000
              type: string
            items:
              type: array
              items:
                type: object
                properties:
                  line_number:
                    type: number
                  material:
                    maxLength: 36
                    type: string
                  name:
                    maxLength: 300
                    type: string
                  description:
                    maxLength: 300
                    type: string
                  upc:
                    type: number
                  quantity:
                    minimum: 0
                    type: number
                  uom:
                    maxLength: 36
                    type: string
                  unit_cost:
                    maximum: 9007199254740991
                    type: integer
                  net_amount:
                    maximum: 9007199254740991
                    type: integer
                  tax_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tip_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  surcharge_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tax_exempt:
                    type: boolean
                  discount_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
            subtotal:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            discount_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            total:
              minimum: 0
              maximum: 9007199254740991
              type: integer
        capture:
          type: boolean
        reference_id:
          maxLength: 300
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        description:
          maxLength: 1000
          type: string
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        payment_rail_types:
          type: array
          items:
            type: string
            enum:
              - card
              - us_bank_ach
              - ca_bank_eft
        payment_method_data:
          type: object
          properties:
            id:
              type: string
            cvv2:
              type: string
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      maxLength: 100
                      type: string
                    country:
                      maxLength: 4
                      type: string
                    state:
                      maxLength: 100
                      type: string
                    address_line1:
                      maxLength: 200
                      type: string
                    address_line2:
                      maxLength: 200
                      type: string
                    postal_code:
                      maxLength: 12
                      type: string
                email:
                  maxLength: 255
                  type: string
                name:
                  maxLength: 200
                  type: string
                phone:
                  maxLength: 50
                  type: string
            payment_method_type:
              type: string
              enum:
                - card
                - bank
                - ca_bank
            payment_rail_type:
              type: string
              enum:
                - card
                - us_bank_ach
                - ca_bank_eft
          required:
            - id
        customer_id:
          maxLength: 50
          description: >-
            Associate this payment intent with a customer. The customer must
            have an active link to the merchant account. Once set (here or by
            the first successful customer-owned payment), the association is
            immutable.
          type: string
      required:
        - amount
      title: PaymentIntentCreateRequestDTO
    def-15:
      type: object
      properties:
        customer_email:
          format: email
          maxLength: 255
          type: string
        reference_id:
          maxLength: 300
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        cancel_url:
          maxLength: 500
          type: string
        success_url:
          maxLength: 500
          type: string
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        payment_rail_types:
          type: array
          items:
            type: string
            enum:
              - card
              - us_bank_ach
              - ca_bank_eft
        payment_intent_data:
          type: object
          properties:
            amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            merchant_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            payment_splits:
              type: array
              items:
                type: object
                properties:
                  account_id:
                    maxLength: 35
                    type: string
                  amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  description:
                    maxLength: 1000
                    type: string
                required:
                  - account_id
                  - amount
                  - description
            order_details:
              type: object
              properties:
                card_not_present_type:
                  type: string
                  enum:
                    - ecommerce
                    - recurring
                po_number:
                  maxLength: 36
                  type: string
                tax_exempt:
                  type: boolean
                tax_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                tip_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                surcharge_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                freight_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                duty_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                initiated_by:
                  type: string
                  enum:
                    - merchant
                    - customer
                is_scheduled_payment:
                  type: boolean
                order_date:
                  format: date-time
                  type: string
                ship_to_zip:
                  maxLength: 12
                  type: string
                ship_from_zip:
                  maxLength: 12
                  type: string
                ship_to_country:
                  maxLength: 2
                  description: Country Code (ISO 3166-1 alpha-2)
                  type: string
                invoice_id:
                  maxLength: 36
                  type: string
                description:
                  maxLength: 1000
                  type: string
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      line_number:
                        type: number
                      material:
                        maxLength: 36
                        type: string
                      name:
                        maxLength: 300
                        type: string
                      description:
                        maxLength: 300
                        type: string
                      upc:
                        type: number
                      quantity:
                        minimum: 0
                        type: number
                      uom:
                        maxLength: 36
                        type: string
                      unit_cost:
                        maximum: 9007199254740991
                        type: integer
                      net_amount:
                        maximum: 9007199254740991
                        type: integer
                      tax_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tip_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      surcharge_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tax_exempt:
                        type: boolean
                      discount_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                subtotal:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                discount_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                total:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
            capture:
              type: boolean
            currency:
              type: string
              enum:
                - USD
                - CAD
            reference_id:
              maxLength: 300
              type: string
            user_fields:
              type: object
              additionalProperties: {}
            description:
              maxLength: 1000
              type: string
            payment_method_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - bank
                  - ca_bank
            payment_rail_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - us_bank_ach
                  - ca_bank_eft
        subtotal:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        discount_amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        surcharge:
          anyOf:
            - description: Surcharge configuration for percentage mode
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                surcharge_mode:
                  type: string
                  enum:
                    - percentage
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
                - surcharge_mode
                - surcharge_percentage
            - description: Surcharge configuration for fixed mode
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                surcharge_mode:
                  type: string
                  enum:
                    - fixed
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
                - surcharge_mode
                - surcharge_fixed_amount
            - description: Surcharge configuration when disabled
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                  enum:
                    - false
                surcharge_mode:
                  type: string
                  enum:
                    - percentage
                    - fixed
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
        expires_at:
          format: iso-date-time
          description: >-
            Expiration date-time for the checkout session. Must be in the future
            and within the maximum allowed expiration window.
          type: string
          example: '2026-07-25T12:00:00.000Z'
      title: CheckoutSessionUpdateRequestDTO
    def-17:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - checkout_session
        url:
          type: string
        cancel_url:
          type: string
        success_url:
          type: string
        customer_email:
          type: string
        client_secret:
          type: string
        reference_id:
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        payment_rail_types:
          type: array
          items:
            type: string
            enum:
              - card
              - us_bank_ach
              - ca_bank_eft
        payment_intent_data:
          type: object
          properties:
            amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            merchant_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            payment_splits:
              type: array
              items:
                type: object
                properties:
                  account_id:
                    type: string
                  amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  description:
                    maxLength: 1000
                    type: string
                required:
                  - account_id
                  - amount
                  - description
            order_details:
              type: object
              properties:
                card_not_present_type:
                  type: string
                  enum:
                    - ecommerce
                    - recurring
                po_number:
                  maxLength: 36
                  type: string
                tax_exempt:
                  type: boolean
                tax_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                tip_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                surcharge_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                freight_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                duty_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                initiated_by:
                  type: string
                  enum:
                    - merchant
                    - customer
                is_scheduled_payment:
                  type: boolean
                order_date:
                  format: date-time
                  type: string
                ship_to_zip:
                  maxLength: 12
                  type: string
                ship_from_zip:
                  maxLength: 12
                  type: string
                ship_to_country:
                  maxLength: 2
                  description: Country Code (ISO 3166-1 alpha-2)
                  type: string
                invoice_id:
                  maxLength: 36
                  type: string
                description:
                  maxLength: 1000
                  type: string
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      line_number:
                        type: number
                      material:
                        maxLength: 36
                        type: string
                      name:
                        maxLength: 300
                        type: string
                      description:
                        maxLength: 300
                        type: string
                      upc:
                        type: number
                      quantity:
                        minimum: 0
                        type: number
                      uom:
                        maxLength: 36
                        type: string
                      unit_cost:
                        maximum: 9007199254740991
                        type: integer
                      net_amount:
                        maximum: 9007199254740991
                        type: integer
                      tax_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tip_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      surcharge_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tax_exempt:
                        type: boolean
                      discount_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                subtotal:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                discount_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                total:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
            capture:
              type: boolean
            reference_id:
              maxLength: 300
              type: string
            user_fields:
              type: object
              additionalProperties: {}
            description:
              maxLength: 1000
              type: string
            payment_method_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - bank
                  - ca_bank
            payment_rail_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - us_bank_ach
                  - ca_bank_eft
            payment_method_data:
              type: object
              properties:
                id:
                  type: string
                cvv2:
                  type: string
                billing_details:
                  type: object
                  properties:
                    address:
                      type: object
                      properties:
                        city:
                          maxLength: 100
                          type: string
                        country:
                          maxLength: 4
                          type: string
                        state:
                          maxLength: 100
                          type: string
                        address_line1:
                          maxLength: 200
                          type: string
                        address_line2:
                          maxLength: 200
                          type: string
                        postal_code:
                          maxLength: 12
                          type: string
                    email:
                      maxLength: 255
                      type: string
                    name:
                      maxLength: 200
                      type: string
                    phone:
                      maxLength: 50
                      type: string
                payment_method_type:
                  type: string
                  enum:
                    - card
                    - bank
                    - ca_bank
                payment_rail_type:
                  type: string
                  enum:
                    - card
                    - us_bank_ach
                    - ca_bank_eft
              required:
                - id
            customer_id:
              maxLength: 50
              description: >-
                Associate this payment intent with a customer. The customer must
                have an active link to the merchant account. Once set (here or
                by the first successful customer-owned payment), the association
                is immutable.
              type: string
            currency:
              type: string
              enum:
                - USD
                - CAD
          required:
            - amount
            - currency
        payment_intent_id:
          type: string
        status:
          type: string
          enum:
            - open
            - complete
            - expired
        link_phone_number:
          type: string
        surcharge:
          anyOf:
            - description: Surcharge configuration for percentage mode
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                surcharge_mode:
                  type: string
                  enum:
                    - percentage
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
                - surcharge_mode
                - surcharge_percentage
            - description: Surcharge configuration for fixed mode
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                surcharge_mode:
                  type: string
                  enum:
                    - fixed
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
                - surcharge_mode
                - surcharge_fixed_amount
            - description: Surcharge configuration when disabled
              type: object
              properties:
                surcharge_enabled:
                  type: boolean
                  enum:
                    - false
                surcharge_mode:
                  type: string
                  enum:
                    - percentage
                    - fixed
                surcharge_percentage:
                  minimum: 0
                  maximum: 3
                  description: >-
                    Percentage value (0.00–3.00) applied if surchargeMode =
                    percentage
                  type: number
                surcharge_fixed_amount:
                  minimum: 0
                  description: >-
                    Fixed surcharge amount in cents (e.g. 50 or 100 for $0.50 or
                    $1.00) applied if surchargeMode = fixed
                  type: integer
              required:
                - surcharge_enabled
        account_id:
          type: string
        partner_id:
          type: string
        business_id:
          type: string
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
        expires_at:
          format: date-time
          type: string
      required:
        - id
        - entity
        - url
        - payment_method_types
        - payment_intent_data
        - status
        - account_id
        - partner_id
        - created_at
        - updated_at
        - expires_at
      title: CheckoutSessionDTO
    def-18:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/def-17'
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: CheckoutSessionListDTO
    def-19:
      type: object
      properties:
        phone_number:
          description: Phone number in E.164 format (e.g., +18883456789)
          pattern: ^\+[1-9]\d{1,14}$
          type: string
      required:
        - phone_number
      title: CheckoutSessionSendSmsRequestDTO
    def-20:
      type: object
      properties:
        cc_email_addresses:
          description: Array of email addresses to send checkout session to
          type: array
          items:
            format: email
            type: string
        email_override:
          format: email
          type: string
      title: CheckoutSessionSendEmailRequestDTO
    def-21:
      type: object
      properties:
        success:
          type: boolean
        message:
          type: string
      required:
        - success
        - message
      title: CheckoutSessionSendResponseDTO
    def-24:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - dispute
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
        currency:
          type: string
          enum:
            - USD
            - CAD
        account_id:
          type: string
        business_id:
          type: string
        status:
          anyOf:
            - type: string
              enum:
                - new
            - type: string
              enum:
                - accepted
            - type: string
              enum:
                - contested
            - type: string
              enum:
                - in_review
            - type: string
              enum:
                - in_pre_arbitration
            - type: string
              enum:
                - lost
            - type: string
              enum:
                - won
        payment_id:
          type: string
        payment_intent_id:
          type: string
        amount:
          maximum: 9007199254740991
          type: integer
        notes:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              message:
                type: string
              created_at:
                format: date-time
                type: string
              user_id:
                type: string
            required:
              - id
              - message
              - created_at
              - user_id
        attachments:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              description:
                type: string
              file_id:
                type: string
              created_at:
                format: date-time
                type: string
              uploaded_by:
                type: string
              owner_id:
                type: string
            required:
              - id
              - description
              - file_id
              - created_at
              - uploaded_by
              - owner_id
        dispute_date:
          format: date
          type: string
        response_due_date:
          format: date
          type: string
        original_response_due_date:
          format: date
          type: string
        closed_date:
          format: date
          type: string
        dispute_received_date:
          format: date
          type: string
        disposition_date:
          format: date
          type: string
        reason_disputed_code:
          type: number
        reason_disputed:
          type: string
        dispute_response:
          type: string
        reference_meta:
          type: object
          properties:
            card_last_four:
              type: string
            merchant_id:
              type: string
            authorization_code:
              type: string
            transaction_date:
              type: string
            transaction_amount:
              maximum: 9007199254740991
              type: integer
            retrieval_reference:
              type: string
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        settled_at:
          type: string
      required:
        - id
        - entity
        - created_at
        - updated_at
        - currency
        - account_id
        - business_id
        - status
        - payment_id
        - payment_intent_id
        - amount
        - dispute_date
        - dispute_received_date
        - disposition_date
        - reason_disputed_code
        - reason_disputed
      title: DisputeDTO
    def-25:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              entity:
                type: string
                enum:
                  - dispute
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
              currency:
                type: string
                enum:
                  - USD
                  - CAD
              account_id:
                type: string
              business_id:
                type: string
              status:
                anyOf:
                  - type: string
                    enum:
                      - new
                  - type: string
                    enum:
                      - accepted
                  - type: string
                    enum:
                      - contested
                  - type: string
                    enum:
                      - in_review
                  - type: string
                    enum:
                      - in_pre_arbitration
                  - type: string
                    enum:
                      - lost
                  - type: string
                    enum:
                      - won
              payment_id:
                type: string
              payment_intent_id:
                type: string
              amount:
                maximum: 9007199254740991
                type: integer
              notes:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    message:
                      type: string
                    created_at:
                      format: date-time
                      type: string
                    user_id:
                      type: string
                  required:
                    - id
                    - message
                    - created_at
                    - user_id
              attachments:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    description:
                      type: string
                    file_id:
                      type: string
                    created_at:
                      format: date-time
                      type: string
                    uploaded_by:
                      type: string
                    owner_id:
                      type: string
                  required:
                    - id
                    - description
                    - file_id
                    - created_at
                    - uploaded_by
                    - owner_id
              dispute_date:
                format: date
                type: string
              response_due_date:
                format: date
                type: string
              original_response_due_date:
                format: date
                type: string
              closed_date:
                format: date
                type: string
              dispute_received_date:
                format: date
                type: string
              disposition_date:
                format: date
                type: string
              reason_disputed_code:
                type: number
              reason_disputed:
                type: string
              dispute_response:
                type: string
              reference_meta:
                type: object
                properties:
                  card_last_four:
                    type: string
                  merchant_id:
                    type: string
                  authorization_code:
                    type: string
                  transaction_date:
                    type: string
                  transaction_amount:
                    maximum: 9007199254740991
                    type: integer
                  retrieval_reference:
                    type: string
              settlement_status:
                type: string
                enum:
                  - settled
                  - unsettled
              settled_at:
                type: string
            required:
              - id
              - entity
              - created_at
              - updated_at
              - currency
              - account_id
              - business_id
              - status
              - payment_id
              - payment_intent_id
              - amount
              - dispute_date
              - dispute_received_date
              - disposition_date
              - reason_disputed_code
              - reason_disputed
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: DisputeListDTO
    def-27:
      type: object
      properties:
        type:
          anyOf:
            - type: string
              enum:
                - SYSTEM_ERROR
            - type: string
              enum:
                - API_ERROR
            - type: string
              enum:
                - INVALID_REQUEST_DATA_ERROR
        code:
          type: string
        message:
          type: string
        argument_errors:
          type: object
          additionalProperties:
            type: string
        stack:
          type: string
      required:
        - type
        - code
        - message
      title: ErrorDTO
    def-28:
      type: object
      properties:
        gateway_void_response:
          type: object
          properties:
            created_at:
              format: iso-date-time
              description: >-
                An ISO-8601 date-time. The UTC offset is optional — a value
                without one (for example `2026-07-25T12:00:00`) is interpreted
                as UTC.
              type: string
              example: '2026-07-25T12:00:00.000Z'
            amount:
              maximum: 9007199254740991
              type: integer
            response_raw:
              type: string
          required:
            - created_at
            - amount
        cancellation_reason:
          type: string
          enum:
            - duplicate
            - fraudulent
            - requested_by_customer
            - abandoned
      title: ExternalPaymentCancelRequestDTO
    def-29:
      type: object
      properties:
        amount:
          maximum: 9007199254740991
          type: integer
        merchant_amount:
          maximum: 9007199254740991
          type: integer
        payment_method:
          type: object
          properties:
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      maxLength: 100
                      type: string
                    country:
                      maxLength: 4
                      type: string
                    state:
                      maxLength: 100
                      type: string
                    address_line1:
                      maxLength: 200
                      type: string
                    address_line2:
                      maxLength: 200
                      type: string
                    postal_code:
                      maxLength: 12
                      type: string
                email:
                  maxLength: 255
                  type: string
                name:
                  maxLength: 200
                  type: string
                phone:
                  maxLength: 50
                  type: string
            card:
              type: object
              properties:
                last_four_digits:
                  pattern: ^\d{4}$
                  type: string
                first_six_digits:
                  pattern: ^\d{6}$
                  type: string
                bin:
                  pattern: ^\d{6,8}$
                  type: string
                brand:
                  type: string
                  enum:
                    - visa
                    - mastercard
                    - american_express
                    - discover
                exp_month:
                  pattern: ^(0?[1-9]|1[012])$
                  type: string
                exp_year:
                  pattern: ^(\d{2}|\d{4})$
                  type: string
              required:
                - last_four_digits
                - brand
            meta_data:
              type: object
              additionalProperties: {}
          required:
            - card
          title: ExternalPaymentMethodCreateRequestDTO
        gateway_response:
          type: object
          properties:
            auth_code:
              pattern: ^[A-Za-z0-9]{4,}$
              type: string
            retrieval_reference:
              minLength: 12
              type: string
            invoice_number:
              minLength: 4
              type: string
            response_raw:
              type: string
            created_at:
              format: iso-date-time
              description: >-
                An ISO-8601 date-time. The UTC offset is optional — a value
                without one (for example `2026-07-25T12:00:00`) is interpreted
                as UTC.
              type: string
              example: '2026-07-25T12:00:00.000Z'
        card_present:
          type: boolean
      title: ExternalPaymentUpdateRequestDTO
    def-31:
      type: object
      properties:
        amount:
          maximum: 9007199254740991
          type: integer
        gateway_capture_response:
          type: object
          properties:
            auth_code:
              pattern: ^[A-Za-z0-9]{4,}$
              type: string
            retrieval_reference:
              minLength: 12
              maxLength: 12
              type: string
            invoice_number:
              minLength: 4
              type: string
            response_raw:
              type: string
            created_at:
              format: iso-date-time
              description: >-
                An ISO-8601 date-time. The UTC offset is optional — a value
                without one (for example `2026-07-25T12:00:00`) is interpreted
                as UTC.
              type: string
              example: '2026-07-25T12:00:00.000Z'
          required:
            - auth_code
            - created_at
      required:
        - gateway_capture_response
      title: ExternalPaymentCaptureRequestDTO
    def-32:
      type: object
      properties:
        payment_intent:
          type: object
          properties:
            amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            merchant_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            payment_splits:
              type: array
              items:
                type: object
                properties:
                  account_id:
                    type: string
                  amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  description:
                    maxLength: 1000
                    type: string
                required:
                  - account_id
                  - amount
                  - description
            order_details:
              type: object
              properties:
                card_not_present_type:
                  type: string
                  enum:
                    - ecommerce
                    - recurring
                po_number:
                  maxLength: 36
                  type: string
                tax_exempt:
                  type: boolean
                tax_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                tip_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                surcharge_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                freight_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                duty_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                initiated_by:
                  type: string
                  enum:
                    - merchant
                    - customer
                is_scheduled_payment:
                  type: boolean
                order_date:
                  format: date-time
                  type: string
                ship_to_zip:
                  maxLength: 12
                  type: string
                ship_from_zip:
                  maxLength: 12
                  type: string
                ship_to_country:
                  maxLength: 2
                  description: Country Code (ISO 3166-1 alpha-2)
                  type: string
                invoice_id:
                  maxLength: 36
                  type: string
                description:
                  maxLength: 1000
                  type: string
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      line_number:
                        type: number
                      material:
                        maxLength: 36
                        type: string
                      name:
                        maxLength: 300
                        type: string
                      description:
                        maxLength: 300
                        type: string
                      upc:
                        type: number
                      quantity:
                        minimum: 0
                        type: number
                      uom:
                        maxLength: 36
                        type: string
                      unit_cost:
                        maximum: 9007199254740991
                        type: integer
                      net_amount:
                        maximum: 9007199254740991
                        type: integer
                      tax_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tip_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      surcharge_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tax_exempt:
                        type: boolean
                      discount_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                subtotal:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                discount_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                total:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
            capture:
              type: boolean
            reference_id:
              maxLength: 300
              type: string
            user_fields:
              type: object
              additionalProperties: {}
            description:
              maxLength: 1000
              type: string
            payment_method_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - bank
                  - ca_bank
            payment_rail_types:
              type: array
              items:
                type: string
                enum:
                  - card
                  - us_bank_ach
                  - ca_bank_eft
            payment_method_data:
              type: object
              properties:
                id:
                  type: string
                cvv2:
                  type: string
                billing_details:
                  type: object
                  properties:
                    address:
                      type: object
                      properties:
                        city:
                          maxLength: 100
                          type: string
                        country:
                          maxLength: 4
                          type: string
                        state:
                          maxLength: 100
                          type: string
                        address_line1:
                          maxLength: 200
                          type: string
                        address_line2:
                          maxLength: 200
                          type: string
                        postal_code:
                          maxLength: 12
                          type: string
                    email:
                      maxLength: 255
                      type: string
                    name:
                      maxLength: 200
                      type: string
                    phone:
                      maxLength: 50
                      type: string
                payment_method_type:
                  type: string
                  enum:
                    - card
                    - bank
                    - ca_bank
                payment_rail_type:
                  type: string
                  enum:
                    - card
                    - us_bank_ach
                    - ca_bank_eft
              required:
                - id
            customer_id:
              maxLength: 50
              description: >-
                Associate this payment intent with a customer. The customer must
                have an active link to the merchant account. Once set (here or
                by the first successful customer-owned payment), the association
                is immutable.
              type: string
          required:
            - amount
        payment_method:
          type: object
          properties:
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      maxLength: 100
                      type: string
                    country:
                      maxLength: 4
                      type: string
                    state:
                      maxLength: 100
                      type: string
                    address_line1:
                      maxLength: 200
                      type: string
                    address_line2:
                      maxLength: 200
                      type: string
                    postal_code:
                      maxLength: 12
                      type: string
                email:
                  maxLength: 255
                  type: string
                name:
                  maxLength: 200
                  type: string
                phone:
                  maxLength: 50
                  type: string
            card:
              type: object
              properties:
                last_four_digits:
                  pattern: ^\d{4}$
                  type: string
                first_six_digits:
                  pattern: ^\d{6}$
                  type: string
                bin:
                  pattern: ^\d{6,8}$
                  type: string
                brand:
                  type: string
                  enum:
                    - visa
                    - mastercard
                    - american_express
                    - discover
                exp_month:
                  pattern: ^(0?[1-9]|1[012])$
                  type: string
                exp_year:
                  pattern: ^(\d{2}|\d{4})$
                  type: string
              required:
                - last_four_digits
                - brand
            meta_data:
              type: object
              additionalProperties: {}
          required:
            - card
        payment:
          type: object
          properties:
            description:
              maxLength: 1000
              type: string
            reference_id:
              maxLength: 4000
              type: string
        gateway_response:
          type: object
          properties:
            auth_code:
              pattern: ^[A-Za-z0-9]{4,}$
              type: string
            retrieval_reference:
              minLength: 12
              type: string
            invoice_number:
              minLength: 4
              type: string
            response_raw:
              type: string
            created_at:
              format: iso-date-time
              description: >-
                An ISO-8601 date-time. The UTC offset is optional — a value
                without one (for example `2026-07-25T12:00:00`) is interpreted
                as UTC.
              type: string
              example: '2026-07-25T12:00:00.000Z'
          required:
            - auth_code
            - created_at
        card_present:
          type: boolean
      required:
        - payment_intent
        - payment_method
        - gateway_response
      title: ExternalPaymentCreateRequestDTO
    def-33:
      type: object
      properties:
        payment_intent_id:
          type: string
        refund_request:
          type: object
          properties:
            amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            refund_splits:
              type: array
              items:
                type: object
                properties:
                  account_id:
                    type: string
                  amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  description:
                    maxLength: 1000
                    type: string
                required:
                  - account_id
                  - amount
                  - description
          title: RefundRequestDTO
        gateway_response:
          type: object
          properties:
            created_at:
              format: iso-date-time
              description: >-
                An ISO-8601 date-time. The UTC offset is optional — a value
                without one (for example `2026-07-25T12:00:00`) is interpreted
                as UTC.
              type: string
              example: '2026-07-25T12:00:00.000Z'
            auth_code:
              pattern: ^[A-Za-z0-9]{4,}$
              type: string
            retrieval_reference:
              minLength: 12
              type: string
            invoice_number:
              minLength: 4
              type: string
            response_raw:
              type: string
          required:
            - created_at
            - auth_code
      required:
        - payment_intent_id
        - gateway_response
      title: ExternalRefundCreateRequestDTO
    def-34:
      type: object
      properties:
        amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        refund_splits:
          type: array
          items:
            type: object
            properties:
              account_id:
                type: string
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              description:
                maxLength: 1000
                type: string
            required:
              - account_id
              - amount
              - description
      title: RefundRequestDTO
    def-42:
      type: object
      properties:
        name:
          maxLength: 200
          type: string
        line1:
          maxLength: 200
          type: string
        line2:
          maxLength: 200
          type: string
        city:
          maxLength: 100
          type: string
        state:
          maxLength: 100
          type: string
        postal_code:
          maxLength: 20
          type: string
        country:
          minLength: 2
          maxLength: 2
          pattern: ^[A-Z]{2}$
          description: ISO 3166-1 alpha-2 country code (e.g. US, CA, GB)
          type: string
      title: AddressDTO
    def-43:
      type: object
      properties:
        account_id:
          description: >-
            Initial account to attach this customer to. Becomes the primary
            account.
          type: string
        name:
          minLength: 1
          maxLength: 200
          type: string
        email:
          format: email
          maxLength: 255
          type: string
        phone:
          minLength: 7
          maxLength: 50
          type: string
        description:
          maxLength: 500
          type: string
        address:
          $ref: '#/components/schemas/def-42'
        shipping_address:
          $ref: '#/components/schemas/def-42'
        default_payment_method:
          maxLength: 50
          type: string
        tax_exempt:
          type: string
          enum:
            - none
            - exempt
            - reverse
        cau_enrolled:
          description: >-
            Whether new card payment methods attached to this customer are
            enrolled in the Card Account Updater. When omitted, defaults to the
            account's `enroll_new_customers_in_cau` payment setting.
          type: boolean
        user_fields:
          type: object
          additionalProperties: {}
      required:
        - account_id
      title: CustomerCreateRequestDTO
    def-44:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - customer
        business_id:
          type: string
        primary_account_id:
          type: string
        name:
          minLength: 1
          maxLength: 200
          type: string
        email:
          format: email
          maxLength: 255
          type: string
        phone:
          minLength: 7
          maxLength: 50
          type: string
        description:
          maxLength: 500
          type: string
        address:
          $ref: '#/components/schemas/def-42'
        shipping_address:
          $ref: '#/components/schemas/def-42'
        default_payment_method:
          maxLength: 50
          type: string
        tax_exempt:
          type: string
          enum:
            - none
            - exempt
            - reverse
        cau_enrolled:
          type: boolean
        user_fields:
          type: object
          additionalProperties: {}
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
      required:
        - id
        - entity
        - business_id
        - primary_account_id
        - tax_exempt
        - created_at
        - updated_at
      title: CustomerDTO
    def-46:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              entity:
                type: string
                enum:
                  - customer
              business_id:
                type: string
              primary_account_id:
                type: string
              name:
                minLength: 1
                maxLength: 200
                type: string
              email:
                format: email
                maxLength: 255
                type: string
              phone:
                minLength: 7
                maxLength: 50
                type: string
              description:
                maxLength: 500
                type: string
              address:
                $ref: '#/components/schemas/def-42'
              shipping_address:
                $ref: '#/components/schemas/def-42'
              default_payment_method:
                maxLength: 50
                type: string
              tax_exempt:
                type: string
                enum:
                  - none
                  - exempt
                  - reverse
              cau_enrolled:
                type: boolean
              user_fields:
                type: object
                additionalProperties: {}
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
            required:
              - id
              - entity
              - business_id
              - primary_account_id
              - tax_exempt
              - created_at
              - updated_at
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: CustomerListDTO
    def-48:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/def-79'
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: CustomerPaymentIntentsListDTO
    def-49:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/def-89'
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: CustomerPaymentMethodsListDTO
    def-50:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/def-74'
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: CustomerPaymentsListDTO
    def-52:
      description: >-
        PATCH semantics: only fields present in the request body are written.
        Nested objects (`address`, `shipping_address`, `user_fields`) are
        REPLACED in full when included — they are NOT deep-merged. To preserve
        fields within `address` or `shipping_address` you must include them in
        the update; omit the parent field entirely to leave the stored value
        unchanged.
      type: object
      properties:
        name:
          minLength: 1
          maxLength: 200
          type: string
        email:
          format: email
          maxLength: 255
          type: string
        phone:
          minLength: 7
          maxLength: 50
          type: string
        description:
          maxLength: 500
          type: string
        address:
          $ref: '#/components/schemas/def-42'
        shipping_address:
          $ref: '#/components/schemas/def-42'
        default_payment_method:
          maxLength: 50
          type: string
        tax_exempt:
          type: string
          enum:
            - none
            - exempt
            - reverse
        cau_enrolled:
          type: boolean
        user_fields:
          type: object
          additionalProperties: {}
      title: CustomerUpdateRequestDTO
    def-53:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - customer_account
        customer_id:
          type: string
        account_id:
          type: string
        business_id:
          type: string
        partner_id:
          type: string
        attached_by:
          type: string
        detached_by:
          type: string
        detached_at:
          format: date-time
          type: string
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
      required:
        - id
        - entity
        - customer_id
        - account_id
        - business_id
        - partner_id
        - created_at
        - updated_at
      title: CustomerAccountDTO
    def-54:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              entity:
                type: string
                enum:
                  - customer_account
              customer_id:
                type: string
              account_id:
                type: string
              business_id:
                type: string
              partner_id:
                type: string
              attached_by:
                type: string
              detached_by:
                type: string
              detached_at:
                format: date-time
                type: string
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
            required:
              - id
              - entity
              - customer_id
              - account_id
              - business_id
              - partner_id
              - created_at
              - updated_at
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: CustomerAccountListDTO
    def-56:
      type: object
      properties:
        account_id:
          type: string
      required:
        - account_id
      title: CustomerAccountAttachRequestDTO
    def-57:
      type: object
      properties:
        account_id:
          type: string
      required:
        - account_id
      title: CustomerPrimaryAccountChangeRequestDTO
    def-68:
      type: object
      properties:
        reference_id:
          maxLength: 4000
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        description:
          maxLength: 1000
          type: string
        order_details:
          type: object
          properties:
            card_not_present_type:
              type: string
              enum:
                - ecommerce
                - recurring
            po_number:
              maxLength: 36
              type: string
            tax_exempt:
              type: boolean
            tax_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            tip_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            surcharge_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            freight_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            duty_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            initiated_by:
              type: string
              enum:
                - merchant
                - customer
            is_scheduled_payment:
              type: boolean
            order_date:
              format: date-time
              type: string
            ship_to_zip:
              maxLength: 12
              type: string
            ship_from_zip:
              maxLength: 12
              type: string
            ship_to_country:
              maxLength: 2
              description: Country Code (ISO 3166-1 alpha-2)
              type: string
            invoice_id:
              maxLength: 36
              type: string
            description:
              maxLength: 1000
              type: string
            items:
              type: array
              items:
                type: object
                properties:
                  line_number:
                    type: number
                  material:
                    maxLength: 36
                    type: string
                  name:
                    maxLength: 300
                    type: string
                  description:
                    maxLength: 300
                    type: string
                  upc:
                    type: number
                  quantity:
                    minimum: 0
                    type: number
                  uom:
                    maxLength: 36
                    type: string
                  unit_cost:
                    maximum: 9007199254740991
                    type: integer
                  net_amount:
                    maximum: 9007199254740991
                    type: integer
                  tax_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tip_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  surcharge_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tax_exempt:
                    type: boolean
                  discount_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
            subtotal:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            discount_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            total:
              minimum: 0
              maximum: 9007199254740991
              type: integer
        cvv2:
          type: string
        payment_method_id:
          description: >-
            Pay with a specific payment method. Provide exactly one of
            payment_method_id or customer_id.
          type: string
        customer_id:
          maxLength: 50
          description: >-
            Pay with the customer's default payment method. The customer must
            have an active link to the merchant account and a default payment
            method set. Provide exactly one of payment_method_id or customer_id.
          type: string
        billing_details:
          type: object
          properties:
            address:
              type: object
              properties:
                city:
                  maxLength: 100
                  type: string
                country:
                  maxLength: 4
                  type: string
                state:
                  maxLength: 100
                  type: string
                address_line1:
                  maxLength: 200
                  type: string
                address_line2:
                  maxLength: 200
                  type: string
                postal_code:
                  maxLength: 12
                  type: string
            email:
              maxLength: 255
              type: string
            name:
              maxLength: 200
              type: string
            phone:
              maxLength: 50
              type: string
      title: PaymentCreateRequestDTO
    def-70:
      type: object
      properties:
        cancellation_reason:
          type: string
          enum:
            - duplicate
            - fraudulent
            - requested_by_customer
            - abandoned
      title: PaymentIntentCancelRequestDTO
    def-71:
      type: object
      properties:
        amount:
          minimum: 0
          title: Amount to capture
          description: Amount charged to the cardholder
          type: integer
        merchant_amount:
          minimum: 0
          title: Merchant Amount
          description: Amount to be credited to the merchant (Advanced Plan only)
          type: integer
        payment_data:
          type: object
          properties:
            reference_id:
              maxLength: 300
              type: string
            user_fields:
              type: object
              additionalProperties: {}
        payment_splits:
          type: array
          items:
            type: object
            properties:
              account_id:
                type: string
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              description:
                maxLength: 1000
                type: string
            required:
              - account_id
              - amount
              - description
      title: PaymentIntentCaptureRequestDTO
    def-72:
      type: object
      properties:
        amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        merchant_amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        payment_splits:
          type: array
          items:
            type: object
            properties:
              account_id:
                type: string
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              description:
                maxLength: 1000
                type: string
            required:
              - account_id
              - amount
              - description
        order_details:
          type: object
          properties:
            card_not_present_type:
              type: string
              enum:
                - ecommerce
                - recurring
            po_number:
              maxLength: 36
              type: string
            tax_exempt:
              type: boolean
            tax_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            tip_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            surcharge_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            freight_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            duty_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            initiated_by:
              type: string
              enum:
                - merchant
                - customer
            is_scheduled_payment:
              type: boolean
            order_date:
              format: date-time
              type: string
            ship_to_zip:
              maxLength: 12
              type: string
            ship_from_zip:
              maxLength: 12
              type: string
            ship_to_country:
              maxLength: 2
              description: Country Code (ISO 3166-1 alpha-2)
              type: string
            invoice_id:
              maxLength: 36
              type: string
            description:
              maxLength: 1000
              type: string
            items:
              type: array
              items:
                type: object
                properties:
                  line_number:
                    type: number
                  material:
                    maxLength: 36
                    type: string
                  name:
                    maxLength: 300
                    type: string
                  description:
                    maxLength: 300
                    type: string
                  upc:
                    type: number
                  quantity:
                    minimum: 0
                    type: number
                  uom:
                    maxLength: 36
                    type: string
                  unit_cost:
                    maximum: 9007199254740991
                    type: integer
                  net_amount:
                    maximum: 9007199254740991
                    type: integer
                  tax_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tip_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  surcharge_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tax_exempt:
                    type: boolean
                  discount_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
            subtotal:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            discount_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            total:
              minimum: 0
              maximum: 9007199254740991
              type: integer
        capture:
          type: boolean
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        payment_rail_types:
          type: array
          items:
            type: string
            enum:
              - card
              - us_bank_ach
              - ca_bank_eft
        reference_id:
          maxLength: 300
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        description:
          maxLength: 1000
          type: string
        customer_id:
          maxLength: 50
          description: >-
            Associate this payment intent with a customer when it does not
            already have one. The customer must have an active link to the
            merchant account. Attempting to change an existing association is
            rejected.
          type: string
      title: PaymentIntentCreatePatchRequestDTO
    def-74:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - payment
        status:
          type: string
          enum:
            - processing
            - pending
            - uncaptured
            - captured
            - cancelled
            - voided
            - failed
            - rejected
        currency:
          type: string
          enum:
            - USD
            - CAD
        billing_details:
          type: object
          properties:
            address:
              type: object
              properties:
                city:
                  type: string
                country:
                  type: string
                state:
                  type: string
                address_line1:
                  type: string
                address_line2:
                  type: string
                postal_code:
                  type: string
            email:
              type: string
            name:
              type: string
            phone:
              type: string
        amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_authorized:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_captured:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_refunded:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_voided:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_disputed:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_reversed:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_rejected:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        cvv:
          type: string
          enum:
            - M
            - 'N'
            - P
            - S
            - U
            - X
            - ''
        avs:
          type: string
          enum:
            - A
            - Z
            - W
            - P
            - 'Y'
            - X
            - F
            - D
            - 'N'
            - R
            - S
            - U
            - G
            - ''
        address_line1_check:
          type: string
          enum:
            - pass
            - fail
            - unavailable
            - unchecked
        address_postal_code_check:
          type: string
          enum:
            - pass
            - fail
            - unavailable
            - unchecked
        cvv_check:
          type: string
          enum:
            - pass
            - fail
            - unavailable
        signature:
          type: object
          properties:
            data:
              type: string
            gzipped:
              type: boolean
            image_type:
              type: string
              enum:
                - binary
                - rgb
            format:
              type: string
              enum:
                - png
                - bmp
                - jpg
            dimensions:
              type: object
              properties:
                width:
                  type: number
                height:
                  type: number
              required:
                - width
                - height
          required:
            - data
        return_code:
          type: string
        return_message:
          type: string
        failure_code:
          type: string
        failure_message:
          type: string
        cancelled_at:
          format: date-time
          type: string
        cancel_reason:
          type: string
        decline_category:
          type: string
        decline_category_text:
          type: string
        emv_tag_data:
          type: string
        entry_mode:
          type: string
          enum:
            - keyed
            - moto
            - ecommerce
            - recurring
            - swipe_non_emv
            - digital_wallet
            - emv_contact
            - contactless
            - fallback_to_track
            - fallback_to_keyed
            - unknown
        reversed:
          type: boolean
        reversal_id:
          type: string
        reversal_expected:
          type: boolean
        disputed:
          type: boolean
        dispute_id:
          type: string
        order_details:
          type: object
          properties:
            card_not_present_type:
              type: string
              enum:
                - ecommerce
                - recurring
            po_number:
              maxLength: 36
              type: string
            tax_exempt:
              type: boolean
            tax_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            tip_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            surcharge_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            freight_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            duty_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            initiated_by:
              type: string
              enum:
                - merchant
                - customer
            is_scheduled_payment:
              type: boolean
            order_date:
              format: date-time
              type: string
            ship_to_zip:
              maxLength: 12
              type: string
            ship_from_zip:
              maxLength: 12
              type: string
            ship_to_country:
              maxLength: 2
              description: Country Code (ISO 3166-1 alpha-2)
              type: string
            invoice_id:
              maxLength: 36
              type: string
            description:
              maxLength: 1000
              type: string
            items:
              type: array
              items:
                type: object
                properties:
                  line_number:
                    type: number
                  material:
                    maxLength: 36
                    type: string
                  name:
                    maxLength: 300
                    type: string
                  description:
                    maxLength: 300
                    type: string
                  upc:
                    type: number
                  quantity:
                    minimum: 0
                    type: number
                  uom:
                    maxLength: 36
                    type: string
                  unit_cost:
                    maximum: 9007199254740991
                    type: integer
                  net_amount:
                    maximum: 9007199254740991
                    type: integer
                  tax_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tip_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  surcharge_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tax_exempt:
                    type: boolean
                  discount_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
            subtotal:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            discount_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            total:
              minimum: 0
              maximum: 9007199254740991
              type: integer
        gateway_response:
          type: object
          properties:
            code:
              type: string
            text:
              type: string
            source:
              type: string
        payment_intent_id:
          type: string
        payment_method_id:
          type: string
        payment_method:
          $ref: '#/components/schemas/def-89'
        customer_id:
          type: string
        payment_rail_type:
          type: string
          enum:
            - card
            - us_bank_ach
            - ca_bank_eft
        payment_provider_type:
          type: string
          enum:
            - cardpointe
            - cross_river
            - grailpay
            - bank_ledger
            - external
        auth_code:
          type: string
        auth_response_text:
          type: string
        external:
          type: boolean
        card_present:
          type: boolean
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
        account_id:
          type: string
        reference_id:
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        description:
          type: string
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        settled_at:
          type: string
      required:
        - id
        - entity
        - status
        - currency
        - amount
        - amount_authorized
        - amount_captured
        - amount_refunded
        - amount_voided
        - amount_disputed
        - amount_reversed
        - amount_rejected
        - payment_intent_id
        - external
        - created_at
        - updated_at
        - account_id
      title: PaymentDTO
    def-78:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              client_secret:
                type: string
              entity:
                type: string
                enum:
                  - payment_intent
              status:
                type: string
                enum:
                  - created
                  - processing
                  - pending
                  - uncaptured
                  - captured
                  - cancelled
                  - failed
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              merchant_amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_authorized:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_captured:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_refunded:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_voided:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_disputed:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_reversed:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_rejected:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              payment_splits:
                type: array
                items:
                  type: object
                  properties:
                    account_id:
                      type: string
                    amount:
                      minimum: 0
                      maximum: 9007199254740991
                      type: integer
                    description:
                      type: string
                  required:
                    - account_id
                    - amount
                    - description
              order_details:
                type: object
                properties:
                  card_not_present_type:
                    type: string
                    enum:
                      - ecommerce
                      - recurring
                  po_number:
                    maxLength: 36
                    type: string
                  tax_exempt:
                    type: boolean
                  tax_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tip_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  surcharge_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  freight_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  duty_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  initiated_by:
                    type: string
                    enum:
                      - merchant
                      - customer
                  is_scheduled_payment:
                    type: boolean
                  order_date:
                    format: date-time
                    type: string
                  ship_to_zip:
                    maxLength: 12
                    type: string
                  ship_from_zip:
                    maxLength: 12
                    type: string
                  ship_to_country:
                    maxLength: 2
                    description: Country Code (ISO 3166-1 alpha-2)
                    type: string
                  invoice_id:
                    maxLength: 36
                    type: string
                  description:
                    maxLength: 1000
                    type: string
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        line_number:
                          type: number
                        material:
                          maxLength: 36
                          type: string
                        name:
                          maxLength: 300
                          type: string
                        description:
                          maxLength: 300
                          type: string
                        upc:
                          type: number
                        quantity:
                          minimum: 0
                          type: number
                        uom:
                          maxLength: 36
                          type: string
                        unit_cost:
                          maximum: 9007199254740991
                          type: integer
                        net_amount:
                          maximum: 9007199254740991
                          type: integer
                        tax_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                        tip_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                        surcharge_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                        tax_exempt:
                          type: boolean
                        discount_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                  subtotal:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  discount_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  total:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
              capture:
                type: boolean
              currency:
                type: string
                enum:
                  - USD
                  - CAD
              latest_payment:
                type: object
                properties:
                  id:
                    type: string
                  entity:
                    type: string
                    enum:
                      - payment
                  status:
                    type: string
                    enum:
                      - processing
                      - pending
                      - uncaptured
                      - captured
                      - cancelled
                      - voided
                      - failed
                      - rejected
                  currency:
                    type: string
                    enum:
                      - USD
                      - CAD
                  billing_details:
                    type: object
                    properties:
                      address:
                        type: object
                        properties:
                          city:
                            type: string
                          country:
                            type: string
                          state:
                            type: string
                          address_line1:
                            type: string
                          address_line2:
                            type: string
                          postal_code:
                            type: string
                      email:
                        type: string
                      name:
                        type: string
                      phone:
                        type: string
                  amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  amount_authorized:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  amount_captured:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  amount_refunded:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  amount_voided:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  amount_disputed:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  amount_reversed:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  amount_rejected:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  cvv:
                    type: string
                    enum:
                      - M
                      - 'N'
                      - P
                      - S
                      - U
                      - X
                      - ''
                  avs:
                    type: string
                    enum:
                      - A
                      - Z
                      - W
                      - P
                      - 'Y'
                      - X
                      - F
                      - D
                      - 'N'
                      - R
                      - S
                      - U
                      - G
                      - ''
                  address_line1_check:
                    type: string
                    enum:
                      - pass
                      - fail
                      - unavailable
                      - unchecked
                  address_postal_code_check:
                    type: string
                    enum:
                      - pass
                      - fail
                      - unavailable
                      - unchecked
                  cvv_check:
                    type: string
                    enum:
                      - pass
                      - fail
                      - unavailable
                  signature:
                    type: object
                    properties:
                      data:
                        type: string
                      gzipped:
                        type: boolean
                      image_type:
                        type: string
                        enum:
                          - binary
                          - rgb
                      format:
                        type: string
                        enum:
                          - png
                          - bmp
                          - jpg
                      dimensions:
                        type: object
                        properties:
                          width:
                            type: number
                          height:
                            type: number
                        required:
                          - width
                          - height
                    required:
                      - data
                  return_code:
                    type: string
                  return_message:
                    type: string
                  failure_code:
                    type: string
                  failure_message:
                    type: string
                  cancelled_at:
                    format: date-time
                    type: string
                  cancel_reason:
                    type: string
                  decline_category:
                    type: string
                  decline_category_text:
                    type: string
                  emv_tag_data:
                    type: string
                  entry_mode:
                    type: string
                    enum:
                      - keyed
                      - moto
                      - ecommerce
                      - recurring
                      - swipe_non_emv
                      - digital_wallet
                      - emv_contact
                      - contactless
                      - fallback_to_track
                      - fallback_to_keyed
                      - unknown
                  reversed:
                    type: boolean
                  reversal_id:
                    type: string
                  reversal_expected:
                    type: boolean
                  disputed:
                    type: boolean
                  dispute_id:
                    type: string
                  order_details:
                    type: object
                    properties:
                      card_not_present_type:
                        type: string
                        enum:
                          - ecommerce
                          - recurring
                      po_number:
                        maxLength: 36
                        type: string
                      tax_exempt:
                        type: boolean
                      tax_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tip_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      surcharge_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      freight_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      duty_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      initiated_by:
                        type: string
                        enum:
                          - merchant
                          - customer
                      is_scheduled_payment:
                        type: boolean
                      order_date:
                        format: date-time
                        type: string
                      ship_to_zip:
                        maxLength: 12
                        type: string
                      ship_from_zip:
                        maxLength: 12
                        type: string
                      ship_to_country:
                        maxLength: 2
                        description: Country Code (ISO 3166-1 alpha-2)
                        type: string
                      invoice_id:
                        maxLength: 36
                        type: string
                      description:
                        maxLength: 1000
                        type: string
                      items:
                        type: array
                        items:
                          type: object
                          properties:
                            line_number:
                              type: number
                            material:
                              maxLength: 36
                              type: string
                            name:
                              maxLength: 300
                              type: string
                            description:
                              maxLength: 300
                              type: string
                            upc:
                              type: number
                            quantity:
                              minimum: 0
                              type: number
                            uom:
                              maxLength: 36
                              type: string
                            unit_cost:
                              maximum: 9007199254740991
                              type: integer
                            net_amount:
                              maximum: 9007199254740991
                              type: integer
                            tax_amount:
                              minimum: 0
                              maximum: 9007199254740991
                              type: integer
                            tip_amount:
                              minimum: 0
                              maximum: 9007199254740991
                              type: integer
                            surcharge_amount:
                              minimum: 0
                              maximum: 9007199254740991
                              type: integer
                            tax_exempt:
                              type: boolean
                            discount_amount:
                              minimum: 0
                              maximum: 9007199254740991
                              type: integer
                      subtotal:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      discount_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      total:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                  gateway_response:
                    type: object
                    properties:
                      code:
                        type: string
                      text:
                        type: string
                      source:
                        type: string
                  payment_intent_id:
                    type: string
                  payment_method_id:
                    type: string
                  payment_method:
                    $ref: '#/components/schemas/def-89'
                  customer_id:
                    type: string
                  payment_rail_type:
                    type: string
                    enum:
                      - card
                      - us_bank_ach
                      - ca_bank_eft
                  payment_provider_type:
                    type: string
                    enum:
                      - cardpointe
                      - cross_river
                      - grailpay
                      - bank_ledger
                      - external
                  auth_code:
                    type: string
                  auth_response_text:
                    type: string
                  external:
                    type: boolean
                  card_present:
                    type: boolean
                  created_at:
                    format: date-time
                    type: string
                  updated_at:
                    format: date-time
                    type: string
                  account_id:
                    type: string
                  reference_id:
                    type: string
                  user_fields:
                    type: object
                    additionalProperties: {}
                  description:
                    type: string
                  settlement_status:
                    type: string
                    enum:
                      - settled
                      - unsettled
                  settled_at:
                    type: string
                required:
                  - id
                  - entity
                  - status
                  - currency
                  - amount
                  - amount_authorized
                  - amount_captured
                  - amount_refunded
                  - amount_voided
                  - amount_disputed
                  - amount_reversed
                  - amount_rejected
                  - payment_intent_id
                  - external
                  - created_at
                  - updated_at
                  - account_id
              disputed:
                type: boolean
              dispute_id:
                type: string
              reversed:
                type: boolean
              reversal_id:
                type: string
              external:
                type: boolean
              partner_id:
                type: string
              business_id:
                type: string
              account_id:
                type: string
              customer_id:
                type: string
              payment_method_types:
                type: array
                items:
                  type: string
                  enum:
                    - card
                    - bank
                    - ca_bank
              payment_rail_types:
                type: array
                items:
                  type: string
                  enum:
                    - card
                    - us_bank_ach
                    - ca_bank_eft
              reference_id:
                type: string
              user_fields:
                type: object
                additionalProperties: {}
              cancellation_reason:
                type: string
              description:
                type: string
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
              cancelled_at:
                format: date-time
                type: string
              captured_at:
                format: date-time
                type: string
              settlement_status:
                type: string
                enum:
                  - settled
                  - unsettled
              settled_at:
                format: date-time
                type: string
            required:
              - id
              - entity
              - status
              - amount
              - amount_authorized
              - amount_captured
              - amount_refunded
              - amount_voided
              - amount_disputed
              - amount_reversed
              - amount_rejected
              - payment_splits
              - capture
              - currency
              - external
              - partner_id
              - business_id
              - account_id
              - created_at
              - updated_at
            title: PaymentIntentDTO
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: PaymentIntentListDTO
    def-79:
      type: object
      properties:
        id:
          type: string
        client_secret:
          type: string
        entity:
          type: string
          enum:
            - payment_intent
        status:
          type: string
          enum:
            - created
            - processing
            - pending
            - uncaptured
            - captured
            - cancelled
            - failed
        amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        merchant_amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_authorized:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_captured:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_refunded:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_voided:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_disputed:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_reversed:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        amount_rejected:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        payment_splits:
          type: array
          items:
            type: object
            properties:
              account_id:
                type: string
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              description:
                type: string
            required:
              - account_id
              - amount
              - description
        order_details:
          type: object
          properties:
            card_not_present_type:
              type: string
              enum:
                - ecommerce
                - recurring
            po_number:
              maxLength: 36
              type: string
            tax_exempt:
              type: boolean
            tax_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            tip_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            surcharge_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            freight_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            duty_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            initiated_by:
              type: string
              enum:
                - merchant
                - customer
            is_scheduled_payment:
              type: boolean
            order_date:
              format: date-time
              type: string
            ship_to_zip:
              maxLength: 12
              type: string
            ship_from_zip:
              maxLength: 12
              type: string
            ship_to_country:
              maxLength: 2
              description: Country Code (ISO 3166-1 alpha-2)
              type: string
            invoice_id:
              maxLength: 36
              type: string
            description:
              maxLength: 1000
              type: string
            items:
              type: array
              items:
                type: object
                properties:
                  line_number:
                    type: number
                  material:
                    maxLength: 36
                    type: string
                  name:
                    maxLength: 300
                    type: string
                  description:
                    maxLength: 300
                    type: string
                  upc:
                    type: number
                  quantity:
                    minimum: 0
                    type: number
                  uom:
                    maxLength: 36
                    type: string
                  unit_cost:
                    maximum: 9007199254740991
                    type: integer
                  net_amount:
                    maximum: 9007199254740991
                    type: integer
                  tax_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tip_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  surcharge_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tax_exempt:
                    type: boolean
                  discount_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
            subtotal:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            discount_amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            total:
              minimum: 0
              maximum: 9007199254740991
              type: integer
        capture:
          type: boolean
        currency:
          type: string
          enum:
            - USD
            - CAD
        latest_payment:
          type: object
          properties:
            id:
              type: string
            entity:
              type: string
              enum:
                - payment
            status:
              type: string
              enum:
                - processing
                - pending
                - uncaptured
                - captured
                - cancelled
                - voided
                - failed
                - rejected
            currency:
              type: string
              enum:
                - USD
                - CAD
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      type: string
                    country:
                      type: string
                    state:
                      type: string
                    address_line1:
                      type: string
                    address_line2:
                      type: string
                    postal_code:
                      type: string
                email:
                  type: string
                name:
                  type: string
                phone:
                  type: string
            amount:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            amount_authorized:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            amount_captured:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            amount_refunded:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            amount_voided:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            amount_disputed:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            amount_reversed:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            amount_rejected:
              minimum: 0
              maximum: 9007199254740991
              type: integer
            cvv:
              type: string
              enum:
                - M
                - 'N'
                - P
                - S
                - U
                - X
                - ''
            avs:
              type: string
              enum:
                - A
                - Z
                - W
                - P
                - 'Y'
                - X
                - F
                - D
                - 'N'
                - R
                - S
                - U
                - G
                - ''
            address_line1_check:
              type: string
              enum:
                - pass
                - fail
                - unavailable
                - unchecked
            address_postal_code_check:
              type: string
              enum:
                - pass
                - fail
                - unavailable
                - unchecked
            cvv_check:
              type: string
              enum:
                - pass
                - fail
                - unavailable
            signature:
              type: object
              properties:
                data:
                  type: string
                gzipped:
                  type: boolean
                image_type:
                  type: string
                  enum:
                    - binary
                    - rgb
                format:
                  type: string
                  enum:
                    - png
                    - bmp
                    - jpg
                dimensions:
                  type: object
                  properties:
                    width:
                      type: number
                    height:
                      type: number
                  required:
                    - width
                    - height
              required:
                - data
            return_code:
              type: string
            return_message:
              type: string
            failure_code:
              type: string
            failure_message:
              type: string
            cancelled_at:
              format: date-time
              type: string
            cancel_reason:
              type: string
            decline_category:
              type: string
            decline_category_text:
              type: string
            emv_tag_data:
              type: string
            entry_mode:
              type: string
              enum:
                - keyed
                - moto
                - ecommerce
                - recurring
                - swipe_non_emv
                - digital_wallet
                - emv_contact
                - contactless
                - fallback_to_track
                - fallback_to_keyed
                - unknown
            reversed:
              type: boolean
            reversal_id:
              type: string
            reversal_expected:
              type: boolean
            disputed:
              type: boolean
            dispute_id:
              type: string
            order_details:
              type: object
              properties:
                card_not_present_type:
                  type: string
                  enum:
                    - ecommerce
                    - recurring
                po_number:
                  maxLength: 36
                  type: string
                tax_exempt:
                  type: boolean
                tax_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                tip_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                surcharge_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                freight_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                duty_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                initiated_by:
                  type: string
                  enum:
                    - merchant
                    - customer
                is_scheduled_payment:
                  type: boolean
                order_date:
                  format: date-time
                  type: string
                ship_to_zip:
                  maxLength: 12
                  type: string
                ship_from_zip:
                  maxLength: 12
                  type: string
                ship_to_country:
                  maxLength: 2
                  description: Country Code (ISO 3166-1 alpha-2)
                  type: string
                invoice_id:
                  maxLength: 36
                  type: string
                description:
                  maxLength: 1000
                  type: string
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      line_number:
                        type: number
                      material:
                        maxLength: 36
                        type: string
                      name:
                        maxLength: 300
                        type: string
                      description:
                        maxLength: 300
                        type: string
                      upc:
                        type: number
                      quantity:
                        minimum: 0
                        type: number
                      uom:
                        maxLength: 36
                        type: string
                      unit_cost:
                        maximum: 9007199254740991
                        type: integer
                      net_amount:
                        maximum: 9007199254740991
                        type: integer
                      tax_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tip_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      surcharge_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                      tax_exempt:
                        type: boolean
                      discount_amount:
                        minimum: 0
                        maximum: 9007199254740991
                        type: integer
                subtotal:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                discount_amount:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
                total:
                  minimum: 0
                  maximum: 9007199254740991
                  type: integer
            gateway_response:
              type: object
              properties:
                code:
                  type: string
                text:
                  type: string
                source:
                  type: string
            payment_intent_id:
              type: string
            payment_method_id:
              type: string
            payment_method:
              $ref: '#/components/schemas/def-89'
            customer_id:
              type: string
            payment_rail_type:
              type: string
              enum:
                - card
                - us_bank_ach
                - ca_bank_eft
            payment_provider_type:
              type: string
              enum:
                - cardpointe
                - cross_river
                - grailpay
                - bank_ledger
                - external
            auth_code:
              type: string
            auth_response_text:
              type: string
            external:
              type: boolean
            card_present:
              type: boolean
            created_at:
              format: date-time
              type: string
            updated_at:
              format: date-time
              type: string
            account_id:
              type: string
            reference_id:
              type: string
            user_fields:
              type: object
              additionalProperties: {}
            description:
              type: string
            settlement_status:
              type: string
              enum:
                - settled
                - unsettled
            settled_at:
              type: string
          required:
            - id
            - entity
            - status
            - currency
            - amount
            - amount_authorized
            - amount_captured
            - amount_refunded
            - amount_voided
            - amount_disputed
            - amount_reversed
            - amount_rejected
            - payment_intent_id
            - external
            - created_at
            - updated_at
            - account_id
        disputed:
          type: boolean
        dispute_id:
          type: string
        reversed:
          type: boolean
        reversal_id:
          type: string
        external:
          type: boolean
        partner_id:
          type: string
        business_id:
          type: string
        account_id:
          type: string
        customer_id:
          type: string
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        payment_rail_types:
          type: array
          items:
            type: string
            enum:
              - card
              - us_bank_ach
              - ca_bank_eft
        reference_id:
          type: string
        user_fields:
          type: object
          additionalProperties: {}
        cancellation_reason:
          type: string
        description:
          type: string
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
        cancelled_at:
          format: date-time
          type: string
        captured_at:
          format: date-time
          type: string
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        settled_at:
          format: date-time
          type: string
      required:
        - id
        - entity
        - status
        - amount
        - amount_authorized
        - amount_captured
        - amount_refunded
        - amount_voided
        - amount_disputed
        - amount_reversed
        - amount_rejected
        - payment_splits
        - capture
        - currency
        - external
        - partner_id
        - business_id
        - account_id
        - created_at
        - updated_at
      title: PaymentIntentDTO
    def-80:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/def-79'
        meta:
          $ref: '#/components/schemas/def-83'
      required:
        - data
        - meta
      title: PaymentIntentListPageDTO
    def-83:
      type: object
      properties:
        limit:
          type: integer
        page:
          type: integer
        sort_column:
          anyOf:
            - type: string
              enum:
                - amount
            - type: string
              enum:
                - amount_captured
            - type: string
              enum:
                - amount_refunded
            - type: string
              enum:
                - amount_authorized
            - type: string
              enum:
                - amount_voided
            - type: string
              enum:
                - updated_at
            - type: string
              enum:
                - status
        sort_direction:
          type: string
          enum:
            - asc
            - desc
        reference_id:
          type: string
        status:
          type: string
          enum:
            - created
            - processing
            - pending
            - uncaptured
            - captured
            - cancelled
            - failed
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        payment_status:
          type: string
          enum:
            - processing
            - pending
            - uncaptured
            - captured
            - cancelled
            - voided
            - failed
            - rejected
        has_refund:
          type: boolean
        start_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        end_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        amount_min:
          type: integer
        amount_max:
          type: integer
      title: PaymentIntentSearchListPageMetaDTO
    def-84:
      type: object
      properties:
        reference_id:
          type: string
        status:
          type: string
          enum:
            - created
            - processing
            - pending
            - uncaptured
            - captured
            - cancelled
            - failed
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        payment_status:
          type: string
          enum:
            - processing
            - pending
            - uncaptured
            - captured
            - cancelled
            - voided
            - failed
            - rejected
        has_refund:
          type: boolean
        start_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        end_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        amount_min:
          type: integer
        amount_max:
          type: integer
        sort_column:
          anyOf:
            - type: string
              enum:
                - amount
            - type: string
              enum:
                - amount_captured
            - type: string
              enum:
                - amount_refunded
            - type: string
              enum:
                - amount_authorized
            - type: string
              enum:
                - amount_voided
            - type: string
              enum:
                - updated_at
            - type: string
              enum:
                - status
        sort_direction:
          type: string
          enum:
            - asc
            - desc
        limit:
          type: integer
        page:
          type: integer
      title: PaymentIntentSearchRequestDTO
    def-86:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              entity:
                type: string
                enum:
                  - payment
              status:
                type: string
                enum:
                  - processing
                  - pending
                  - uncaptured
                  - captured
                  - cancelled
                  - voided
                  - failed
                  - rejected
              currency:
                type: string
                enum:
                  - USD
                  - CAD
              billing_details:
                type: object
                properties:
                  address:
                    type: object
                    properties:
                      city:
                        type: string
                      country:
                        type: string
                      state:
                        type: string
                      address_line1:
                        type: string
                      address_line2:
                        type: string
                      postal_code:
                        type: string
                  email:
                    type: string
                  name:
                    type: string
                  phone:
                    type: string
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_authorized:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_captured:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_refunded:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_voided:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_disputed:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_reversed:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              amount_rejected:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              cvv:
                type: string
                enum:
                  - M
                  - 'N'
                  - P
                  - S
                  - U
                  - X
                  - ''
              avs:
                type: string
                enum:
                  - A
                  - Z
                  - W
                  - P
                  - 'Y'
                  - X
                  - F
                  - D
                  - 'N'
                  - R
                  - S
                  - U
                  - G
                  - ''
              address_line1_check:
                type: string
                enum:
                  - pass
                  - fail
                  - unavailable
                  - unchecked
              address_postal_code_check:
                type: string
                enum:
                  - pass
                  - fail
                  - unavailable
                  - unchecked
              cvv_check:
                type: string
                enum:
                  - pass
                  - fail
                  - unavailable
              signature:
                type: object
                properties:
                  data:
                    type: string
                  gzipped:
                    type: boolean
                  image_type:
                    type: string
                    enum:
                      - binary
                      - rgb
                  format:
                    type: string
                    enum:
                      - png
                      - bmp
                      - jpg
                  dimensions:
                    type: object
                    properties:
                      width:
                        type: number
                      height:
                        type: number
                    required:
                      - width
                      - height
                required:
                  - data
              return_code:
                type: string
              return_message:
                type: string
              failure_code:
                type: string
              failure_message:
                type: string
              cancelled_at:
                format: date-time
                type: string
              cancel_reason:
                type: string
              decline_category:
                type: string
              decline_category_text:
                type: string
              emv_tag_data:
                type: string
              entry_mode:
                type: string
                enum:
                  - keyed
                  - moto
                  - ecommerce
                  - recurring
                  - swipe_non_emv
                  - digital_wallet
                  - emv_contact
                  - contactless
                  - fallback_to_track
                  - fallback_to_keyed
                  - unknown
              reversed:
                type: boolean
              reversal_id:
                type: string
              reversal_expected:
                type: boolean
              disputed:
                type: boolean
              dispute_id:
                type: string
              order_details:
                type: object
                properties:
                  card_not_present_type:
                    type: string
                    enum:
                      - ecommerce
                      - recurring
                  po_number:
                    maxLength: 36
                    type: string
                  tax_exempt:
                    type: boolean
                  tax_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  tip_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  surcharge_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  freight_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  duty_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  initiated_by:
                    type: string
                    enum:
                      - merchant
                      - customer
                  is_scheduled_payment:
                    type: boolean
                  order_date:
                    format: date-time
                    type: string
                  ship_to_zip:
                    maxLength: 12
                    type: string
                  ship_from_zip:
                    maxLength: 12
                    type: string
                  ship_to_country:
                    maxLength: 2
                    description: Country Code (ISO 3166-1 alpha-2)
                    type: string
                  invoice_id:
                    maxLength: 36
                    type: string
                  description:
                    maxLength: 1000
                    type: string
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        line_number:
                          type: number
                        material:
                          maxLength: 36
                          type: string
                        name:
                          maxLength: 300
                          type: string
                        description:
                          maxLength: 300
                          type: string
                        upc:
                          type: number
                        quantity:
                          minimum: 0
                          type: number
                        uom:
                          maxLength: 36
                          type: string
                        unit_cost:
                          maximum: 9007199254740991
                          type: integer
                        net_amount:
                          maximum: 9007199254740991
                          type: integer
                        tax_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                        tip_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                        surcharge_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                        tax_exempt:
                          type: boolean
                        discount_amount:
                          minimum: 0
                          maximum: 9007199254740991
                          type: integer
                  subtotal:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  discount_amount:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
                  total:
                    minimum: 0
                    maximum: 9007199254740991
                    type: integer
              gateway_response:
                type: object
                properties:
                  code:
                    type: string
                  text:
                    type: string
                  source:
                    type: string
              payment_intent_id:
                type: string
              payment_method_id:
                type: string
              payment_method:
                $ref: '#/components/schemas/def-89'
              customer_id:
                type: string
              payment_rail_type:
                type: string
                enum:
                  - card
                  - us_bank_ach
                  - ca_bank_eft
              payment_provider_type:
                type: string
                enum:
                  - cardpointe
                  - cross_river
                  - grailpay
                  - bank_ledger
                  - external
              auth_code:
                type: string
              auth_response_text:
                type: string
              external:
                type: boolean
              card_present:
                type: boolean
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
              account_id:
                type: string
              reference_id:
                type: string
              user_fields:
                type: object
                additionalProperties: {}
              description:
                type: string
              settlement_status:
                type: string
                enum:
                  - settled
                  - unsettled
              settled_at:
                type: string
            required:
              - id
              - entity
              - status
              - currency
              - amount
              - amount_authorized
              - amount_captured
              - amount_refunded
              - amount_voided
              - amount_disputed
              - amount_reversed
              - amount_rejected
              - payment_intent_id
              - external
              - created_at
              - updated_at
              - account_id
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: PaymentListDTO
    def-88:
      type: object
      properties:
        billing_details:
          type: object
          properties:
            address:
              type: object
              properties:
                city:
                  maxLength: 100
                  type: string
                country:
                  maxLength: 4
                  type: string
                state:
                  maxLength: 100
                  type: string
                address_line1:
                  maxLength: 200
                  type: string
                address_line2:
                  maxLength: 200
                  type: string
                postal_code:
                  anyOf:
                    - type: 'null'
                    - maxLength: 12
                      type: string
            email:
              maxLength: 255
              type: string
            name:
              maxLength: 200
              type: string
            phone:
              maxLength: 50
              type: string
        card:
          type: object
          properties:
            exp_month:
              pattern: ^(0?[1-9]|1[012])$
              type: string
            exp_year:
              pattern: ^(\d{2}|\d{4})$
              type: string
        meta_data:
          type: object
          additionalProperties: {}
      title: PaymentMethodUpdateRequestDTO
    def-89:
      anyOf:
        - type: object
          properties:
            id:
              type: string
            entity:
              type: string
              enum:
                - payment_method
            account_id:
              type: string
            created_at:
              format: date-time
              type: string
            updated_at:
              format: date-time
              type: string
            payment_method_type:
              type: string
              enum:
                - card
            source_type:
              type: string
              enum:
                - cardpointe
                - external
                - none
                - plaid
                - grailpay
                - vault
                - vgs
            customer_id:
              type: string
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      type: string
                    country:
                      type: string
                    state:
                      type: string
                    address_line1:
                      type: string
                    address_line2:
                      type: string
                    postal_code:
                      type: string
                email:
                  type: string
                name:
                  type: string
                phone:
                  type: string
            payment_method_intent_id:
              type: string
            payment_intent_id:
              type: string
            checkout_session_id:
              type: string
            single_use_token:
              type: boolean
            signature:
              type: string
            status:
              type: string
              enum:
                - active
                - closed
            attention_required:
              type: string
              enum:
                - contact_cardholder
            cau_enrolled:
              type: boolean
            cau_enrollment_status:
              type: string
              enum:
                - not_enrolled
                - enrollment_pending
                - enrolled
                - enrollment_failed
              description: >-
                Card Account Updater enrollment lifecycle. `enrolled` is only
                set once VGS confirms the enrollment; `enrollment_failed`
                carries the reason in `cau_enrollment_messages`.
            cau_enrollment_messages:
              type: array
              items:
                type: string
            cau_last_updated_at:
              format: date-time
              type: string
            card:
              type: object
              properties:
                last_four_digits:
                  type: string
                first_six_digits:
                  type: string
                bin:
                  type: string
                brand:
                  type: string
                  enum:
                    - visa
                    - mastercard
                    - american_express
                    - discover
                exp_month:
                  type: string
                exp_year:
                  type: string
                wallet:
                  type: string
                  enum:
                    - apple_pay
                    - google_pay
                entry_mode:
                  type: string
                  enum:
                    - keyed
                    - moto
                    - ecommerce
                    - recurring
                    - swipe_non_emv
                    - digital_wallet
                    - emv_contact
                    - contactless
                    - fallback_to_track
                    - fallback_to_keyed
                    - unknown
                from_terminal:
                  type: boolean
                device_serial_number:
                  type: string
                reuse_eligible:
                  type: boolean
                card_type:
                  type: string
                  enum:
                    - credit
                    - debit
                    - unknown
                card_attributes:
                  type: object
                  properties:
                    prepaid:
                      type: boolean
                    hsa:
                      type: boolean
                    fsa:
                      type: boolean
                    corporate:
                      type: boolean
                    country:
                      type: string
              required:
                - last_four_digits
                - brand
            meta_data:
              type: object
              additionalProperties: {}
            validation_response:
              type: object
              properties:
                status:
                  type: string
                  enum:
                    - succeeded
                    - failed
                message:
                  type: string
                created_at:
                  type: string
                auth_code:
                  type: string
                token:
                  type: string
                gateway_response:
                  type: object
                  properties:
                    code:
                      type: string
                    text:
                      type: string
                    source:
                      type: string
                decline_category:
                  type: string
                decline_category_text:
                  type: string
              required:
                - status
                - message
                - created_at
          required:
            - id
            - entity
            - created_at
            - updated_at
            - payment_method_type
            - source_type
            - card
        - type: object
          properties:
            id:
              type: string
            entity:
              type: string
              enum:
                - payment_method
            account_id:
              type: string
            created_at:
              format: date-time
              type: string
            updated_at:
              format: date-time
              type: string
            payment_method_type:
              type: string
              enum:
                - bank
            source_type:
              type: string
              enum:
                - cardpointe
                - external
                - none
                - plaid
                - grailpay
                - vault
                - vgs
            customer_id:
              type: string
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      type: string
                    country:
                      type: string
                    state:
                      type: string
                    address_line1:
                      type: string
                    address_line2:
                      type: string
                    postal_code:
                      type: string
                email:
                  type: string
                name:
                  type: string
                phone:
                  type: string
            payment_intent_id:
              type: string
            payment_method_intent_id:
              type: string
            checkout_session_id:
              type: string
            single_use_token:
              type: boolean
            signature:
              type: string
            status:
              type: string
              enum:
                - active
                - closed
            attention_required:
              type: string
              enum:
                - contact_cardholder
            bank:
              type: object
              properties:
                masked_account:
                  type: string
                masked_routing:
                  type: string
                masked_institution:
                  type: string
                masked_transit:
                  type: string
                owner_type:
                  type: string
                  enum:
                    - individual
                    - business
                account_id:
                  type: string
                subtype:
                  type: string
                name:
                  type: string
                official_name:
                  type: string
                type:
                  type: string
                account_name:
                  type: string
                country:
                  type: string
                  enum:
                    - US
                    - CA
                pad_agreement:
                  type: object
                  properties:
                    accepted_at:
                      format: date-time
                      type: string
                    ip:
                      type: string
                    agreement_sent_at:
                      format: date-time
                      type: string
                    agreement:
                      maxLength: 5000
                      type: string
                  required:
                    - accepted_at
                    - ip
                    - agreement
            meta_data:
              type: object
              additionalProperties: {}
            validation_response:
              type: object
              properties:
                status:
                  type: string
                  enum:
                    - succeeded
                    - failed
                message:
                  type: string
                created_at:
                  type: string
                auth_code:
                  type: string
                token:
                  type: string
                gateway_response:
                  type: object
                  properties:
                    code:
                      type: string
                    text:
                      type: string
                    source:
                      type: string
                decline_category:
                  type: string
                decline_category_text:
                  type: string
              required:
                - status
                - message
                - created_at
          required:
            - id
            - entity
            - created_at
            - updated_at
            - payment_method_type
            - source_type
            - bank
        - type: object
          properties:
            id:
              type: string
            entity:
              type: string
              enum:
                - payment_method
            account_id:
              type: string
            created_at:
              format: date-time
              type: string
            updated_at:
              format: date-time
              type: string
            payment_method_type:
              type: string
              enum:
                - ca_bank
            customer_id:
              type: string
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      type: string
                    country:
                      type: string
                    state:
                      type: string
                    address_line1:
                      type: string
                    address_line2:
                      type: string
                    postal_code:
                      type: string
                email:
                  type: string
                name:
                  type: string
                phone:
                  type: string
            payment_intent_id:
              type: string
            payment_method_intent_id:
              type: string
            checkout_session_id:
              type: string
            single_use_token:
              type: boolean
            signature:
              type: string
            status:
              type: string
              enum:
                - active
                - closed
            attention_required:
              type: string
              enum:
                - contact_cardholder
            bank:
              type: object
              properties:
                masked_account:
                  type: string
                masked_routing:
                  type: string
                masked_institution:
                  type: string
                masked_transit:
                  type: string
                owner_type:
                  type: string
                  enum:
                    - individual
                    - business
                account_id:
                  type: string
                subtype:
                  type: string
                name:
                  type: string
                official_name:
                  type: string
                type:
                  type: string
                account_name:
                  type: string
                country:
                  type: string
                  enum:
                    - US
                    - CA
                pad_agreement:
                  type: object
                  properties:
                    accepted_at:
                      format: date-time
                      type: string
                    ip:
                      type: string
                    agreement_sent_at:
                      format: date-time
                      type: string
                    agreement:
                      maxLength: 5000
                      type: string
                  required:
                    - accepted_at
                    - ip
                    - agreement
            meta_data:
              type: object
              additionalProperties: {}
            validation_response:
              type: object
              properties:
                status:
                  type: string
                  enum:
                    - succeeded
                    - failed
                message:
                  type: string
                created_at:
                  type: string
                auth_code:
                  type: string
                token:
                  type: string
                gateway_response:
                  type: object
                  properties:
                    code:
                      type: string
                    text:
                      type: string
                    source:
                      type: string
                decline_category:
                  type: string
                decline_category_text:
                  type: string
              required:
                - status
                - message
                - created_at
          required:
            - id
            - entity
            - created_at
            - updated_at
            - payment_method_type
            - bank
      title: PaymentMethodDTO
    def-98:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - payout
        status:
          anyOf:
            - type: string
              enum:
                - created
            - type: string
              enum:
                - held
            - type: string
              enum:
                - staged
            - type: string
              enum:
                - pending
            - type: string
              enum:
                - completed
            - type: string
              enum:
                - returned
            - type: string
              enum:
                - cancelled
            - type: string
              enum:
                - failed
        payout_number:
          type: integer
        transaction_count:
          type: integer
        transaction_summary:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - dispute
                  - fee
                  - fee_refund
                  - funding
                  - payment
                  - payment_method
                  - payout
                  - refund
                  - refund_failure
                  - transfer
                  - reversal
                  - transaction
              count:
                type: integer
              amount:
                maximum: 9007199254740991
                type: integer
            required:
              - type
              - count
              - amount
        amount:
          maximum: 9007199254740991
          type: integer
        net_amount:
          maximum: 9007199254740991
          type: integer
        fee_amount:
          maximum: 9007199254740991
          type: integer
        batch_fee:
          maximum: 9007199254740991
          type: integer
        reject_fee:
          maximum: 9007199254740991
          type: integer
        latest_payment_data:
          anyOf:
            - type: object
              properties:
                id:
                  type: string
                trace_number:
                  type: string
                service_type:
                  type: string
                  enum:
                    - standard
                    - same_day
                description:
                  type: string
                bank_account_number_mask:
                  type: string
                bank_account_type:
                  type: string
                  enum:
                    - checking
                    - savings
                bank_account_id:
                  type: string
                status:
                  type: string
                  enum:
                    - created
                    - pending
                    - hold
                    - batched
                    - processing
                    - completed
                    - rejected
                    - canceled
                    - blocked
                    - failed
                    - reversed
                    - returned
                payment_type:
                  type: string
                  enum:
                    - origination
                    - return
                    - dishonored_return
                    - contested_return
                    - noc
                    - refused_noc
                direction:
                  type: string
                  enum:
                    - inbound
                    - outbound
                reason_code:
                  type: string
                reason_data:
                  type: string
                updated_at:
                  format: date-time
                  type: string
                type:
                  type: string
                  enum:
                    - cross_river_bank
                reference_id:
                  type: string
                sec_code:
                  type: string
              required:
                - id
                - service_type
                - description
                - bank_account_type
                - status
                - payment_type
                - direction
                - updated_at
                - type
                - sec_code
            - type: object
              properties:
                id:
                  type: string
                trace_number:
                  type: string
                service_type:
                  type: string
                  enum:
                    - standard
                    - same_day
                description:
                  type: string
                bank_account_number_mask:
                  type: string
                bank_account_type:
                  type: string
                  enum:
                    - checking
                    - savings
                bank_account_id:
                  type: string
                status:
                  type: string
                  enum:
                    - created
                    - pending
                    - hold
                    - batched
                    - processing
                    - completed
                    - rejected
                    - canceled
                    - blocked
                    - failed
                    - reversed
                    - returned
                    - disputed
                payment_type:
                  type: string
                  enum:
                    - origination
                    - return
                direction:
                  type: string
                  enum:
                    - inbound
                    - outbound
                reason_code:
                  type: string
                reason_data:
                  type: string
                updated_at:
                  format: date-time
                  type: string
                type:
                  type: string
                  enum:
                    - scotia
                reference_id:
                  type: string
                sec_code:
                  type: string
              required:
                - id
                - description
                - bank_account_type
                - status
                - payment_type
                - direction
                - updated_at
                - type
                - sec_code
        payment_data:
          type: array
          items:
            anyOf:
              - type: object
                properties:
                  id:
                    type: string
                  trace_number:
                    type: string
                  service_type:
                    type: string
                    enum:
                      - standard
                      - same_day
                  description:
                    type: string
                  bank_account_number_mask:
                    type: string
                  bank_account_type:
                    type: string
                    enum:
                      - checking
                      - savings
                  bank_account_id:
                    type: string
                  status:
                    type: string
                    enum:
                      - created
                      - pending
                      - hold
                      - batched
                      - processing
                      - completed
                      - rejected
                      - canceled
                      - blocked
                      - failed
                      - reversed
                      - returned
                  payment_type:
                    type: string
                    enum:
                      - origination
                      - return
                      - dishonored_return
                      - contested_return
                      - noc
                      - refused_noc
                  direction:
                    type: string
                    enum:
                      - inbound
                      - outbound
                  reason_code:
                    type: string
                  reason_data:
                    type: string
                  updated_at:
                    format: date-time
                    type: string
                  type:
                    type: string
                    enum:
                      - cross_river_bank
                  reference_id:
                    type: string
                  sec_code:
                    type: string
                required:
                  - id
                  - service_type
                  - description
                  - bank_account_type
                  - status
                  - payment_type
                  - direction
                  - updated_at
                  - type
                  - sec_code
              - type: object
                properties:
                  id:
                    type: string
                  trace_number:
                    type: string
                  service_type:
                    type: string
                    enum:
                      - standard
                      - same_day
                  description:
                    type: string
                  bank_account_number_mask:
                    type: string
                  bank_account_type:
                    type: string
                    enum:
                      - checking
                      - savings
                  bank_account_id:
                    type: string
                  status:
                    type: string
                    enum:
                      - created
                      - pending
                      - hold
                      - batched
                      - processing
                      - completed
                      - rejected
                      - canceled
                      - blocked
                      - failed
                      - reversed
                      - returned
                      - disputed
                  payment_type:
                    type: string
                    enum:
                      - origination
                      - return
                  direction:
                    type: string
                    enum:
                      - inbound
                      - outbound
                  reason_code:
                    type: string
                  reason_data:
                    type: string
                  updated_at:
                    format: date-time
                    type: string
                  type:
                    type: string
                    enum:
                      - scotia
                  reference_id:
                    type: string
                  sec_code:
                    type: string
                required:
                  - id
                  - description
                  - bank_account_type
                  - status
                  - payment_type
                  - direction
                  - updated_at
                  - type
                  - sec_code
        payment_attempt_count:
          type: integer
        payment_reject_count:
          type: integer
        owner_type:
          type: string
          enum:
            - account
            - contractor
            - tenant
            - partner
        owner_id:
          type: string
        ledger_type:
          type: string
          enum:
            - operating
            - funding
        currency:
          type: string
          enum:
            - USD
            - CAD
        business_id:
          type: string
        batch_window:
          type: object
          properties:
            window_start:
              format: date-time
              type: string
            window_end:
              format: date-time
              type: string
            delay_until:
              format: date-time
              type: string
            size:
              type: integer
            size_type:
              anyOf:
                - type: string
                  enum:
                    - day
                - type: string
                  enum:
                    - week
            strict:
              type: boolean
          required:
            - window_start
            - window_end
            - delay_until
            - size
            - size_type
            - strict
        gross_funding_type:
          type: string
          enum:
            - fee_activity
            - processing_activity
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        settled_at:
          format: date-time
          type: string
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
        completed_at:
          format: date-time
          type: string
        returned_at:
          format: date-time
          type: string
      required:
        - id
        - entity
        - status
        - payout_number
        - transaction_count
        - amount
        - net_amount
        - fee_amount
        - batch_fee
        - reject_fee
        - payment_attempt_count
        - payment_reject_count
        - owner_type
        - owner_id
        - ledger_type
        - currency
        - created_at
        - updated_at
      title: PayoutDTO
    def-100:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              entity:
                type: string
                enum:
                  - payout
              status:
                anyOf:
                  - type: string
                    enum:
                      - created
                  - type: string
                    enum:
                      - held
                  - type: string
                    enum:
                      - staged
                  - type: string
                    enum:
                      - pending
                  - type: string
                    enum:
                      - completed
                  - type: string
                    enum:
                      - returned
                  - type: string
                    enum:
                      - cancelled
                  - type: string
                    enum:
                      - failed
              payout_number:
                type: integer
              transaction_count:
                type: integer
              transaction_summary:
                type: array
                items:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - dispute
                        - fee
                        - fee_refund
                        - funding
                        - payment
                        - payment_method
                        - payout
                        - refund
                        - refund_failure
                        - transfer
                        - reversal
                        - transaction
                    count:
                      type: integer
                    amount:
                      maximum: 9007199254740991
                      type: integer
                  required:
                    - type
                    - count
                    - amount
              amount:
                maximum: 9007199254740991
                type: integer
              net_amount:
                maximum: 9007199254740991
                type: integer
              fee_amount:
                maximum: 9007199254740991
                type: integer
              batch_fee:
                maximum: 9007199254740991
                type: integer
              reject_fee:
                maximum: 9007199254740991
                type: integer
              latest_payment_data:
                anyOf:
                  - type: object
                    properties:
                      id:
                        type: string
                      trace_number:
                        type: string
                      service_type:
                        type: string
                        enum:
                          - standard
                          - same_day
                      description:
                        type: string
                      bank_account_number_mask:
                        type: string
                      bank_account_type:
                        type: string
                        enum:
                          - checking
                          - savings
                      bank_account_id:
                        type: string
                      status:
                        type: string
                        enum:
                          - created
                          - pending
                          - hold
                          - batched
                          - processing
                          - completed
                          - rejected
                          - canceled
                          - blocked
                          - failed
                          - reversed
                          - returned
                      payment_type:
                        type: string
                        enum:
                          - origination
                          - return
                          - dishonored_return
                          - contested_return
                          - noc
                          - refused_noc
                      direction:
                        type: string
                        enum:
                          - inbound
                          - outbound
                      reason_code:
                        type: string
                      reason_data:
                        type: string
                      updated_at:
                        format: date-time
                        type: string
                      type:
                        type: string
                        enum:
                          - cross_river_bank
                      reference_id:
                        type: string
                      sec_code:
                        type: string
                    required:
                      - id
                      - service_type
                      - description
                      - bank_account_type
                      - status
                      - payment_type
                      - direction
                      - updated_at
                      - type
                      - sec_code
                  - type: object
                    properties:
                      id:
                        type: string
                      trace_number:
                        type: string
                      service_type:
                        type: string
                        enum:
                          - standard
                          - same_day
                      description:
                        type: string
                      bank_account_number_mask:
                        type: string
                      bank_account_type:
                        type: string
                        enum:
                          - checking
                          - savings
                      bank_account_id:
                        type: string
                      status:
                        type: string
                        enum:
                          - created
                          - pending
                          - hold
                          - batched
                          - processing
                          - completed
                          - rejected
                          - canceled
                          - blocked
                          - failed
                          - reversed
                          - returned
                          - disputed
                      payment_type:
                        type: string
                        enum:
                          - origination
                          - return
                      direction:
                        type: string
                        enum:
                          - inbound
                          - outbound
                      reason_code:
                        type: string
                      reason_data:
                        type: string
                      updated_at:
                        format: date-time
                        type: string
                      type:
                        type: string
                        enum:
                          - scotia
                      reference_id:
                        type: string
                      sec_code:
                        type: string
                    required:
                      - id
                      - description
                      - bank_account_type
                      - status
                      - payment_type
                      - direction
                      - updated_at
                      - type
                      - sec_code
              payment_data:
                type: array
                items:
                  anyOf:
                    - type: object
                      properties:
                        id:
                          type: string
                        trace_number:
                          type: string
                        service_type:
                          type: string
                          enum:
                            - standard
                            - same_day
                        description:
                          type: string
                        bank_account_number_mask:
                          type: string
                        bank_account_type:
                          type: string
                          enum:
                            - checking
                            - savings
                        bank_account_id:
                          type: string
                        status:
                          type: string
                          enum:
                            - created
                            - pending
                            - hold
                            - batched
                            - processing
                            - completed
                            - rejected
                            - canceled
                            - blocked
                            - failed
                            - reversed
                            - returned
                        payment_type:
                          type: string
                          enum:
                            - origination
                            - return
                            - dishonored_return
                            - contested_return
                            - noc
                            - refused_noc
                        direction:
                          type: string
                          enum:
                            - inbound
                            - outbound
                        reason_code:
                          type: string
                        reason_data:
                          type: string
                        updated_at:
                          format: date-time
                          type: string
                        type:
                          type: string
                          enum:
                            - cross_river_bank
                        reference_id:
                          type: string
                        sec_code:
                          type: string
                      required:
                        - id
                        - service_type
                        - description
                        - bank_account_type
                        - status
                        - payment_type
                        - direction
                        - updated_at
                        - type
                        - sec_code
                    - type: object
                      properties:
                        id:
                          type: string
                        trace_number:
                          type: string
                        service_type:
                          type: string
                          enum:
                            - standard
                            - same_day
                        description:
                          type: string
                        bank_account_number_mask:
                          type: string
                        bank_account_type:
                          type: string
                          enum:
                            - checking
                            - savings
                        bank_account_id:
                          type: string
                        status:
                          type: string
                          enum:
                            - created
                            - pending
                            - hold
                            - batched
                            - processing
                            - completed
                            - rejected
                            - canceled
                            - blocked
                            - failed
                            - reversed
                            - returned
                            - disputed
                        payment_type:
                          type: string
                          enum:
                            - origination
                            - return
                        direction:
                          type: string
                          enum:
                            - inbound
                            - outbound
                        reason_code:
                          type: string
                        reason_data:
                          type: string
                        updated_at:
                          format: date-time
                          type: string
                        type:
                          type: string
                          enum:
                            - scotia
                        reference_id:
                          type: string
                        sec_code:
                          type: string
                      required:
                        - id
                        - description
                        - bank_account_type
                        - status
                        - payment_type
                        - direction
                        - updated_at
                        - type
                        - sec_code
              payment_attempt_count:
                type: integer
              payment_reject_count:
                type: integer
              owner_type:
                type: string
                enum:
                  - account
                  - contractor
                  - tenant
                  - partner
              owner_id:
                type: string
              ledger_type:
                type: string
                enum:
                  - operating
                  - funding
              currency:
                type: string
                enum:
                  - USD
                  - CAD
              business_id:
                type: string
              batch_window:
                type: object
                properties:
                  window_start:
                    format: date-time
                    type: string
                  window_end:
                    format: date-time
                    type: string
                  delay_until:
                    format: date-time
                    type: string
                  size:
                    type: integer
                  size_type:
                    anyOf:
                      - type: string
                        enum:
                          - day
                      - type: string
                        enum:
                          - week
                  strict:
                    type: boolean
                required:
                  - window_start
                  - window_end
                  - delay_until
                  - size
                  - size_type
                  - strict
              gross_funding_type:
                type: string
                enum:
                  - fee_activity
                  - processing_activity
              settlement_status:
                type: string
                enum:
                  - settled
                  - unsettled
              settled_at:
                format: date-time
                type: string
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
              completed_at:
                format: date-time
                type: string
              returned_at:
                format: date-time
                type: string
            required:
              - id
              - entity
              - status
              - payout_number
              - transaction_count
              - amount
              - net_amount
              - fee_amount
              - batch_fee
              - reject_fee
              - payment_attempt_count
              - payment_reject_count
              - owner_type
              - owner_id
              - ledger_type
              - currency
              - created_at
              - updated_at
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: PayoutListDTO
    def-103:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - refund
        status:
          type: string
          enum:
            - processing
            - pending
            - succeeded
            - failed
            - cancelled
        currency:
          type: string
          enum:
            - USD
            - CAD
        external:
          type: boolean
        amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        account_id:
          type: string
        payment_id:
          type: string
        refund_splits:
          type: array
          items:
            type: object
            properties:
              account_id:
                type: string
              amount:
                minimum: 0
                maximum: 9007199254740991
                type: integer
              description:
                type: string
            required:
              - account_id
              - amount
              - description
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        settled_at:
          type: string
      required:
        - id
        - entity
        - status
        - currency
        - external
        - amount
        - account_id
        - payment_id
        - created_at
        - updated_at
      title: RefundDTO
    def-115:
      type: object
      properties:
        currency:
          type: string
          enum:
            - USD
            - CAD
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              entity:
                type: string
                enum:
                  - transaction
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
              ledger_account_id:
                type: string
              payout_id:
                type: string
              bank_transfer_id:
                type: string
              source_type:
                type: string
                enum:
                  - dispute
                  - fee
                  - fee_refund
                  - funding
                  - payment
                  - payment_method
                  - payout
                  - refund
                  - refund_failure
                  - transfer
                  - reversal
                  - transaction
              source_id:
                type: string
              source_account_id:
                type: string
              root_source_id:
                type: string
              root_source_type:
                type: string
                enum:
                  - adjustment
                  - dispute
                  - fee
                  - fee_refund
                  - funding
                  - payment
                  - payment_method
                  - payment_refund
                  - payout
                  - refund
                  - refund_failure
                  - transfer
                  - transfer_refund
                  - reversal
                  - unmatched_settlement
              amount:
                maximum: 9007199254740991
                type: integer
              currency:
                type: string
                enum:
                  - USD
                  - CAD
              settlement_id:
                type: string
              settlement_status:
                type: string
                enum:
                  - settled
                  - unsettled
              settled_at:
                type: string
              description:
                type: string
              historical_bank_transfer_ids:
                type: array
                items:
                  type: string
              historical_payout_ids:
                type: array
                items:
                  type: string
            required:
              - id
              - entity
              - created_at
              - updated_at
              - ledger_account_id
              - source_type
              - source_id
              - amount
              - currency
            title: TransactionDTO
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: TransactionListDTO
    def-116:
      type: object
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
            - transaction
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
        ledger_account_id:
          type: string
        payout_id:
          type: string
        bank_transfer_id:
          type: string
        source_type:
          type: string
          enum:
            - dispute
            - fee
            - fee_refund
            - funding
            - payment
            - payment_method
            - payout
            - refund
            - refund_failure
            - transfer
            - reversal
            - transaction
        source_id:
          type: string
        source_account_id:
          type: string
        root_source_id:
          type: string
        root_source_type:
          type: string
          enum:
            - adjustment
            - dispute
            - fee
            - fee_refund
            - funding
            - payment
            - payment_method
            - payment_refund
            - payout
            - refund
            - refund_failure
            - transfer
            - transfer_refund
            - reversal
            - unmatched_settlement
        amount:
          maximum: 9007199254740991
          type: integer
        currency:
          type: string
          enum:
            - USD
            - CAD
        settlement_id:
          type: string
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        settled_at:
          type: string
        description:
          type: string
        historical_bank_transfer_ids:
          type: array
          items:
            type: string
        historical_payout_ids:
          type: array
          items:
            type: string
      required:
        - id
        - entity
        - created_at
        - updated_at
        - ledger_account_id
        - source_type
        - source_id
        - amount
        - currency
      title: TransactionDTO
    def-118:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              entity:
                type: string
                enum:
                  - transaction
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
              ledger_account_id:
                type: string
              payout_id:
                type: string
              bank_transfer_id:
                type: string
              source_type:
                type: string
                enum:
                  - dispute
                  - fee
                  - fee_refund
                  - funding
                  - payment
                  - payment_method
                  - payout
                  - refund
                  - refund_failure
                  - transfer
                  - reversal
                  - transaction
              source_id:
                type: string
              source_account_id:
                type: string
              root_source_id:
                type: string
              root_source_type:
                type: string
                enum:
                  - adjustment
                  - dispute
                  - fee
                  - fee_refund
                  - funding
                  - payment
                  - payment_method
                  - payment_refund
                  - payout
                  - refund
                  - refund_failure
                  - transfer
                  - transfer_refund
                  - reversal
                  - unmatched_settlement
              amount:
                maximum: 9007199254740991
                type: integer
              currency:
                type: string
                enum:
                  - USD
                  - CAD
              settlement_id:
                type: string
              settlement_status:
                type: string
                enum:
                  - settled
                  - unsettled
              settled_at:
                type: string
              description:
                type: string
              historical_bank_transfer_ids:
                type: array
                items:
                  type: string
              historical_payout_ids:
                type: array
                items:
                  type: string
            required:
              - id
              - entity
              - created_at
              - updated_at
              - ledger_account_id
              - source_type
              - source_id
              - amount
              - currency
        meta:
          $ref: '#/components/schemas/def-119'
      required:
        - data
        - meta
      title: TransactionListPageDTO
    def-119:
      type: object
      properties:
        limit:
          default: 10
          maximum: 50
          type: integer
        page:
          minimum: 1
          default: 1
          type: integer
        sort_column:
          default: updated_at
          anyOf:
            - type: string
              enum:
                - amount
            - type: string
              enum:
                - updated_at
            - type: string
              enum:
                - created_at
            - type: string
              enum:
                - settled_at
            - type: string
              enum:
                - description
        sort_direction:
          type: string
          enum:
            - asc
            - desc
        root_source_id:
          description: >-
            The root source ID of the transaction, typically the ID of a
            payment, refund or dispute.  For example, passing a payment id will
            return all balance transactions that are related to that payment
            (fees, transfers, etc.).
          type: string
        payout_id:
          description: Filter transactions by payout ID.
          type: string
        source_type:
          type: string
          enum:
            - dispute
            - fee
            - fee_refund
            - funding
            - payment
            - payment_method
            - payout
            - refund
            - refund_failure
            - transfer
            - reversal
            - transaction
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        start_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        end_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        amount_min:
          type: integer
        amount_max:
          type: integer
        currency:
          type: string
          enum:
            - USD
            - CAD
      required:
        - page
      title: TransactionListPageMetaDTO
    def-120:
      type: object
      properties:
        root_source_id:
          description: >-
            The root source ID of the transaction, typically the ID of a
            payment, refund or dispute.  For example, passing a payment id will
            return all balance transactions that are related to that payment
            (fees, transfers, etc.).
          type: string
        source_type:
          type: string
          enum:
            - dispute
            - fee
            - fee_refund
            - funding
            - payment
            - payment_method
            - payout
            - refund
            - refund_failure
            - transfer
            - reversal
            - transaction
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        start_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        end_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        sort_column:
          default: updated_at
          anyOf:
            - type: string
              enum:
                - amount
            - type: string
              enum:
                - updated_at
            - type: string
              enum:
                - created_at
            - type: string
              enum:
                - settled_at
            - type: string
              enum:
                - description
        sort_direction:
          type: string
          enum:
            - asc
            - desc
        amount_min:
          type: integer
        amount_max:
          type: integer
        currency:
          type: string
          enum:
            - USD
            - CAD
      title: TransactionDownloadRequestDTO
    def-121:
      type: object
      properties:
        root_source_id:
          description: >-
            The root source ID of the transaction, typically the ID of a
            payment, refund or dispute.  For example, passing a payment id will
            return all balance transactions that are related to that payment
            (fees, transfers, etc.).
          type: string
        payout_id:
          description: Filter transactions by payout ID.
          type: string
        source_type:
          type: string
          enum:
            - dispute
            - fee
            - fee_refund
            - funding
            - payment
            - payment_method
            - payout
            - refund
            - refund_failure
            - transfer
            - reversal
            - transaction
        settlement_status:
          type: string
          enum:
            - settled
            - unsettled
        start_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        end_date:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          deprecated: true
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        created_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        updated_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_start:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        settled_at_end:
          description: >-
            An ISO-8601 date-time. The UTC offset is optional — a value without
            one (for example `2026-07-25T12:00:00`) is interpreted as UTC. A
            date-only value (`2026-07-25`) is also accepted and covers that
            whole UTC day.
          anyOf:
            - format: iso-date-time
              type: string
            - format: date
              type: string
          example: '2026-07-25T12:00:00.000Z'
        sort_column:
          default: updated_at
          anyOf:
            - type: string
              enum:
                - amount
            - type: string
              enum:
                - updated_at
            - type: string
              enum:
                - created_at
            - type: string
              enum:
                - settled_at
            - type: string
              enum:
                - description
        sort_direction:
          type: string
          enum:
            - asc
            - desc
        amount_min:
          type: integer
        amount_max:
          type: integer
        limit:
          default: 10
          maximum: 50
          type: integer
        page:
          minimum: 1
          default: 1
          type: integer
        currency:
          type: string
          enum:
            - USD
            - CAD
      title: TransactionSearchRequestDTO
    def-126:
      type: object
      properties:
        payment_method_data:
          anyOf:
            - type: object
              properties:
                payment_method_type:
                  type: string
                  enum:
                    - card
                source_type:
                  type: string
                  enum:
                    - cardpointe
                    - external
                    - none
                    - plaid
                    - grailpay
                    - vault
                    - vgs
                billing_details:
                  type: object
                  properties:
                    address:
                      type: object
                      properties:
                        city:
                          maxLength: 100
                          type: string
                        country:
                          maxLength: 4
                          type: string
                        state:
                          maxLength: 100
                          type: string
                        address_line1:
                          maxLength: 200
                          type: string
                        address_line2:
                          maxLength: 200
                          type: string
                        postal_code:
                          maxLength: 12
                          type: string
                    email:
                      maxLength: 255
                      type: string
                    name:
                      maxLength: 200
                      type: string
                    phone:
                      maxLength: 50
                      type: string
                card:
                  anyOf:
                    - type: object
                      properties:
                        last_four_digits:
                          pattern: ^\d{4}$
                          type: string
                        first_six_digits:
                          pattern: ^\d{6}$
                          type: string
                        bin:
                          pattern: ^\d{6,8}$
                          type: string
                        brand:
                          type: string
                          enum:
                            - visa
                            - mastercard
                            - american_express
                            - discover
                        exp_month:
                          pattern: ^(0?[1-9]|1[012])$
                          type: string
                        exp_year:
                          pattern: ^(\d{2}|\d{4})$
                          type: string
                        token:
                          maxLength: 2000
                          type: string
                        device_serial_number:
                          maxLength: 100
                          type: string
                        reuse_eligible:
                          type: boolean
                      required:
                        - last_four_digits
                        - first_six_digits
                        - brand
                        - exp_month
                        - exp_year
                        - token
                    - type: object
                      properties:
                        last_four_digits:
                          pattern: ^\d{4}$
                          type: string
                        first_six_digits:
                          pattern: ^\d{6}$
                          type: string
                        bin:
                          pattern: ^\d{6,8}$
                          type: string
                        brand:
                          type: string
                          enum:
                            - visa
                            - mastercard
                            - american_express
                            - discover
                        exp_month:
                          pattern: ^(0?[1-9]|1[012])$
                          type: string
                        exp_year:
                          pattern: ^(\d{2}|\d{4})$
                          type: string
                        token:
                          maxLength: 2000
                          type: string
                        wallet:
                          type: string
                          enum:
                            - apple_pay
                            - google_pay
                        device_serial_number:
                          maxLength: 100
                          type: string
                        reuse_eligible:
                          type: boolean
                      required:
                        - last_four_digits
                        - brand
                        - token
                        - wallet
                client_secret:
                  type: string
                meta_data:
                  type: object
                  additionalProperties: {}
                persist_on_validation_failure:
                  type: boolean
              required:
                - payment_method_type
                - source_type
                - card
            - type: object
              properties:
                payment_method_type:
                  type: string
                  enum:
                    - bank
                source_type:
                  type: string
                  enum:
                    - cardpointe
                    - external
                    - none
                    - plaid
                    - grailpay
                    - vault
                    - vgs
                billing_details:
                  type: object
                  properties:
                    address:
                      type: object
                      properties:
                        city:
                          maxLength: 100
                          type: string
                        country:
                          maxLength: 4
                          type: string
                        state:
                          maxLength: 100
                          type: string
                        address_line1:
                          maxLength: 200
                          type: string
                        address_line2:
                          maxLength: 200
                          type: string
                        postal_code:
                          maxLength: 12
                          type: string
                    email:
                      maxLength: 255
                      type: string
                    name:
                      maxLength: 200
                      type: string
                    phone:
                      maxLength: 50
                      type: string
                bank:
                  anyOf:
                    - type: object
                      properties:
                        masked_account:
                          maxLength: 50
                          type: string
                        masked_routing:
                          maxLength: 50
                          type: string
                        account_id:
                          maxLength: 255
                          type: string
                        subtype:
                          maxLength: 20
                          type: string
                        owner_type:
                          type: string
                          enum:
                            - individual
                            - business
                        token:
                          maxLength: 2000
                          type: string
                        name:
                          maxLength: 200
                          type: string
                        official_name:
                          maxLength: 200
                          type: string
                        type:
                          maxLength: 50
                          type: string
                        country:
                          type: string
                          enum:
                            - US
                      required:
                        - account_id
                        - subtype
                    - type: object
                      properties:
                        subtype:
                          type: string
                          enum:
                            - checking
                            - savings
                        owner_type:
                          type: string
                          enum:
                            - individual
                            - business
                        account_number:
                          pattern: ^\d{4,17}$
                          type: string
                        routing_number:
                          pattern: ^\d{9}$
                          type: string
                        account_name:
                          minLength: 1
                          maxLength: 200
                          type: string
                        country:
                          type: string
                          enum:
                            - US
                      required:
                        - subtype
                        - owner_type
                        - account_number
                        - routing_number
                        - account_name
                client_secret:
                  type: string
                meta_data:
                  type: object
                  additionalProperties: {}
                persist_on_validation_failure:
                  type: boolean
              required:
                - payment_method_type
                - source_type
                - bank
            - type: object
              properties:
                payment_method_type:
                  type: string
                  enum:
                    - ca_bank
                billing_details:
                  type: object
                  properties:
                    address:
                      type: object
                      properties:
                        city:
                          type: string
                        country:
                          type: string
                        state:
                          type: string
                        address_line1:
                          type: string
                        address_line2:
                          type: string
                        postal_code:
                          type: string
                    email:
                      type: string
                    name:
                      type: string
                    phone:
                      type: string
                bank:
                  type: object
                  properties:
                    owner_type:
                      type: string
                      enum:
                        - individual
                        - business
                    account_number:
                      pattern: ^\d{5,12}$
                      type: string
                    institution_number:
                      pattern: ^\d{3}$
                      type: string
                    transit_number:
                      pattern: ^\d{5}$
                      type: string
                    account_name:
                      minLength: 1
                      maxLength: 200
                      type: string
                    pad_agreement:
                      type: object
                      properties:
                        ip:
                          minLength: 7
                          maxLength: 45
                          type: string
                        agreement:
                          minLength: 1
                          maxLength: 5000
                          type: string
                      required:
                        - ip
                        - agreement
                  required:
                    - owner_type
                    - account_number
                    - institution_number
                    - transit_number
                    - account_name
                    - pad_agreement
                client_secret:
                  type: string
                meta_data:
                  type: object
                  additionalProperties: {}
                persist_on_validation_failure:
                  type: boolean
              required:
                - payment_method_type
                - bank
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        user_fields:
          type: object
          additionalProperties: {}
        validate:
          type: boolean
        bill_to:
          anyOf:
            - type: string
              enum:
                - merchant
            - type: string
              enum:
                - partner
        customer_id:
          maxLength: 50
          description: >-
            Associate this payment method intent with a customer. The customer
            must have an active link to the merchant account. The payment method
            created from this intent is attached to the customer on completion.
          type: string
      title: PaymentMethodIntentCreateRequestDTO
    def-127:
      type: object
      properties:
        id:
          type: string
        client_secret:
          type: string
        entity:
          type: string
          enum:
            - payment_method_intent
        status:
          type: string
          enum:
            - created
            - cancelled
            - succeeded
            - processing
            - failed
        account_id:
          type: string
        customer_id:
          type: string
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        payment_method:
          $ref: '#/components/schemas/def-89'
        validate:
          type: boolean
        bill_to:
          anyOf:
            - type: string
              enum:
                - merchant
            - type: string
              enum:
                - partner
        latest_validation_response:
          type: object
          properties:
            status:
              type: string
              enum:
                - succeeded
                - failed
            message:
              type: string
            created_at:
              type: string
            auth_code:
              type: string
            token:
              type: string
            gateway_response:
              type: object
              properties:
                code:
                  type: string
                text:
                  type: string
                source:
                  type: string
            decline_category:
              type: string
            decline_category_text:
              type: string
          required:
            - status
            - message
            - created_at
        validation_attempts:
          type: array
          items:
            type: object
            properties:
              response:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - succeeded
                      - failed
                  message:
                    type: string
                  created_at:
                    type: string
                  auth_code:
                    type: string
                  token:
                    type: string
                  gateway_response:
                    type: object
                    properties:
                      code:
                        type: string
                      text:
                        type: string
                      source:
                        type: string
                  decline_category:
                    type: string
                  decline_category_text:
                    type: string
                required:
                  - status
                  - message
                  - created_at
              payment_method:
                $ref: '#/components/schemas/def-131'
            required:
              - response
              - payment_method
        user_fields:
          type: object
          additionalProperties: {}
        cancellation_reason:
          type: string
        created_at:
          format: date-time
          type: string
        updated_at:
          format: date-time
          type: string
      required:
        - id
        - entity
        - status
        - account_id
        - created_at
        - updated_at
      title: PaymentMethodIntentDTO
    def-128:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              client_secret:
                type: string
              entity:
                type: string
                enum:
                  - payment_method_intent
              status:
                type: string
                enum:
                  - created
                  - cancelled
                  - succeeded
                  - processing
                  - failed
              account_id:
                type: string
              customer_id:
                type: string
              payment_method_types:
                type: array
                items:
                  type: string
                  enum:
                    - card
                    - bank
                    - ca_bank
              payment_method:
                $ref: '#/components/schemas/def-89'
              validate:
                type: boolean
              bill_to:
                anyOf:
                  - type: string
                    enum:
                      - merchant
                  - type: string
                    enum:
                      - partner
              latest_validation_response:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - succeeded
                      - failed
                  message:
                    type: string
                  created_at:
                    type: string
                  auth_code:
                    type: string
                  token:
                    type: string
                  gateway_response:
                    type: object
                    properties:
                      code:
                        type: string
                      text:
                        type: string
                      source:
                        type: string
                  decline_category:
                    type: string
                  decline_category_text:
                    type: string
                required:
                  - status
                  - message
                  - created_at
              validation_attempts:
                type: array
                items:
                  type: object
                  properties:
                    response:
                      type: object
                      properties:
                        status:
                          type: string
                          enum:
                            - succeeded
                            - failed
                        message:
                          type: string
                        created_at:
                          type: string
                        auth_code:
                          type: string
                        token:
                          type: string
                        gateway_response:
                          type: object
                          properties:
                            code:
                              type: string
                            text:
                              type: string
                            source:
                              type: string
                        decline_category:
                          type: string
                        decline_category_text:
                          type: string
                      required:
                        - status
                        - message
                        - created_at
                    payment_method:
                      $ref: '#/components/schemas/def-131'
                  required:
                    - response
                    - payment_method
              user_fields:
                type: object
                additionalProperties: {}
              cancellation_reason:
                type: string
              created_at:
                format: date-time
                type: string
              updated_at:
                format: date-time
                type: string
            required:
              - id
              - entity
              - status
              - account_id
              - created_at
              - updated_at
        meta:
          type: object
          properties:
            has_more:
              type: boolean
            limit:
              type: number
          required:
            - has_more
            - limit
      required:
        - data
        - meta
      title: PaymentMethodIntentListDTO
    def-129:
      type: object
      properties:
        cancellation_reason:
          maxLength: 300
          type: string
      title: PaymentMethodIntentCancelRequestDTO
    def-131:
      anyOf:
        - type: object
          properties:
            payment_method_type:
              type: string
              enum:
                - card
            source_type:
              type: string
              enum:
                - cardpointe
                - external
                - none
                - plaid
                - grailpay
                - vault
                - vgs
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      maxLength: 100
                      type: string
                    country:
                      maxLength: 4
                      type: string
                    state:
                      maxLength: 100
                      type: string
                    address_line1:
                      maxLength: 200
                      type: string
                    address_line2:
                      maxLength: 200
                      type: string
                    postal_code:
                      maxLength: 12
                      type: string
                email:
                  maxLength: 255
                  type: string
                name:
                  maxLength: 200
                  type: string
                phone:
                  maxLength: 50
                  type: string
            card:
              anyOf:
                - type: object
                  properties:
                    last_four_digits:
                      pattern: ^\d{4}$
                      type: string
                    first_six_digits:
                      pattern: ^\d{6}$
                      type: string
                    bin:
                      pattern: ^\d{6,8}$
                      type: string
                    brand:
                      type: string
                      enum:
                        - visa
                        - mastercard
                        - american_express
                        - discover
                    exp_month:
                      pattern: ^(0?[1-9]|1[012])$
                      type: string
                    exp_year:
                      pattern: ^(\d{2}|\d{4})$
                      type: string
                    token:
                      maxLength: 2000
                      type: string
                    device_serial_number:
                      maxLength: 100
                      type: string
                    reuse_eligible:
                      type: boolean
                  required:
                    - last_four_digits
                    - first_six_digits
                    - brand
                    - exp_month
                    - exp_year
                    - token
                - type: object
                  properties:
                    last_four_digits:
                      pattern: ^\d{4}$
                      type: string
                    first_six_digits:
                      pattern: ^\d{6}$
                      type: string
                    bin:
                      pattern: ^\d{6,8}$
                      type: string
                    brand:
                      type: string
                      enum:
                        - visa
                        - mastercard
                        - american_express
                        - discover
                    exp_month:
                      pattern: ^(0?[1-9]|1[012])$
                      type: string
                    exp_year:
                      pattern: ^(\d{2}|\d{4})$
                      type: string
                    token:
                      maxLength: 2000
                      type: string
                    wallet:
                      type: string
                      enum:
                        - apple_pay
                        - google_pay
                    device_serial_number:
                      maxLength: 100
                      type: string
                    reuse_eligible:
                      type: boolean
                  required:
                    - last_four_digits
                    - brand
            client_secret:
              type: string
            meta_data:
              type: object
              additionalProperties: {}
            persist_on_validation_failure:
              type: boolean
          required:
            - payment_method_type
            - source_type
            - card
        - type: object
          properties:
            payment_method_type:
              type: string
              enum:
                - bank
            source_type:
              type: string
              enum:
                - cardpointe
                - external
                - none
                - plaid
                - grailpay
                - vault
                - vgs
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      maxLength: 100
                      type: string
                    country:
                      maxLength: 4
                      type: string
                    state:
                      maxLength: 100
                      type: string
                    address_line1:
                      maxLength: 200
                      type: string
                    address_line2:
                      maxLength: 200
                      type: string
                    postal_code:
                      maxLength: 12
                      type: string
                email:
                  maxLength: 255
                  type: string
                name:
                  maxLength: 200
                  type: string
                phone:
                  maxLength: 50
                  type: string
            bank:
              anyOf:
                - type: object
                  properties:
                    masked_account:
                      maxLength: 50
                      type: string
                    masked_routing:
                      maxLength: 50
                      type: string
                    account_id:
                      maxLength: 255
                      type: string
                    subtype:
                      maxLength: 20
                      type: string
                    owner_type:
                      type: string
                      enum:
                        - individual
                        - business
                    token:
                      maxLength: 2000
                      type: string
                    name:
                      maxLength: 200
                      type: string
                    official_name:
                      maxLength: 200
                      type: string
                    type:
                      maxLength: 50
                      type: string
                    country:
                      type: string
                      enum:
                        - US
                  required:
                    - account_id
                    - subtype
                - type: object
                  properties:
                    subtype:
                      type: string
                      enum:
                        - checking
                        - savings
                    owner_type:
                      type: string
                      enum:
                        - individual
                        - business
                    account_number:
                      pattern: ^\d{4,17}$
                      type: string
                    routing_number:
                      pattern: ^\d{9}$
                      type: string
                    account_name:
                      minLength: 1
                      maxLength: 200
                      type: string
                    country:
                      type: string
                      enum:
                        - US
                  required:
                    - subtype
                    - owner_type
                    - account_number
                    - routing_number
                    - account_name
            client_secret:
              type: string
            meta_data:
              type: object
              additionalProperties: {}
            persist_on_validation_failure:
              type: boolean
          required:
            - payment_method_type
            - source_type
            - bank
        - type: object
          properties:
            payment_method_type:
              type: string
              enum:
                - ca_bank
            billing_details:
              type: object
              properties:
                address:
                  type: object
                  properties:
                    city:
                      type: string
                    country:
                      type: string
                    state:
                      type: string
                    address_line1:
                      type: string
                    address_line2:
                      type: string
                    postal_code:
                      type: string
                email:
                  type: string
                name:
                  type: string
                phone:
                  type: string
            bank:
              type: object
              properties:
                owner_type:
                  type: string
                  enum:
                    - individual
                    - business
                account_number:
                  maxLength: 12
                  type: string
                institution_number:
                  maxLength: 3
                  type: string
                transit_number:
                  maxLength: 5
                  type: string
                account_name:
                  maxLength: 200
                  type: string
                account_id:
                  maxLength: 255
                  type: string
                masked_account:
                  maxLength: 50
                  type: string
                masked_institution:
                  maxLength: 50
                  type: string
                masked_transit:
                  maxLength: 50
                  type: string
                country:
                  type: string
                  enum:
                    - CA
                pad_agreement:
                  type: object
                  properties:
                    ip:
                      minLength: 7
                      maxLength: 45
                      type: string
                    agreement:
                      minLength: 1
                      maxLength: 5000
                      type: string
                  required:
                    - ip
                    - agreement
                name:
                  maxLength: 200
                  type: string
                official_name:
                  maxLength: 200
                  type: string
                type:
                  maxLength: 50
                  type: string
            client_secret:
              type: string
            meta_data:
              type: object
              additionalProperties: {}
            persist_on_validation_failure:
              type: boolean
          required:
            - payment_method_type
            - bank
      title: PaymentMethodFailedRequestDTO
    def-132:
      type: object
      properties:
        user_fields:
          type: object
          additionalProperties: {}
        payment_method_types:
          type: array
          items:
            type: string
            enum:
              - card
              - bank
              - ca_bank
        customer_id:
          maxLength: 50
          description: >-
            Associate this payment method intent with a customer when it does
            not already have one. The customer must have an active link to the
            merchant account. Attempting to change an existing association is
            rejected.
          type: string
      title: PaymentMethodIntentUpdateRequestDTO
    def-135:
      type: object
      properties:
        payment_method_id:
          type: string
        postal_code:
          maxLength: 10
          type: string
        amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
        percent:
          minimum: 0
          maximum: 3
          type: number
      required:
        - payment_method_id
        - amount
        - percent
      title: SurchargeCreateRequestDTO
    def-136:
      type: object
      properties:
        card_type:
          type: string
          enum:
            - Credit
            - Debit
            - Unknown
        restricted:
          type: string
          enum:
            - 'Y'
            - 'N'
            - U
        fee_amount:
          minimum: 0
          maximum: 9007199254740991
          type: integer
      required:
        - card_type
        - restricted
      title: SurchargeResponseDTO
    def-138:
      type: object
      properties:
        cc_email_addresses:
          description: Array of email addresses to send checkout session to
          type: array
          items:
            format: email
            type: string
        email_override:
          format: email
          type: string
      title: CheckoutSessionReceiptEmailRequestDTO
    def-139:
      type: object
      properties:
        cc_email_addresses:
          description: Array of email addresses to send payment intent receipt to
          type: array
          items:
            format: email
            type: string
        email_override:
          format: email
          type: string
      title: PaymentIntentReceiptEmailRequestDTO
