> This page is for Cash App Afterpay.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers-beta.cash.app/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers-beta.cash.app/_mcp/server.

### Schema (`response.body`)

```yaml
openapi: 3.1.0
info:
  title: API
  version: 1.0.0
paths:
  /dispute-schema-test:
    get:
      operationId: subpackageSchemas_get-dispute-schema-test
      summary: Get dispute Schema Test
      description: Dispute schema.
      tags:
        - subpackage_schemas
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/Schemas_get-dispute-schema-test_Response_200
tags:
  - name: subpackage_schemas
servers:
  - url: https://global-api-sandbox.afterpay.com
    description: Sandbox
  - url: https://global-api.afterpay.com
    description: Production
components:
  schemas:
    DisputeReason:
      type: string
      enum:
        - product_not_received
        - product_unacceptable
        - credit_not_processed
        - order_canceled
        - duplicate
        - incorrect_amount
        - paid_by_other_means
        - fraudulent
        - fraudulent_merchant
      description: The reason for the dispute.
      title: DisputeReason
    DisputeStatus:
      type: string
      enum:
        - needs_response
        - under_review
        - won
        - lost
        - merchant_refunded
        - merchant_voided
      description: >-
        The current state of the dispute. Values depend on how the dispute state
        machine is modeled.
      title: DisputeStatus
    DisputeClosingReason:
      type: string
      enum:
        - merchant_accepted
        - evidence_accepted
        - evidence_rejected
        - deadline_expired
        - customer_cancelled
      description: >-
        A reason indicating how the final decision on the dispute was reached.
        Recommended possible values listed in Closing Reasons.
      title: DisputeClosingReason
    meta:
      type: object
      properties:
        transactionAmount:
          type: string
          description: The transaction amount for the order.
        network:
          type: string
          description: >-
            The payment network used by the customer. (For example, `Visa` or
            `MasterCard`)
        networkReferenceId:
          type: string
          description: The identifier for the payment.
        orderType:
          type: string
          description: The type of order. `ONLINE` or `INSTORE`
      required:
        - transactionAmount
        - orderType
      title: meta
    dispute:
      type: object
      properties:
        id:
          type: string
          description: Dispute identifier
        order:
          type: string
          description: The token of the order that the dispute is for.
        amount:
          type: string
          description: The amount of the dispute
        reason:
          $ref: '#/components/schemas/DisputeReason'
          description: The reason for the dispute.
        status:
          $ref: '#/components/schemas/DisputeStatus'
          description: >-
            The current state of the dispute. Values depend on how the dispute
            state machine is modeled.
        open:
          type: boolean
          default: true
          description: '`True` if a final decision on the dispute hasn''t been made yet.'
        responseDueBy:
          type: string
          description: >-
            Deadline by which the merchant must respond to the dispute. (Epoch
            timestamp in seconds, timezone UTC +0.00)
        createdAt:
          type: string
          description: >-
            A timestamp indicating when the dispute was created. (Epoch
            timestamp in seconds, timezone UTC +0.00)
        openingNote:
          type: string
          description: >-
            Text from the customer describing why the dispute was opened or the
            reason for the complaint. While dispute category codes are helpful
            at informing what a merchant should present, it doesn’t provide
            reasoning behind the customer’s complaint. In some cases, this can
            help merchants troubleshoot the dispute directly with their
            customers.
        openingNoteAttachments:
          type: string
          description: >-
            Attachments to supplement the `openingNote` if the customer provided
            photos or screenshots as part of their dispute description.
        updatedAt:
          type: string
          description: >-
            Timestamp when the dispute was updated. (Epoch timestamp in seconds,
            timezone UTC +0.00)
        closingReason:
          $ref: '#/components/schemas/DisputeClosingReason'
          description: >-
            A reason indicating how the final decision on the dispute was
            reached. Recommended possible values listed in Closing Reasons.
        closingNote:
          type: string
          description: >-
            Text describing in detail how the final decision on the dispute was
            reached. This supplements the `closingReason`.
        merchantOrderId:
          type: string
          description: The identifier for the transaction on the merchant side.
        transactionDate:
          type: string
          description: >-
            The timestamp of the order created by the customer. (Epoch timestamp
            in seconds, timezone UTC +0.00)
        settlementAmount:
          type: string
          description: The settlementAmount for audit usage.
        meta:
          $ref: '#/components/schemas/meta'
          description: The extra information for merchants to match payment.
      required:
        - id
        - order
        - amount
        - reason
        - status
        - open
        - responseDueBy
        - createdAt
        - openingNote
        - closingReason
        - merchantOrderId
        - transactionDate
        - settlementAmount
      description: Dispute object
      title: dispute
    Schemas_get-dispute-schema-test_Response_200:
      type: object
      properties:
        dispute:
          $ref: '#/components/schemas/dispute'
      required:
        - dispute
      title: Schemas_get-dispute-schema-test_Response_200

```

**`Example`**

```json Example
{
  "id": "dp_N64jYg4RC4ZBUsXjLzE3W5",
  "order": "123456789",
  "amount": "48.46",
  "reason": "product_not_received",
  "status": "needs_response",
  "open": true,
  "responseDueBy": "1691884800",
  "createdAt": "1691880800",
  "openingNote": "Customer has no knowledge of the payment",
  "openingNoteAttachments": "[“fi_48vmw3sXdVqvtJGXbgKbAZ”]",
  "updatedAt": "1691884000",
  "closingReason": "merchant_accepted",
  "closingNote": "Merchant accepted the dispute",
  "merchantOrderId": "order54321",
  "transactionDate": "1691882800",
  "settlementAmount": "48.46",
  "meta": {
    "transactionAmount": "48.46",
    "network": "Visa",
    "networkReferenceId": "string",
    "orderType": "ONLINE"
  }
}
```