openapi: 3.2.0
info:
title: Network Disputes API
version: 1.0.0
servers:
- url: https://api.cash.app/network/v1
description: Production
- url: https://sandbox.api.cash.app/network/v1
description: Sandbox
tags:
- name: disputes
paths:
/disputes:
get:
operationId: list-disputes
summary: List disputes
description: 'Returns a list of all disputes (matching the given query parameters) associated with payments created by this client.
**This endpoint is rate limited to 50 QPS.**
Scopes: `DISPUTES_READ`'
tags:
- disputes
parameters:
- name: cursor
in: query
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.
required: false
schema:
type: string
- name: limit
in: query
description: Maximum number of disputes to return.
required: false
schema:
type: integer
default: 50
- name: merchant_id
in: query
description: Filters results to only include disputes filed against a merchant that matches the the given ID.
required: false
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_list-disputes_Response_200'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/disputes/{dispute_id}:
get:
operationId: retrieve-dispute
summary: Retrieve dispute
description: 'Retrieves a dispute by its ID.
**This endpoint is not rate limited.**
Scopes: `DISPUTES_READ`'
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_retrieve-dispute_Response_200'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/disputes/{dispute_id}/accept:
post:
operationId: accept-dispute
summary: Accept dispute
description: "Resolves a dispute by having the merchant accept responsibility for it. This leads to a \"loss\" of the dispute from the merchant's perspective, and a \"win\" of the dispute from the customer's perspective.\n\n \nAfter a dispute is accepted, the decision is final; it can never be changed.\n\n\n**This endpoint is not rate limited.**\n\nScopes: `DISPUTES_WRITE`"
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_accept-dispute_Response_200'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/disputes/{dispute_id}/challenge:
post:
operationId: challenge-dispute
summary: Challenge dispute
description: "Submits evidence uploaded to this dispute to Cash App Pay for review.\n\nAfter Cash App Pay reviews the dispute, a final decision will be reached and funds will be settled appropriately. If this endpoint is not called by the `response_due_at` timestamp, the merchant will automatically \"lose\" the dispute.\n\n \nChallenging a dispute does not guarantee that the merchant will \"win\" it. It only means that it will be reviewed, instead of being automatically accepted by the merchant.\n\n\n**This endpoint is not rate limited.**\n\nScopes: `DISPUTES_WRITE`"
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_challenge-dispute_Response_200'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/disputes/{dispute_id}/evidence:
get:
operationId: list-dispute-evidence
summary: List dispute evidence
description: 'Returns a list of all pieces of evidence associated with the given dispute.
**This endpoint is rate limited to 50 QPS.**
Scopes: `DISPUTES_READ`'
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: cursor
in: query
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.
required: false
schema:
type: string
- name: limit
in: query
description: Maximum number of pieces of dispute evidence to return
required: false
schema:
type: integer
default: 50
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_list-dispute-evidence_Response_200'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/disputes/{dispute_id}/evidence-text:
post:
operationId: create-dispute-evidence-text
summary: Create dispute evidence text
description: "Creates a piece of evidence for the given dispute from a blob of plain text, which can then be submitted with the [challenge dispute](Network-API.v1.yaml/paths/~1disputes~1{dispute_id}~1challenge) endpoint.\n\nIf you have more than 500 characters of text to submit as evidence, split it into multiple pieces where possible.\n\n \nUploading evidence does not challenge the dispute. Make sure to call the [challenge dispute](Network-API.v1.yaml/paths/~1disputes~1{dispute_id}~1challenge) endpoint before the `response_due_at` timestamp, or else the merchant will automatically \"lose\" the dispute.\n\n\n**This endpoint is not rate limited.**\n\nScopes: `DISPUTES_WRITE`"
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_create-dispute-evidence-text_Response_201'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
requestBody:
description: ''
content:
application/json:
schema:
type: object
properties:
idempotency_key:
$ref: '#/components/schemas/IdempotencyKey'
evidence:
$ref: '#/components/schemas/DisputesDisputeIdEvidenceTextPostRequestBodyContentApplicationJsonSchemaEvidence'
description: Details about the evidence to create.
required:
- idempotency_key
- evidence
/disputes/{dispute_id}/evidence-file:
post:
operationId: create-dispute-evidence-file
summary: Create dispute evidence file
description: "Uploads a binary file as a piece of evidence for the given dispute, which can then be submitted with the [challenge dispute](Network-API.v1.yaml/paths/~1disputes~1{dispute_id}~1challenge) endpoint.\n\nThe file must be one of the supported formats, or else it may not be usable to challenge the dispute:\n\n- `JPEG`\n- `HEIC`\n- `HEIF`\n- `PNG`\n- `PDF`\n- `TIFF`\n\n \nUploading evidence does not challenge the dispute. Make sure to call the [challenge dispute](Network-API.v1.yaml/paths/~1disputes~1{dispute_id}~1challenge) endpoint before the `response_due_at` timestamp, or else the merchant will automatically \"lose\" the dispute.\n\n\n**This endpoint is not rate limited.**\n\nScopes: `DISPUTES_WRITE`\n\n---\n\n### Example request payload (cURL)\n\nThe following example shows how to make a request to upload a dispute file. There are two \"parts\" of the request:\n\n- `request`, a JSON blob that contains details about the file to upload\n- `file`, which contains the binary data for the file to be uploaded.\n\nUsing `cURL` to make the request, the request would look like the example below. Please refer to documentation for your particular language / framework and `multipart/form-data` requests to see how you should implement it in your own codebase.\n\nPlease refer to [Signing Multipart Requests](https://developers.cash.app/docs/partner/technical-documentation/api-fundamentals/requests/signing-requests) to compute a signature for the request.\n\n```curl\ncurl --request POST 'https://sandbox.api.cash.app/network/v1/disputes/DSPT_ztqn5hd8wmrzjzavmf60pjbzf/evidence-file' \\\n--header 'Accept: application/json' \\\n--header 'Authorization: Client CLIENT_ID API_KEY_ID' \\\n--header 'Content-Type: multipart/form-data' \\\n--header 'X-Region: PDX' \\\n--form 'request={\n \"idempotency_key\": \"e445c3fb-2caa-46fd-b0d3-aa7c7b00ab41\",\n \"evidence\": {\n \"category\": \"AUTHORIZATION_DOCUMENTATION\",\n \"file\": {\n \"filename\": \"evidence.pdf\",\n \"content_type\": \"application/pdf\"\n }\n }\n}' \\\n--form 'signature=SIGNATURE' \\\n--form 'file=path-to-file.pdf' \n```"
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_create-dispute-evidence-file_Response_201'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
requestBody:
description: ''
content:
multipart/form-data:
schema:
type: object
properties:
request:
$ref: '#/components/schemas/DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequest'
description: JSON-encoded payload describing the contents of the file uploaded
file:
type: string
format: binary
description: 'Binary file to upload
Min size: `1 byte`
Max size: `5 megabytes`'
required:
- request
- file
/disputes/{dispute_id}/evidence/{evidence_id}:
delete:
operationId: delete-dispute-evidence
summary: Delete dispute evidence
description: 'Deletes a piece of dispute evidence by the ID of the dispute its for and its own ID.
**This endpoint is not rate limited.**
Scopes: `DISPUTES_WRITE`'
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: evidence_id
in: path
required: true
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_delete-dispute-evidence_Response_200'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
get:
operationId: retrieve-dispute-evidence
summary: Retrieve dispute evidence
description: 'Retrieves a piece of dispute evidence by the ID of the dispute its for and its own ID.
**This endpoint is not rate limited.**
Scopes: `DISPUTES_READ`'
tags:
- disputes
parameters:
- name: dispute_id
in: path
required: true
schema:
type: string
- name: evidence_id
in: path
required: true
schema:
type: string
- name: Accept
in: header
required: true
schema:
type: string
- name: X-Region
in: header
required: true
schema:
type: string
- name: X-Signature
in: header
required: true
schema:
type: string
- name: User-Agent
in: header
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Disputes_retrieve-dispute-evidence_Response_200'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
components:
schemas:
DisputeEvidenceFileContentType:
type: string
enum:
- application/pdf
- image/heic
- image/heif
- image/jpeg
- image/png
- image/tiff
description: 'The MIME type of the uploaded file.
Current values:
- `application/pdf`
- `image/heic`
- `image/heif`
- `image/jpeg`
- `image/png`
- `image/tiff`'
title: DisputeEvidenceFileContentType
DisputesDisputeIdEvidenceTextPostRequestBodyContentApplicationJsonSchemaEvidence:
type: object
properties:
category:
$ref: '#/components/schemas/DisputesDisputeIdEvidenceTextPostRequestBodyContentApplicationJsonSchemaEvidenceCategory'
description: 'Describes what type of information is contained in this piece of evidence.
Current values:
- `GENERIC_EVIDENCE`: Default evidence type used if no other category applies.
- `ONLINE_OR_APP_ACCESS_LOG`: Server or activity logs that show proof of the cardholder’s identity and that the cardholder successfully ordered and received the goods (digitally or otherwise). Example evidence includes IP addresses, corresponding timestamps/dates, cardholder’s name and email address linked to a cardholder profile held by the seller, proof the same device and card (used in dispute) were previously used in prior undisputed transaction, and any related detailed activity.
- `AUTHORIZATION_DOCUMENTATION`: **[File Only]** Evidence that the cardholder did provide authorization for the charge. Example evidence includes a signed credit card authorization.
- `CANCELLATION_OR_REFUND_DOCUMENTATION`: Evidence that the cardholder acknowledged your refund or cancellation policy. Example evidence includes a signature or checkbox showing the cardholder’s acknowledgement of your refund or cancellation policy.
- `CARDHOLDER_COMMUNICATION`: **[File Only]** Evidence that shows relevant communication with the cardholder. Example evidence includes emails or texts that show the cardholder received goods/services or demonstrate cardholder satisfaction.
- `CARDHOLDER_INFORMATION`: Evidence that validates the customer''s identity. Example evidence includes personally identifiable details such as name, email address, purchaser IP address, and a copy of the cardholder ID.
- `PURCHASE_ACKNOWLEDGEMENT`: Evidence that shows proof of the sale/transaction. Example evidence includes an invoice, contract, or other item showing the customer’s acknowledgement of the purchase and your terms.
- `DUPLICATE_CHARGE_DOCUMENTATION`: **[File Only]** Evidence that shows the charges in question are valid and distinct from one another. Example evidence includes receipts, shipping labels, and invoices along with their distinct payment IDs.
- `PRODUCT_OR_SERVICE_DESCRIPTION`: A description of the product or service sold.
- `RECEIPT`: A receipt or message sent to the cardholder detailing the charge. Note: You do not need to upload the Square receipt; Square submits the receipt on your behalf.
- `SERVICE_RECEIVED_DOCUMENTATION`: Evidence that the service was provided to the cardholder or the expected date that services will be rendered. Example evidence includes a signed delivery form, work order, expected delivery date, or other written agreements.
- `PROOF_OF_DELIVERY_DOCUMENTATION`: Evidence that shows the product was provided to the cardholder or the expected date of delivery. Example evidence includes a signed delivery form or written agreement acknowledging receipt of the goods or services.
- `RELATED_TRANSACTION_DOCUMENTATION`: Evidence that shows the cardholder previously processed transactions on the same card and did not dispute them.
- `REBUTTAL_EXPLANATION`: An explanation of why the cardholder’s claim is invalid. Example evidence includes an explanation of why each distinct charge is a legitimate purchase, why the cardholder’s claim for credit owed due to their attempt to cancel, return, or refund is invalid per your stated policy and cardholder agreement, or an explanation of how the cardholder did not attempt to remedy the issue with you first to receive credit.
- `TRACKING_NUMBER`: The tracking number for the order provided by the shipping carrier. If you have multiple numbers, they need to be submitted individually as separate pieces of evidence.'
text:
type: string
description: The blob of text to upload as evidence.
metadata:
$ref: '#/components/schemas/Metadata'
required:
- category
- text
description: Details about the evidence to create.
title: DisputesDisputeIdEvidenceTextPostRequestBodyContentApplicationJsonSchemaEvidence
DisputeSettlementWithholding:
type: string
enum:
- NOT_WITHHELD
- WITHHELD_ALREADY
description: 'Indicates if the disputed amount has already been withheld from a settlement or not.
Current values:
- `NOT_WITHHELD`: The disputed amount has not yet been withheld in a settlement. It may impact future settlements if the dispute is "lost" by the merchant.
- `WITHHELD_ALREADY`: The disputed amount was withheld in a prior settlement. This dispute will not impact future settlements.'
title: DisputeSettlementWithholding
Disputes_retrieve-dispute_Response_200:
type: object
properties:
dispute:
$ref: '#/components/schemas/Dispute'
required:
- dispute
title: Disputes_retrieve-dispute_Response_200
Disputes_create-dispute-evidence-text_Response_201:
type: object
properties:
evidence:
$ref: '#/components/schemas/DisputeEvidence'
title: Disputes_create-dispute-evidence-text_Response_201
DisputeEvidenceType:
type: string
enum:
- FILE
- TEXT
description: 'Indicates if the evidence is a file or plain text.
Current values:
- `TEXT`: The evidence is a blob of text under 500 characters.
- `FILE`: The evidence is an uploaded binary file.'
title: DisputeEvidenceType
DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequest:
type: object
properties:
idempotency_key:
$ref: '#/components/schemas/IdempotencyKey'
evidence:
$ref: '#/components/schemas/DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidence'
description: Details about the evidence to create.
description: JSON-encoded payload describing the contents of the file uploaded
title: DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequest
DisputesDisputeIdEvidenceTextPostRequestBodyContentApplicationJsonSchemaEvidenceCategory:
type: string
enum:
- GENERIC_EVIDENCE
- ONLINE_OR_APP_ACCESS_LOG
- AUTHORIZATION_DOCUMENTATION
- CANCELLATION_OR_REFUND_DOCUMENTATION
- CARDHOLDER_COMMUNICATION
- CARDHOLDER_INFORMATION
- PURCHASE_ACKNOWLEDGEMENT
- DUPLICATE_CHARGE_DOCUMENTATION
- PRODUCT_OR_SERVICE_DESCRIPTION
- RECEIPT
- SERVICE_RECEIVED_DOCUMENTATION
- PROOF_OF_DELIVERY_DOCUMENTATION
- RELATED_TRANSACTION_DOCUMENTATION
- REBUTTAL_EXPLANATION
- TRACKING_NUMBER
description: 'Describes what type of information is contained in this piece of evidence.
Current values:
- `GENERIC_EVIDENCE`: Default evidence type used if no other category applies.
- `ONLINE_OR_APP_ACCESS_LOG`: Server or activity logs that show proof of the cardholder’s identity and that the cardholder successfully ordered and received the goods (digitally or otherwise). Example evidence includes IP addresses, corresponding timestamps/dates, cardholder’s name and email address linked to a cardholder profile held by the seller, proof the same device and card (used in dispute) were previously used in prior undisputed transaction, and any related detailed activity.
- `AUTHORIZATION_DOCUMENTATION`: **[File Only]** Evidence that the cardholder did provide authorization for the charge. Example evidence includes a signed credit card authorization.
- `CANCELLATION_OR_REFUND_DOCUMENTATION`: Evidence that the cardholder acknowledged your refund or cancellation policy. Example evidence includes a signature or checkbox showing the cardholder’s acknowledgement of your refund or cancellation policy.
- `CARDHOLDER_COMMUNICATION`: **[File Only]** Evidence that shows relevant communication with the cardholder. Example evidence includes emails or texts that show the cardholder received goods/services or demonstrate cardholder satisfaction.
- `CARDHOLDER_INFORMATION`: Evidence that validates the customer''s identity. Example evidence includes personally identifiable details such as name, email address, purchaser IP address, and a copy of the cardholder ID.
- `PURCHASE_ACKNOWLEDGEMENT`: Evidence that shows proof of the sale/transaction. Example evidence includes an invoice, contract, or other item showing the customer’s acknowledgement of the purchase and your terms.
- `DUPLICATE_CHARGE_DOCUMENTATION`: **[File Only]** Evidence that shows the charges in question are valid and distinct from one another. Example evidence includes receipts, shipping labels, and invoices along with their distinct payment IDs.
- `PRODUCT_OR_SERVICE_DESCRIPTION`: A description of the product or service sold.
- `RECEIPT`: A receipt or message sent to the cardholder detailing the charge. Note: You do not need to upload the Square receipt; Square submits the receipt on your behalf.
- `SERVICE_RECEIVED_DOCUMENTATION`: Evidence that the service was provided to the cardholder or the expected date that services will be rendered. Example evidence includes a signed delivery form, work order, expected delivery date, or other written agreements.
- `PROOF_OF_DELIVERY_DOCUMENTATION`: Evidence that shows the product was provided to the cardholder or the expected date of delivery. Example evidence includes a signed delivery form or written agreement acknowledging receipt of the goods or services.
- `RELATED_TRANSACTION_DOCUMENTATION`: Evidence that shows the cardholder previously processed transactions on the same card and did not dispute them.
- `REBUTTAL_EXPLANATION`: An explanation of why the cardholder’s claim is invalid. Example evidence includes an explanation of why each distinct charge is a legitimate purchase, why the cardholder’s claim for credit owed due to their attempt to cancel, return, or refund is invalid per your stated policy and cardholder agreement, or an explanation of how the cardholder did not attempt to remedy the issue with you first to receive credit.
- `TRACKING_NUMBER`: The tracking number for the order provided by the shipping carrier. If you have multiple numbers, they need to be submitted individually as separate pieces of evidence.'
title: DisputesDisputeIdEvidenceTextPostRequestBodyContentApplicationJsonSchemaEvidenceCategory
Error:
type: object
properties:
category:
$ref: '#/components/schemas/ErrorCategory'
description: The high-level reason the error occurred.
code:
type: string
description: 'A unique identifier for the specific type of error that occurred. For more information, see [Error Code Reference](/cash-app-pay-partner-api/guides/technical-guides/api-fundamentals/errors/error-code-reference).
Min length: `1`'
detail:
type: string
description: 'Human-readable description of why the error occurred and how to resolve it.
Min length: `1`'
field:
type: string
description: 'The field in the request that caused the error, using array and object dot notation.
Min length: `1`'
required:
- category
- code
description: Represents an error encountered during a request to the API.
title: Error
DisputeEvidenceCategory:
type: string
enum:
- GENERIC_EVIDENCE
- ONLINE_OR_APP_ACCESS_LOG
- AUTHORIZATION_DOCUMENTATION
- CANCELLATION_OR_REFUND_DOCUMENTATION
- CARDHOLDER_COMMUNICATION
- CARDHOLDER_INFORMATION
- PURCHASE_ACKNOWLEDGEMENT
- DUPLICATE_CHARGE_DOCUMENTATION
- PRODUCT_OR_SERVICE_DESCRIPTION
- RECEIPT
- SERVICE_RECEIVED_DOCUMENTATION
- PROOF_OF_DELIVERY_DOCUMENTATION
- RELATED_TRANSACTION_DOCUMENTATION
- REBUTTAL_EXPLANATION
- TRACKING_NUMBER
description: 'Describes what type of information is contained in this piece of evidence.
Current values:
- `GENERIC_EVIDENCE`: Default evidence type used if no other category applies.
- `ONLINE_OR_APP_ACCESS_LOG`: Server or activity logs that show proof of the cardholder’s identity and that the cardholder successfully ordered and received the goods (digitally or otherwise). Example evidence includes IP addresses, corresponding timestamps/dates, cardholder’s name and email address linked to a cardholder profile held by the seller, proof the same device and card (used in dispute) were previously used in prior undisputed transaction, and any related detailed activity.
- `AUTHORIZATION_DOCUMENTATION`: **[File Only]** Evidence that the cardholder did provide authorization for the charge. Example evidence includes a signed credit card authorization.
- `CANCELLATION_OR_REFUND_DOCUMENTATION`: Evidence that the cardholder acknowledged your refund or cancellation policy. Example evidence includes a signature or checkbox showing the cardholder’s acknowledgement of your refund or cancellation policy.
- `CARDHOLDER_COMMUNICATION`: **[File Only]** Evidence that shows relevant communication with the cardholder. Example evidence includes emails or texts that show the cardholder received goods/services or demonstrate cardholder satisfaction.
- `CARDHOLDER_INFORMATION`: Evidence that validates the customer''s identity. Example evidence includes personally identifiable details such as name, email address, purchaser IP address, and a copy of the cardholder ID.
- `PURCHASE_ACKNOWLEDGEMENT`: Evidence that shows proof of the sale/transaction. Example evidence includes an invoice, contract, or other item showing the customer’s acknowledgement of the purchase and your terms.
- `DUPLICATE_CHARGE_DOCUMENTATION`: **[File Only]** Evidence that shows the charges in question are valid and distinct from one another. Example evidence includes receipts, shipping labels, and invoices along with their distinct payment IDs.
- `PRODUCT_OR_SERVICE_DESCRIPTION`: A description of the product or service sold.
- `RECEIPT`: A receipt or message sent to the cardholder detailing the charge. Note: You do not need to upload the Square receipt; Square submits the receipt on your behalf.
- `SERVICE_RECEIVED_DOCUMENTATION`: Evidence that the service was provided to the cardholder or the expected date that services will be rendered. Example evidence includes a signed delivery form, work order, expected delivery date, or other written agreements.
- `PROOF_OF_DELIVERY_DOCUMENTATION`: Evidence that shows the product was provided to the cardholder or the expected date of delivery. Example evidence includes a signed delivery form or written agreement acknowledging receipt of the goods or services.
- `RELATED_TRANSACTION_DOCUMENTATION`: Evidence that shows the cardholder previously processed transactions on the same card and did not dispute them.
- `REBUTTAL_EXPLANATION`: An explanation of why the cardholder’s claim is invalid. Example evidence includes an explanation of why each distinct charge is a legitimate purchase, why the cardholder’s claim for credit owed due to their attempt to cancel, return, or refund is invalid per your stated policy and cardholder agreement, or an explanation of how the cardholder did not attempt to remedy the issue with you first to receive credit.
- `TRACKING_NUMBER`: The tracking number for the order provided by the shipping carrier. If you have multiple numbers, they need to be submitted individually as separate pieces of evidence.'
title: DisputeEvidenceCategory
Disputes_challenge-dispute_Response_200:
type: object
properties:
dispute:
$ref: '#/components/schemas/Dispute'
required:
- dispute
title: Disputes_challenge-dispute_Response_200
ErrorCategory:
type: string
enum:
- API_ERROR
- AUTHENTICATION_ERROR
- BRAND_ERROR
- DISPUTE_ERROR
- MERCHANT_ERROR
- INVALID_REQUEST_ERROR
- PAYMENT_PROCESSING_ERROR
- RATE_LIMIT_ERROR
- WEBHOOK_ERROR
- API_KEY_ERROR
- GRANT_ERROR
description: The high-level reason the error occurred.
title: ErrorCategory
IdempotencyKey:
type: string
description: A unique identifier which can be used by Cash App to de-duplicate retries of this request, making it idempotent. For more information, see [Idempotency](/cash-app-pay-partner-api/guides/technical-guides/api-fundamentals/idempotency).
title: IdempotencyKey
Disputes_list-dispute-evidence_Response_200:
type: object
properties:
evidence:
type: array
items:
$ref: '#/components/schemas/DisputeEvidence'
description: List of pieces of evidence for the dispute matching the given query parameters
cursor:
type: string
description: The pagination cursor to be used in a subsequent request. If empty, this is the final response.
required:
- evidence
title: Disputes_list-dispute-evidence_Response_200
ErrorResponse:
type: object
properties:
errors:
type: array
items:
$ref: '#/components/schemas/Error'
description: 'A list of errors that occurred while processing the request.
Min number of items: `1`'
required:
- errors
title: ErrorResponse
DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceCategory:
type: string
enum:
- GENERIC_EVIDENCE
- ONLINE_OR_APP_ACCESS_LOG
- AUTHORIZATION_DOCUMENTATION
- CANCELLATION_OR_REFUND_DOCUMENTATION
- CARDHOLDER_COMMUNICATION
- CARDHOLDER_INFORMATION
- PURCHASE_ACKNOWLEDGEMENT
- DUPLICATE_CHARGE_DOCUMENTATION
- PRODUCT_OR_SERVICE_DESCRIPTION
- RECEIPT
- SERVICE_RECEIVED_DOCUMENTATION
- PROOF_OF_DELIVERY_DOCUMENTATION
- RELATED_TRANSACTION_DOCUMENTATION
- REBUTTAL_EXPLANATION
- TRACKING_NUMBER
description: 'Describes what type of information is contained in this piece of evidence.
Current values:
- `GENERIC_EVIDENCE`: Default evidence type used if no other category applies.
- `ONLINE_OR_APP_ACCESS_LOG`: Server or activity logs that show proof of the cardholder’s identity and that the cardholder successfully ordered and received the goods (digitally or otherwise). Example evidence includes IP addresses, corresponding timestamps/dates, cardholder’s name and email address linked to a cardholder profile held by the seller, proof the same device and card (used in dispute) were previously used in prior undisputed transaction, and any related detailed activity.
- `AUTHORIZATION_DOCUMENTATION`: **[File Only]** Evidence that the cardholder did provide authorization for the charge. Example evidence includes a signed credit card authorization.
- `CANCELLATION_OR_REFUND_DOCUMENTATION`: Evidence that the cardholder acknowledged your refund or cancellation policy. Example evidence includes a signature or checkbox showing the cardholder’s acknowledgement of your refund or cancellation policy.
- `CARDHOLDER_COMMUNICATION`: **[File Only]** Evidence that shows relevant communication with the cardholder. Example evidence includes emails or texts that show the cardholder received goods/services or demonstrate cardholder satisfaction.
- `CARDHOLDER_INFORMATION`: Evidence that validates the customer''s identity. Example evidence includes personally identifiable details such as name, email address, purchaser IP address, and a copy of the cardholder ID.
- `PURCHASE_ACKNOWLEDGEMENT`: Evidence that shows proof of the sale/transaction. Example evidence includes an invoice, contract, or other item showing the customer’s acknowledgement of the purchase and your terms.
- `DUPLICATE_CHARGE_DOCUMENTATION`: **[File Only]** Evidence that shows the charges in question are valid and distinct from one another. Example evidence includes receipts, shipping labels, and invoices along with their distinct payment IDs.
- `PRODUCT_OR_SERVICE_DESCRIPTION`: A description of the product or service sold.
- `RECEIPT`: A receipt or message sent to the cardholder detailing the charge. Note: You do not need to upload the Square receipt; Square submits the receipt on your behalf.
- `SERVICE_RECEIVED_DOCUMENTATION`: Evidence that the service was provided to the cardholder or the expected date that services will be rendered. Example evidence includes a signed delivery form, work order, expected delivery date, or other written agreements.
- `PROOF_OF_DELIVERY_DOCUMENTATION`: Evidence that shows the product was provided to the cardholder or the expected date of delivery. Example evidence includes a signed delivery form or written agreement acknowledging receipt of the goods or services.
- `RELATED_TRANSACTION_DOCUMENTATION`: Evidence that shows the cardholder previously processed transactions on the same card and did not dispute them.
- `REBUTTAL_EXPLANATION`: An explanation of why the cardholder’s claim is invalid. Example evidence includes an explanation of why each distinct charge is a legitimate purchase, why the cardholder’s claim for credit owed due to their attempt to cancel, return, or refund is invalid per your stated policy and cardholder agreement, or an explanation of how the cardholder did not attempt to remedy the issue with you first to receive credit.
- `TRACKING_NUMBER`: The tracking number for the order provided by the shipping carrier. If you have multiple numbers, they need to be submitted individually as separate pieces of evidence.'
title: DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceCategory
Dispute:
type: object
properties:
id:
type: string
description: 'A unique identifier for the dispute issued by Cash App.
Min length: `1`
Max length: `128`'
payment_id:
type: string
description: 'ID of the disputed payment.
Min length: `1`
Max length: `128`'
amount:
type: integer
description: 'Amount of disputed money, in the lowest denomination of currency on the associated payment.
Min value: `1`'
customer_credited_amount:
type:
- integer
- 'null'
description: "The amount credited to the Customer after resolving the dispute. \n\nNote: The amount will be in the lowest denomination of the currency used on the associated payment.\n\nMin value: `0`"
reason:
$ref: '#/components/schemas/DisputeReason'
description: '4-digit code consisting of 2 letters followed by 2 numbers that indicates why the dispute was created, at a high level.
Current values:
- `FR10`: Customer has no knowledge of the payment.
- `FR11`: Customer has no knowledge of the payment and liability has shifted to the merchant due to collusion, fraud monitoring program thresholds, or any other reason.
- `PE10`: Payment was processed twice.
- `PE11`: Payment amount differs from agreed amount.
- `PE12`: Payment was paid for by another means.
- `CD10`: Cancelled services.
- `CD11`: Goods or services differ from what was agreed upon for the payment.
- `CD12`: The goods or services were not received.
- `CD13`: The purchase was cancelled or returned, but the refund has not been processed.'
settlement_withholding:
$ref: '#/components/schemas/DisputeSettlementWithholding'
description: 'Indicates if the disputed amount has already been withheld from a settlement or not.
Current values:
- `NOT_WITHHELD`: The disputed amount has not yet been withheld in a settlement. It may impact future settlements if the dispute is "lost" by the merchant.
- `WITHHELD_ALREADY`: The disputed amount was withheld in a prior settlement. This dispute will not impact future settlements.'
state:
$ref: '#/components/schemas/DisputeState'
description: 'The step in the dispute lifecycle that this dispute is currently at:
- `RESPONSE_REQUIRED`
- `NO_RESPONSE_REQUIRED`
- `PROCESSING`
- `ACCEPTED`
- `WON`
- `PARTIALLY_WON`
- `LOST`'
created_at:
type: string
format: date-time
description: When this dispute was created, in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC).
response_due_at:
type:
- string
- 'null'
format: date-time
description: When the dispute must be challenged by, after which it will be automatically accepted, in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC).
updated_at:
type: string
format: date-time
description: When this dispute was last updated, in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC).
merchant_id:
type: string
description: 'ID of the merchant that collected the disputed payment.
Min length: `1`
Max length: `128`'
required:
- id
- payment_id
- amount
- reason
- settlement_withholding
- state
- created_at
- updated_at
- merchant_id
description: Represents a dispute initiated by a customer within Cash App or the customer's linked bank
title: Dispute
Metadata:
type: object
additionalProperties:
type: string
description: 'Freeform key-value pairs of arbitrary data associated with this resource.
Keys and values must be passed as strings and not contain any personally identifiable information (PII).
Min keys: `0`
Max keys: `50`
> Note: Nested keys are not supported.'
title: Metadata
DisputeEvidence:
type: object
properties:
id:
type: string
description: 'A unique identifier for the dispute evidence issued by Cash App.
Min length: `1`
Max length: `128`'
dispute_id:
type: string
description: 'ID of the dispute this evidence is associated with.
Min length: `1`
Max length: `128`'
category:
$ref: '#/components/schemas/DisputeEvidenceCategory'
description: 'Describes what type of information is contained in this piece of evidence.
Current values:
- `GENERIC_EVIDENCE`: Default evidence type used if no other category applies.
- `ONLINE_OR_APP_ACCESS_LOG`: Server or activity logs that show proof of the cardholder’s identity and that the cardholder successfully ordered and received the goods (digitally or otherwise). Example evidence includes IP addresses, corresponding timestamps/dates, cardholder’s name and email address linked to a cardholder profile held by the seller, proof the same device and card (used in dispute) were previously used in prior undisputed transaction, and any related detailed activity.
- `AUTHORIZATION_DOCUMENTATION`: **[File Only]** Evidence that the cardholder did provide authorization for the charge. Example evidence includes a signed credit card authorization.
- `CANCELLATION_OR_REFUND_DOCUMENTATION`: Evidence that the cardholder acknowledged your refund or cancellation policy. Example evidence includes a signature or checkbox showing the cardholder’s acknowledgement of your refund or cancellation policy.
- `CARDHOLDER_COMMUNICATION`: **[File Only]** Evidence that shows relevant communication with the cardholder. Example evidence includes emails or texts that show the cardholder received goods/services or demonstrate cardholder satisfaction.
- `CARDHOLDER_INFORMATION`: Evidence that validates the customer''s identity. Example evidence includes personally identifiable details such as name, email address, purchaser IP address, and a copy of the cardholder ID.
- `PURCHASE_ACKNOWLEDGEMENT`: Evidence that shows proof of the sale/transaction. Example evidence includes an invoice, contract, or other item showing the customer’s acknowledgement of the purchase and your terms.
- `DUPLICATE_CHARGE_DOCUMENTATION`: **[File Only]** Evidence that shows the charges in question are valid and distinct from one another. Example evidence includes receipts, shipping labels, and invoices along with their distinct payment IDs.
- `PRODUCT_OR_SERVICE_DESCRIPTION`: A description of the product or service sold.
- `RECEIPT`: A receipt or message sent to the cardholder detailing the charge. Note: You do not need to upload the Square receipt; Square submits the receipt on your behalf.
- `SERVICE_RECEIVED_DOCUMENTATION`: Evidence that the service was provided to the cardholder or the expected date that services will be rendered. Example evidence includes a signed delivery form, work order, expected delivery date, or other written agreements.
- `PROOF_OF_DELIVERY_DOCUMENTATION`: Evidence that shows the product was provided to the cardholder or the expected date of delivery. Example evidence includes a signed delivery form or written agreement acknowledging receipt of the goods or services.
- `RELATED_TRANSACTION_DOCUMENTATION`: Evidence that shows the cardholder previously processed transactions on the same card and did not dispute them.
- `REBUTTAL_EXPLANATION`: An explanation of why the cardholder’s claim is invalid. Example evidence includes an explanation of why each distinct charge is a legitimate purchase, why the cardholder’s claim for credit owed due to their attempt to cancel, return, or refund is invalid per your stated policy and cardholder agreement, or an explanation of how the cardholder did not attempt to remedy the issue with you first to receive credit.
- `TRACKING_NUMBER`: The tracking number for the order provided by the shipping carrier. If you have multiple numbers, they need to be submitted individually as separate pieces of evidence.'
file:
$ref: '#/components/schemas/DisputeEvidenceFile'
description: If the evidence is of type `FILE`, contains metadata about the binary file uploaded as evidence.
text:
type: string
description: 'If the evidence is of type `TEXT`, contains the blob of text created as evidence.
Min length: `1`
Max length: `500`'
type:
$ref: '#/components/schemas/DisputeEvidenceType'
description: 'Indicates if the evidence is a file or plain text.
Current values:
- `TEXT`: The evidence is a blob of text under 500 characters.
- `FILE`: The evidence is an uploaded binary file.'
created_at:
type: string
format: date-time
description: When this evidence was created, in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC).
metadata:
$ref: '#/components/schemas/Metadata'
required:
- id
- dispute_id
- category
- type
- created_at
title: DisputeEvidence
DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidence:
type: object
properties:
category:
$ref: '#/components/schemas/DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceCategory'
description: 'Describes what type of information is contained in this piece of evidence.
Current values:
- `GENERIC_EVIDENCE`: Default evidence type used if no other category applies.
- `ONLINE_OR_APP_ACCESS_LOG`: Server or activity logs that show proof of the cardholder’s identity and that the cardholder successfully ordered and received the goods (digitally or otherwise). Example evidence includes IP addresses, corresponding timestamps/dates, cardholder’s name and email address linked to a cardholder profile held by the seller, proof the same device and card (used in dispute) were previously used in prior undisputed transaction, and any related detailed activity.
- `AUTHORIZATION_DOCUMENTATION`: **[File Only]** Evidence that the cardholder did provide authorization for the charge. Example evidence includes a signed credit card authorization.
- `CANCELLATION_OR_REFUND_DOCUMENTATION`: Evidence that the cardholder acknowledged your refund or cancellation policy. Example evidence includes a signature or checkbox showing the cardholder’s acknowledgement of your refund or cancellation policy.
- `CARDHOLDER_COMMUNICATION`: **[File Only]** Evidence that shows relevant communication with the cardholder. Example evidence includes emails or texts that show the cardholder received goods/services or demonstrate cardholder satisfaction.
- `CARDHOLDER_INFORMATION`: Evidence that validates the customer''s identity. Example evidence includes personally identifiable details such as name, email address, purchaser IP address, and a copy of the cardholder ID.
- `PURCHASE_ACKNOWLEDGEMENT`: Evidence that shows proof of the sale/transaction. Example evidence includes an invoice, contract, or other item showing the customer’s acknowledgement of the purchase and your terms.
- `DUPLICATE_CHARGE_DOCUMENTATION`: **[File Only]** Evidence that shows the charges in question are valid and distinct from one another. Example evidence includes receipts, shipping labels, and invoices along with their distinct payment IDs.
- `PRODUCT_OR_SERVICE_DESCRIPTION`: A description of the product or service sold.
- `RECEIPT`: A receipt or message sent to the cardholder detailing the charge. Note: You do not need to upload the Square receipt; Square submits the receipt on your behalf.
- `SERVICE_RECEIVED_DOCUMENTATION`: Evidence that the service was provided to the cardholder or the expected date that services will be rendered. Example evidence includes a signed delivery form, work order, expected delivery date, or other written agreements.
- `PROOF_OF_DELIVERY_DOCUMENTATION`: Evidence that shows the product was provided to the cardholder or the expected date of delivery. Example evidence includes a signed delivery form or written agreement acknowledging receipt of the goods or services.
- `RELATED_TRANSACTION_DOCUMENTATION`: Evidence that shows the cardholder previously processed transactions on the same card and did not dispute them.
- `REBUTTAL_EXPLANATION`: An explanation of why the cardholder’s claim is invalid. Example evidence includes an explanation of why each distinct charge is a legitimate purchase, why the cardholder’s claim for credit owed due to their attempt to cancel, return, or refund is invalid per your stated policy and cardholder agreement, or an explanation of how the cardholder did not attempt to remedy the issue with you first to receive credit.
- `TRACKING_NUMBER`: The tracking number for the order provided by the shipping carrier. If you have multiple numbers, they need to be submitted individually as separate pieces of evidence.'
file:
$ref: '#/components/schemas/DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceFile'
description: Metadata about the uploaded file.
metadata:
$ref: '#/components/schemas/Metadata'
required:
- category
- file
description: Details about the evidence to create.
title: DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidence
DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceFile:
type: object
properties:
filename:
type: string
description: Name of the uploaded file. It should be descriptive enough to indicate what type of information is contained in the uploaded file.
content_type:
$ref: '#/components/schemas/DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceFileContentType'
description: 'The MIME type of the uploaded file.
Current values:
- `application/pdf`
- `image/heic`
- `image/heif`
- `image/jpeg`
- `image/png`
- `image/tiff`'
required:
- filename
- content_type
description: Metadata about the uploaded file.
title: DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceFile
Disputes_create-dispute-evidence-file_Response_201:
type: object
properties:
evidence:
$ref: '#/components/schemas/DisputeEvidence'
required:
- evidence
title: Disputes_create-dispute-evidence-file_Response_201
DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceFileContentType:
type: string
enum:
- application/pdf
- image/png
- image/jpeg
- image/heic
- image/heif
- image/tiff
description: 'The MIME type of the uploaded file.
Current values:
- `application/pdf`
- `image/heic`
- `image/heif`
- `image/jpeg`
- `image/png`
- `image/tiff`'
title: DisputesDisputeIdEvidenceFilePostRequestBodyContentMultipartFormDataSchemaRequestEvidenceFileContentType
Disputes_list-disputes_Response_200:
type: object
properties:
disputes:
type: array
items:
$ref: '#/components/schemas/Dispute'
description: List of disputes matching the given query parameters.
cursor:
type: string
description: The pagination cursor to be used in a subsequent request. If empty, this is the final response.
required:
- disputes
title: Disputes_list-disputes_Response_200
DisputeState:
type: string
enum:
- RESPONSE_REQUIRED
- NO_RESPONSE_REQUIRED
- PROCESSING
- ACCEPTED
- WON
- PARTIALLY_WON
- LOST
description: 'The step in the dispute lifecycle that this dispute is currently at:
- `RESPONSE_REQUIRED`
- `NO_RESPONSE_REQUIRED`
- `PROCESSING`
- `ACCEPTED`
- `WON`
- `PARTIALLY_WON`
- `LOST`'
title: DisputeState
Disputes_delete-dispute-evidence_Response_200:
type: object
properties: {}
description: Empty response body
title: Disputes_delete-dispute-evidence_Response_200
DisputeEvidenceFile:
type: object
properties:
filename:
type: string
description: Name of the uploaded file. It should be descriptive enough to indicate what type of information is contained in the uploaded file.
content_type:
$ref: '#/components/schemas/DisputeEvidenceFileContentType'
description: 'The MIME type of the uploaded file.
Current values:
- `application/pdf`
- `image/heic`
- `image/heif`
- `image/jpeg`
- `image/png`
- `image/tiff`'
required:
- filename
- content_type
description: If the evidence is of type `FILE`, contains metadata about the binary file uploaded as evidence.
title: DisputeEvidenceFile
Disputes_accept-dispute_Response_200:
type: object
properties:
dispute:
$ref: '#/components/schemas/Dispute'
title: Disputes_accept-dispute_Response_200
DisputeReason:
type: string
enum:
- FR10
- FR11
- PE10
- PE11
- PE12
- CD10
- CD11
- CD13
description: '4-digit code consisting of 2 letters followed by 2 numbers that indicates why the dispute was created, at a high level.
Current values:
- `FR10`: Customer has no knowledge of the payment.
- `FR11`: Customer has no knowledge of the payment and liability has shifted to the merchant due to collusion, fraud monitoring program thresholds, or any other reason.
- `PE10`: Payment was processed twice.
- `PE11`: Payment amount differs from agreed amount.
- `PE12`: Payment was paid for by another means.
- `CD10`: Cancelled services.
- `CD11`: Goods or services differ from what was agreed upon for the payment.
- `CD12`: The goods or services were not received.
- `CD13`: The purchase was cancelled or returned, but the refund has not been processed.'
title: DisputeReason
Disputes_retrieve-dispute-evidence_Response_200:
type: object
properties:
evidence:
$ref: '#/components/schemas/DisputeEvidence'
required:
- evidence
title: Disputes_retrieve-dispute-evidence_Response_200