Square Disputes API

The Disputes API from Square — 8 operation(s) for disputes.

Documentation

📖
Documentation
https://developer.squareup.com/docs/payments-overview
📖
APIReference
https://developer.squareup.com/reference/square/payments-api
📖
Documentation
https://developer.squareup.com/docs/orders-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/orders-api
📖
Documentation
https://developer.squareup.com/docs/catalog-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/catalog-api
📖
Documentation
https://developer.squareup.com/docs/inventory-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/inventory-api
📖
Documentation
https://developer.squareup.com/docs/customers
📖
APIReference
https://developer.squareup.com/reference/square/customers-api
📖
Documentation
https://developer.squareup.com/docs/locations-api
📖
APIReference
https://developer.squareup.com/reference/square/locations-api
📖
Documentation
https://developer.squareup.com/docs/team/overview
📖
APIReference
https://developer.squareup.com/reference/square/team-api
📖
Documentation
https://developer.squareup.com/docs/labor-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/labor-api
📖
Documentation
https://developer.squareup.com/docs/bookings-api/what-it-is
📖
APIReference
https://developer.squareup.com/reference/square/bookings-api
📖
Documentation
https://developer.squareup.com/docs/loyalty-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/loyalty-api
📖
Documentation
https://developer.squareup.com/docs/gift-cards/using-gift-cards-api
📖
APIReference
https://developer.squareup.com/reference/square/gift-cards-api
📖
Documentation
https://developer.squareup.com/docs/invoices-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/invoices-api
📖
Documentation
https://developer.squareup.com/docs/subscriptions-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/subscriptions-api
📖
Documentation
https://developer.squareup.com/docs/checkout-api
📖
APIReference
https://developer.squareup.com/reference/square/checkout-api
📖
Documentation
https://developer.squareup.com/docs/terminal-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/terminal-api
📖
Documentation
https://developer.squareup.com/docs/payments-refunds
📖
APIReference
https://developer.squareup.com/reference/square/refunds-api
📖
Documentation
https://developer.squareup.com/docs/disputes-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/disputes-api
📖
Documentation
https://developer.squareup.com/docs/merchants-api
📖
APIReference
https://developer.squareup.com/reference/square/merchants-api
📖
Documentation
https://developer.squareup.com/docs/cards-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/cards-api
📖
Documentation
https://developer.squareup.com/docs/vendors-api/manage-vendors-in-apps
📖
APIReference
https://developer.squareup.com/reference/square/vendors-api
📖
Documentation
https://developer.squareup.com/docs/cashdrawershift-api/reporting
📖
APIReference
https://developer.squareup.com/reference/square/cash-drawers-api
📖
Documentation
https://developer.squareup.com/docs/bank-accounts-api
📖
APIReference
https://developer.squareup.com/reference/square/bank-accounts-api
📖
Documentation
https://developer.squareup.com/docs/payouts-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/payouts-api
📖
Documentation
https://developer.squareup.com/docs/web-payments/apple-pay
📖
APIReference
https://developer.squareup.com/reference/square/apple-pay-api
📖
Documentation
https://developer.squareup.com/docs/sites-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/sites-api
📖
Documentation
https://developer.squareup.com/docs/snippets-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/snippets-api
📖
Documentation
https://developer.squareup.com/docs/oauth-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/oauth-api
📖
Documentation
https://developer.squareup.com/docs/webhooks/overview
📖
APIReference
https://developer.squareup.com/reference/square/webhook-subscriptions-api
📖
Documentation
https://developer.squareup.com/docs/events-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/events-api
📖
Documentation
https://developer.squareup.com/docs/devices-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/devices-api
📖
Documentation
https://developer.squareup.com/docs/customer-groups-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/customer-groups-api
📖
Documentation
https://developer.squareup.com/docs/customer-segments-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/customer-segments-api
📖
Documentation
https://developer.squareup.com/docs/gift-cards/using-gift-card-activities-api
📖
APIReference
https://developer.squareup.com/reference/square/gift-card-activities-api
📖
Documentation
https://developer.squareup.com/docs/customer-custom-attributes-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/customer-custom-attributes-api

Specifications

Other Resources

OpenAPI Specification

square-disputes-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: '2.0'
  title: Square ApplePay Disputes API
  description: 'Supercharge Square for sellers of every size. Our entire connected commerce platform  from elegant hardware to a rich suite of Square APIs  is yours to build with. Whether youre developing an app or composing a bespoke solution, this is the place to make it happen. '
  termsOfService: https://connect.squareup.com/tos
  contact:
    name: Square Developer Platform
    email: developers@squareup.com
    url: https://squareup.com/developers
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  externalDocs:
    description: 'Read the official documentation here:'
    url: https://docs.connect.squareup.com/
  x-server-configuration:
    default-environment: production
    default-server: default
    environments:
    - name: production
      servers:
      - name: default
        url: https://connect.squareup.com
    - name: sandbox
      servers:
      - name: default
        url: https://connect.squareupsandbox.com
    - name: custom
      servers:
      - name: default
        url: '{custom_url}'
    parameters:
    - name: custom_url
      description: Sets the base URL requests are made to. Defaults to `https://connect.squareup.com`
      type: string
      example: https://connect.squareup.com
  x-square-generic-error-codes:
  - ACCESS_TOKEN_EXPIRED
  - ACCESS_TOKEN_REVOKED
  - API_VERSION_INCOMPATIBLE
  - APPLICATION_DISABLED
  - ARRAY_EMPTY
  - ARRAY_LENGTH_TOO_LONG
  - ARRAY_LENGTH_TOO_SHORT
  - BAD_CERTIFICATE
  - BAD_GATEWAY
  - BAD_REQUEST
  - CONFLICT
  - CONFLICTING_PARAMETERS
  - CURRENCY_MISMATCH
  - EXPECTED_ARRAY
  - EXPECTED_BASE64_ENCODED_BYTE_ARRAY
  - EXPECTED_BOOLEAN
  - EXPECTED_FLOAT
  - EXPECTED_INTEGER
  - EXPECTED_JSON_BODY
  - EXPECTED_MAP
  - EXPECTED_OBJECT
  - EXPECTED_STRING
  - FORBIDDEN
  - GATEWAY_TIMEOUT
  - GONE
  - IDEMPOTENCY_KEY_REUSED
  - INCORRECT_TYPE
  - INSUFFICIENT_SCOPES
  - INTERNAL_SERVER_ERROR
  - INVALID_ARRAY_VALUE
  - INVALID_CONTENT_TYPE
  - INVALID_CURSOR
  - INVALID_ENUM_VALUE
  - INVALID_FORM_VALUE
  - INVALID_SORT_ORDER
  - INVALID_SQUARE_VERSION_FORMAT
  - INVALID_TIME
  - INVALID_TIME_RANGE
  - INVALID_VALUE
  - LOCATION_MISMATCH
  - MAP_KEY_LENGTH_TOO_LONG
  - MAP_KEY_LENGTH_TOO_SHORT
  - MERCHANT_SUBSCRIPTION_NOT_FOUND
  - METHOD_NOT_ALLOWED
  - MISSING_REQUIRED_PARAMETER
  - NOT_ACCEPTABLE
  - NOT_FOUND
  - NOT_IMPLEMENTED
  - NO_FIELDS_SET
  - RATE_LIMITED
  - REQUEST_ENTITY_TOO_LARGE
  - REQUEST_TIMEOUT
  - SANDBOX_NOT_SUPPORTED
  - SERVICE_UNAVAILABLE
  - TOO_MANY_MAP_ENTRIES
  - UNAUTHORIZED
  - UNEXPECTED_VALUE
  - UNKNOWN_BODY_PARAMETER
  - UNKNOWN_QUERY_PARAMETER
  - UNPROCESSABLE_ENTITY
  - UNSUPPORTED_MEDIA_TYPE
  - V1_ACCESS_TOKEN
  - V1_APPLICATION
  - VALUE_EMPTY
  - VALUE_REGEX_MISMATCH
  - VALUE_TOO_HIGH
  - VALUE_TOO_LONG
  - VALUE_TOO_LOW
  - VALUE_TOO_SHORT
servers:
- url: https://connect.squareup.com
  variables: {}
tags:
- name: Disputes
paths:
  /v2/disputes:
    get:
      tags:
      - Disputes
      summary: Square List Disputes
      operationId: ListDisputes
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Returns a list of disputes associated with a particular account.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_READ
      parameters:
      - name: cursor
        description: 'A pagination cursor returned by a previous call to this endpoint.

          Provide this cursor to retrieve the next set of results for the original query.

          For more information, see [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination).'
        schema:
          type: string
        in: query
        required: false
      - name: states
        description: The dispute states used to filter the result. If not specified, the endpoint returns all disputes.
        schema:
          $ref: '#/components/schemas/DisputeState'
        in: query
        required: false
      - name: location_id
        description: 'The ID of the location for which to return a list of disputes.

          If not specified, the endpoint returns disputes associated with all locations.'
        schema:
          type: string
        in: query
        required: false
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListDisputesResponse'
  /v2/disputes/{dispute_id}:
    get:
      tags:
      - Disputes
      summary: Square Retrieve Dispute
      operationId: RetrieveDispute
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Returns details about a specific dispute.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_READ
      parameters:
      - name: dispute_id
        description: The ID of the dispute you want more details about.
        schema:
          type: string
        in: path
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveDisputeResponse'
  /v2/disputes/{dispute_id}/accept:
    post:
      tags:
      - Disputes
      summary: Square Accept Dispute
      operationId: AcceptDispute
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: 'Accepts the loss on a dispute. Square returns the disputed amount to the cardholder and

        updates the dispute state to ACCEPTED.


        Square debits the disputed amount from the seller’s Square account. If the Square account

        does not have sufficient funds, Square debits the associated bank account.'
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_WRITE
      parameters:
      - name: dispute_id
        description: The ID of the dispute you want to accept.
        schema:
          type: string
        in: path
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AcceptDisputeResponse'
  /v2/disputes/{dispute_id}/evidence:
    get:
      tags:
      - Disputes
      summary: Square List Dispute Evidence
      operationId: ListDisputeEvidence
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Returns a list of evidence associated with a dispute.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_READ
      parameters:
      - name: dispute_id
        description: The ID of the dispute.
        schema:
          type: string
        in: path
        required: true
      - name: cursor
        description: 'A pagination cursor returned by a previous call to this endpoint.

          Provide this cursor to retrieve the next set of results for the original query.

          For more information, see [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination).'
        schema:
          type: string
        in: query
        required: false
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListDisputeEvidenceResponse'
  /v2/disputes/{dispute_id}/evidence-files:
    post:
      tags:
      - Disputes
      summary: Square Create Dispute Evidence File
      operationId: CreateDisputeEvidenceFile
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: 'Uploads a file to use as evidence in a dispute challenge. The endpoint accepts HTTP

        multipart/form-data file uploads in HEIC, HEIF, JPEG, PDF, PNG, and TIFF formats.'
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_WRITE
      parameters:
      - name: dispute_id
        description: The ID of the dispute for which you want to upload evidence.
        schema:
          type: string
        in: path
        required: true
      requestBody:
        required: true
        description: 'An object containing the fields to POST for the request.


          See the corresponding object definition for field details.'
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                request:
                  $ref: '#/components/schemas/CreateDisputeEvidenceFileRequest'
                image_file:
                  type: string
                  format: binary
            encoding:
              image_file:
                contentType: image/jpeg
              request:
                contentType: application/json; charset=utf-8
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateDisputeEvidenceFileResponse'
  /v2/disputes/{dispute_id}/evidence-text:
    post:
      tags:
      - Disputes
      summary: Square Create Dispute Evidence Text
      operationId: CreateDisputeEvidenceText
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Uploads text to use as evidence for a dispute challenge.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_WRITE
      parameters:
      - name: dispute_id
        description: The ID of the dispute for which you want to upload evidence.
        schema:
          type: string
        in: path
        required: true
      requestBody:
        required: true
        description: 'An object containing the fields to POST for the request.


          See the corresponding object definition for field details.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDisputeEvidenceTextRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateDisputeEvidenceTextResponse'
  /v2/disputes/{dispute_id}/evidence/{evidence_id}:
    delete:
      tags:
      - Disputes
      summary: Square Delete Dispute Evidence
      operationId: DeleteDisputeEvidence
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: 'Removes specified evidence from a dispute.

        Square does not send the bank any evidence that is removed.'
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_WRITE
      parameters:
      - name: dispute_id
        description: The ID of the dispute from which you want to remove evidence.
        schema:
          type: string
        in: path
        required: true
      - name: evidence_id
        description: The ID of the evidence you want to remove.
        schema:
          type: string
        in: path
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteDisputeEvidenceResponse'
    get:
      tags:
      - Disputes
      summary: Square Retrieve Dispute Evidence
      operationId: RetrieveDisputeEvidence
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: 'Returns the metadata for the evidence specified in the request URL path.


        You must maintain a copy of any evidence uploaded if you want to reference it later. Evidence cannot be downloaded after you upload it.'
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_READ
      parameters:
      - name: dispute_id
        description: The ID of the dispute from which you want to retrieve evidence metadata.
        schema:
          type: string
        in: path
        required: true
      - name: evidence_id
        description: The ID of the evidence to retrieve.
        schema:
          type: string
        in: path
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveDisputeEvidenceResponse'
  /v2/disputes/{dispute_id}/submit-evidence:
    post:
      tags:
      - Disputes
      summary: Square Submit Evidence
      operationId: SubmitEvidence
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: 'Submits evidence to the cardholder''s bank.


        The evidence submitted by this endpoint includes evidence uploaded

        using the [CreateDisputeEvidenceFile](api-endpoint:Disputes-CreateDisputeEvidenceFile) and

        [CreateDisputeEvidenceText](api-endpoint:Disputes-CreateDisputeEvidenceText) endpoints and

        evidence automatically provided by Square, when available. Evidence cannot be removed from

        a dispute after submission.'
      x-release-status: PUBLIC
      security:
      - oauth2:
        - DISPUTES_WRITE
      parameters:
      - name: dispute_id
        description: The ID of the dispute for which you want to submit evidence.
        schema:
          type: string
        in: path
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitEvidenceResponse'
components:
  schemas:
    DisputedPayment:
      type: object
      description: The payment the cardholder disputed.
      x-release-status: PUBLIC
      properties:
        payment_id:
          type: string
          description: Square-generated unique ID of the payment being disputed.
          minLength: 1
          maxLength: 192
          nullable: true
    ErrorCategory:
      type: string
      enum:
      - API_ERROR
      - AUTHENTICATION_ERROR
      - INVALID_REQUEST_ERROR
      - RATE_LIMIT_ERROR
      - PAYMENT_METHOD_ERROR
      - REFUND_ERROR
      - MERCHANT_SUBSCRIPTION_ERROR
      - EXTERNAL_VENDOR_ERROR
      x-enum-elements:
      - name: API_ERROR
        description: An error occurred with the Connect API itself.
      - name: AUTHENTICATION_ERROR
        description: 'An authentication error occurred. Most commonly, the request had

          a missing, malformed, or otherwise invalid `Authorization` header.'
      - name: INVALID_REQUEST_ERROR
        description: 'The request was invalid. Most commonly, a required parameter was

          missing, or a provided parameter had an invalid value.'
      - name: RATE_LIMIT_ERROR
        description: 'Your application reached the Square API rate limit. You might receive this error if your application sends a high number of requests

          to Square APIs in a short period of time.


          Your application should monitor responses for `429 RATE_LIMITED` errors and use a retry mechanism with an [exponential backoff](https://en.wikipedia.org/wiki/Exponential_backoff)

          schedule to resend the requests at an increasingly slower rate. It is also a good practice to use a randomized delay (jitter) in your retry schedule.'
      - name: PAYMENT_METHOD_ERROR
        description: 'An error occurred while processing a payment method. Most commonly,

          the details of the payment method were invalid (such as a card''s CVV

          or expiration date).'
      - name: REFUND_ERROR
        description: An error occurred while attempting to process a refund.
      - name: MERCHANT_SUBSCRIPTION_ERROR
        description: An error occurred when checking a merchant subscription status
      - name: EXTERNAL_VENDOR_ERROR
        description: An error that is returned from an external vendor's API
      description: 'Indicates which high-level category of error has occurred during a

        request to the Connect API.'
      x-release-status: PUBLIC
    ErrorCode:
      type: string
      enum:
      - INTERNAL_SERVER_ERROR
      - UNAUTHORIZED
      - ACCESS_TOKEN_EXPIRED
      - ACCESS_TOKEN_REVOKED
      - CLIENT_DISABLED
      - FORBIDDEN
      - INSUFFICIENT_SCOPES
      - APPLICATION_DISABLED
      - V1_APPLICATION
      - V1_ACCESS_TOKEN
      - CARD_PROCESSING_NOT_ENABLED
      - MERCHANT_SUBSCRIPTION_NOT_FOUND
      - BAD_REQUEST
      - MISSING_REQUIRED_PARAMETER
      - INCORRECT_TYPE
      - INVALID_TIME
      - INVALID_TIME_RANGE
      - INVALID_VALUE
      - INVALID_CURSOR
      - UNKNOWN_QUERY_PARAMETER
      - CONFLICTING_PARAMETERS
      - EXPECTED_JSON_BODY
      - INVALID_SORT_ORDER
      - VALUE_REGEX_MISMATCH
      - VALUE_TOO_SHORT
      - VALUE_TOO_LONG
      - VALUE_TOO_LOW
      - VALUE_TOO_HIGH
      - VALUE_EMPTY
      - ARRAY_LENGTH_TOO_LONG
      - ARRAY_LENGTH_TOO_SHORT
      - ARRAY_EMPTY
      - EXPECTED_BOOLEAN
      - EXPECTED_INTEGER
      - EXPECTED_FLOAT
      - EXPECTED_STRING
      - EXPECTED_OBJECT
      - EXPECTED_ARRAY
      - EXPECTED_MAP
      - EXPECTED_BASE64_ENCODED_BYTE_ARRAY
      - INVALID_ARRAY_VALUE
      - INVALID_ENUM_VALUE
      - INVALID_CONTENT_TYPE
      - INVALID_FORM_VALUE
      - CUSTOMER_NOT_FOUND
      - ONE_INSTRUMENT_EXPECTED
      - NO_FIELDS_SET
      - TOO_MANY_MAP_ENTRIES
      - MAP_KEY_LENGTH_TOO_SHORT
      - MAP_KEY_LENGTH_TOO_LONG
      - CUSTOMER_MISSING_NAME
      - CUSTOMER_MISSING_EMAIL
      - INVALID_PAUSE_LENGTH
      - INVALID_DATE
      - UNSUPPORTED_COUNTRY
      - UNSUPPORTED_CURRENCY
      - APPLE_TTP_PIN_TOKEN
      - CARD_EXPIRED
      - INVALID_EXPIRATION
      - INVALID_EXPIRATION_YEAR
      - INVALID_EXPIRATION_DATE
      - UNSUPPORTED_CARD_BRAND
      - UNSUPPORTED_ENTRY_METHOD
      - INVALID_ENCRYPTED_CARD
      - INVALID_CARD
      - PAYMENT_AMOUNT_MISMATCH
      - GENERIC_DECLINE
      - CVV_FAILURE
      - ADDRESS_VERIFICATION_FAILURE
      - INVALID_ACCOUNT
      - CURRENCY_MISMATCH
      - INSUFFICIENT_FUNDS
      - INSUFFICIENT_PERMISSIONS
      - CARDHOLDER_INSUFFICIENT_PERMISSIONS
      - INVALID_LOCATION
      - TRANSACTION_LIMIT
      - VOICE_FAILURE
      - PAN_FAILURE
      - EXPIRATION_FAILURE
      - CARD_NOT_SUPPORTED
      - INVALID_PIN
      - MISSING_PIN
      - MISSING_ACCOUNT_TYPE
      - INVALID_POSTAL_CODE
      - INVALID_FEES
      - MANUALLY_ENTERED_PAYMENT_NOT_SUPPORTED
      - PAYMENT_LIMIT_EXCEEDED
      - GIFT_CARD_AVAILABLE_AMOUNT
      - ACCOUNT_UNUSABLE
      - BUYER_REFUSED_PAYMENT
      - DELAYED_TRANSACTION_EXPIRED
      - DELAYED_TRANSACTION_CANCELED
      - DELAYED_TRANSACTION_CAPTURED
      - DELAYED_TRANSACTION_FAILED
      - CARD_TOKEN_EXPIRED
      - CARD_TOKEN_USED
      - AMOUNT_TOO_HIGH
      - UNSUPPORTED_INSTRUMENT_TYPE
      - REFUND_AMOUNT_INVALID
      - REFUND_ALREADY_PENDING
      - PAYMENT_NOT_REFUNDABLE
      - PAYMENT_NOT_REFUNDABLE_DUE_TO_DISPUTE
      - REFUND_DECLINED
      - INSUFFICIENT_PERMISSIONS_FOR_REFUND
      - INVALID_CARD_DATA
      - SOURCE_USED
      - SOURCE_EXPIRED
      - UNSUPPORTED_LOYALTY_REWARD_TIER
      - LOCATION_MISMATCH
      - IDEMPOTENCY_KEY_REUSED
      - UNEXPECTED_VALUE
      - SANDBOX_NOT_SUPPORTED
      - INVALID_EMAIL_ADDRESS
      - INVALID_PHONE_NUMBER
      - CHECKOUT_EXPIRED
      - BAD_CERTIFICATE
      - INVALID_SQUARE_VERSION_FORMAT
      - API_VERSION_INCOMPATIBLE
      - CARD_PRESENCE_REQUIRED
      - UNSUPPORTED_SOURCE_TYPE
      - CARD_MISMATCH
      - PLAID_ERROR
      - PLAID_ERROR_ITEM_LOGIN_REQUIRED
      - PLAID_ERROR_RATE_LIMIT
      - CARD_DECLINED
      - VERIFY_CVV_FAILURE
      - VERIFY_AVS_FAILURE
      - CARD_DECLINED_CALL_ISSUER
      - CARD_DECLINED_VERIFICATION_REQUIRED
      - BAD_EXPIRATION
      - CHIP_INSERTION_REQUIRED
      - ALLOWABLE_PIN_TRIES_EXCEEDED
      - RESERVATION_DECLINED
      - UNKNOWN_BODY_PARAMETER
      - NOT_FOUND
      - APPLE_PAYMENT_PROCESSING_CERTIFICATE_HASH_NOT_FOUND
      - METHOD_NOT_ALLOWED
      - NOT_ACCEPTABLE
      - REQUEST_TIMEOUT
      - CONFLICT
      - GONE
      - REQUEST_ENTITY_TOO_LARGE
      - UNSUPPORTED_MEDIA_TYPE
      - UNPROCESSABLE_ENTITY
      - RATE_LIMITED
      - NOT_IMPLEMENTED
      - BAD_GATEWAY
      - SERVICE_UNAVAILABLE
      - TEMPORARY_ERROR
      - GATEWAY_TIMEOUT
      x-enum-elements:
      - name: INTERNAL_SERVER_ERROR
        description: A general server error occurred.
        error-category: API_ERROR
      - name: UNAUTHORIZED
        description: A general authorization error occurred.
        error-category: AUTHENTICATION_ERROR
      - name: ACCESS_TOKEN_EXPIRED
        description: The provided access token has expired.
        error-category: AUTHENTICATION_ERROR
      - name: ACCESS_TOKEN_REVOKED
        description: The provided access token has been revoked.
        error-category: AUTHENTICATION_ERROR
      - name: CLIENT_DISABLED
        description: The provided client has been disabled.
        error-category: AUTHENTICATION_ERROR
      - name: FORBIDDEN
        description: A general access error occurred.
        error-category: AUTHENTICATION_ERROR
      - name: INSUFFICIENT_SCOPES
        description: 'The provided access token does not have permission

          to execute the requested action.'
        error-category: AUTHENTICATION_ERROR
      - name: APPLICATION_DISABLED
        description: The calling application was disabled.
        error-category: INVALID_REQUEST_ERROR
      - name: V1_APPLICATION
        description: 'The calling application was created prior to

          2016-03-30 and is not compatible with v2 Square API calls.'
        error-category: INVALID_REQUEST_ERROR
      - name: V1_ACCESS_TOKEN
        description: 'The calling application is using an access token

          created prior to 2016-03-30 and is not compatible with v2 Square API

          calls.'
        error-category: INVALID_REQUEST_ERROR
      - name: CARD_PROCESSING_NOT_ENABLED
        description: 'The location provided in the API call is not

          enabled for credit card processing.'
        error-category: INVALID_REQUEST_ERROR
      - name: MERCHANT_SUBSCRIPTION_NOT_FOUND
        description: A required subscription was not found for the merchant
        error-category: MERCHANT_SUBSCRIPTION_ERROR
      - name: BAD_REQUEST
        description: A general error occurred with the request.
        error-category: INVALID_REQUEST_ERROR
      - name: MISSING_REQUIRED_PARAMETER
        description: 'The request is missing a required path, query, or

          body parameter.'
        error-category: INVALID_REQUEST_ERROR
      - name: INCORRECT_TYPE
        description: 'The value provided in the request is the wrong

          type. For example, a string instead of an integer.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_TIME
        description: 'Formatting for the provided time value is

          incorrect.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_TIME_RANGE
        description: 'The time range provided in the request is invalid.

          For example, the end time is before the start time.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_VALUE
        description: 'The provided value is invalid. For example,

          including `%` in a phone number.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_CURSOR
        description: 'The pagination cursor included in the request is

          invalid.'
        error-category: INVALID_REQUEST_ERROR
      - name: UNKNOWN_QUERY_PARAMETER
        description: 'The query parameters provided is invalid for the

          requested endpoint.'
        error-category: INVALID_REQUEST_ERROR
      - name: CONFLICTING_PARAMETERS
        description: 'One or more of the request parameters conflict with

          each other.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_JSON_BODY
        description: The request body is not a JSON object.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_SORT_ORDER
        description: 'The provided sort order is not a valid key.

          Currently, sort order must be `ASC` or `DESC`.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_REGEX_MISMATCH
        description: 'The provided value does not match an expected

          regular expression.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_SHORT
        description: 'The provided string value is shorter than the

          minimum length allowed.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_LONG
        description: 'The provided string value is longer than the

          maximum length allowed.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_LOW
        description: 'The provided value is less than the supported

          minimum.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_HIGH
        description: 'The provided value is greater than the supported

          maximum.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_EMPTY
        description: 'The provided value has a default (empty) value

          such as a blank string.'
        error-category: INVALID_REQUEST_ERROR
      - name: ARRAY_LENGTH_TOO_LONG
        description: The provided array has too many elements.
        error-category: INVALID_REQUEST_ERROR
      - name: ARRAY_LENGTH_TOO_SHORT
        description: The provided array has too few elements.
        error-category: INVALID_REQUEST_ERROR
      - name: ARRAY_EMPTY
        description: The provided array is empty.
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_BOOLEAN
        description: 'The endpoint expected the provided value to be a

          boolean.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_INTEGER
        description: 'The endpoint expected the provided value to be an

          integer.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_FLOAT
        description: 'The endpoint expected the provided value to be a

          float.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_STRING
        description: 'The endpoint expected the provided value to be a

          string.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_OBJECT
        description: 'The endpoint expected the provided value to be a

          JSON object.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_ARRAY
        description: 'The endpoint expected the provided value to be an

          array or list.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_MAP
        description: 'The endpoint expected the provided value to be a

          map or associative array.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_BASE64_ENCODED_BYTE_ARRAY
        description: 'The endpoint expected the provided value to be an

          array encoded in base64.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_ARRAY_VALUE
        description: 'One or more objects in the array does not match the

          array type.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_ENUM_VALUE
        description: 'The provided static string is not valid for the

          field.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_CONTENT_TYPE
        description: Invalid content type header.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_FORM_VALUE
        description: 'Only relevant for applications created prior to

          2016-03-30. Indicates there was an error while parsing form values.'
        error-category: INVALID_REQUEST_ERROR
      - name: CUSTOMER_NOT_FOUND
        description: The provided customer id can't be found in the merchant's customers list.
        error-category: INVALID_REQUEST_ERROR
      - name: ONE_INSTRUMENT_EXPECTED
        description: A general error occurred.
        error-category: INVALID_REQUEST_ERROR
      - name: NO_FIELDS_SET
        description: A general error occurred.
        error-category: INVALID_REQUEST_ERROR
      - name: TOO_MANY_MAP_ENTRIES
        description: Too many entries in the map field.
        error-category: INVALID_REQUEST_ERROR
      - name: MAP_KEY_LENGTH_TOO_SHORT
        description: The length of one of the provided keys in the map is too short.
        error-category: INVALID_REQUEST_ERROR
      - name: MAP_KEY_LENGTH_TOO_LONG
        description: The length of one of the provided keys in the map is too long.
        error-category: INVALID_REQUEST_ERROR
      - name: CUSTOMER_MISSING_NAME
        description: The provided customer does not have a recorded name.
        error-category: INVALID_REQUEST_ERROR
      - name: CUSTOMER_MISSING_EMAIL
        description: The provided customer does not have a recorded email.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_PAUSE_LENGTH
        description: The subscription cannot be paused longer than the duration of the current phase.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_DATE
        description: The subscription cannot be paused/resumed on the given date.
        error-category: INVALID_REQUEST_ERROR
      - name: UNSUPPORTED_COUNTRY
        description: The API request references an unsupported country.
        error-category: INVALID_REQUEST_ERROR
      - name: UNSUPPORTED_CURRENCY
        description: The API request references an unsupported currency.
        error-category: INVALID_REQUEST_ERROR
      - name: APPLE_TTP_PIN_TOKEN
        description: 'The payment was declined by the card issuer during an Apple Tap to Pay (TTP)

          transaction with a request for the card''s PIN. This code will be returned alongside

          `CARD_DECLINED_VERIFICATION_REQUIRED` as a supplemental error, and will include an

          issuer-provided token in the `details` field that is needed to initiate the PIN

          collection flow on the iOS device.'
        error-category: PAYMENT_METHOD_ERROR
      - name: CARD_EXPIRED
        description: The card issuer declined the request because the card is expired.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_EXPIRATION
        description: 'The expiration date for the payment card is invalid. For example,

          it indicates a date in the past.'
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_EXPIRATION_YEAR
        description: 'The expiration year for the payment card is invalid. For example,

          it indicates a year in the past or contains invalid characters.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_EXPIRATION_DATE
        description: 'The expiration date for the payment card is invalid. For example,

          it contains invalid characters.'
        error-category: INVALID_REQUEST_ERROR
      - name: UNSUPPORTED_CARD_BRAND
        description: The credit card provided is not from a supported issuer.
        error-category: PAYMENT_METHOD_ERROR
      - name: UNSUPPORTED_ENTRY_METHOD
        description: The entry method for the credit card (swipe, dip, tap) is not supported.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_ENCRYPTED_CARD
        description: The encrypted card information is invalid.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_CARD
        description: The credit card cannot be validated based on the provided details.
        error-category: PAYMENT_METHOD_ERROR
      - name: PAYMENT_AMOUNT_MISMATCH
        description: 'The payment was declined because there was a payment amount mismatch.

          The money amount Square was expecting does not match the amount provided.'
        error-category: PAYMENT_METHOD_ERROR
      - name: GENERIC_DECLINE
        description: 'Square received a decline without any additional information.

          If the payment information seems correct, the buyer can contact their

          issuer to ask for more information.'
        error-category: PAYMENT_METHOD_ERROR
      - name: CVV_FAILURE
        description: The card issuer declined the request because the CVV value is invalid.
        error-category: PAYMENT_METHOD_ERROR
      - name: ADDRESS_VERIFICATION_FAILURE
        description: The card issuer declined the request because the postal code is invalid.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_ACCOUNT
        description: The issuer was not

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