Skip to main content

Fulfill a retrieval request

 You can request J.P. Morgan to fulfill a retrieval request by sending a POST request to /disputes/{disputeId}/fulfill endpoint. This applies only to retrieval requests and not chargebacks. Include your documentation in support of the retrieval request in your fulfillment request. See documentation parameters.

Important request fields

Important required request fields
Request Field Name                                                               
Description Required Location                                        
disputeId This path parameter is a unique identifier assigned by J.P. Morgan to track each inquiry or case created for a transaction dispute on an account. Y Path Parameter
merchant-id Identifies a unique entity for transaction processing at the lowest level of the account hierarchy of the backend proprietary merchant acquiring processing platform. This level organizes transaction types for submission, funding, and reporting. Y Header
request-id Unique request identifier provided by the requestor in the request header. Y Header
last4CardNumber Identifies the last 4 digits of the 16 digit card number. The truncated value is used in place of the full number to protect against exposure of confidential information. Y Body
supportingDocuments Provide list of supporting document(s) for the fullfill request, each containing documentName and documentContent. Please ensure that the documents provided adhere to the document types. Y Body

Important response fields

Important response fields
Response Field Name                                                     
Description
actionProcessingStatus

Dispute action processing status code, in response to the case action requested by you. Possible values:

IN_PROGRESS: The request is being processed asynchronously and this is applicable for HTTP response status code 202. Check the retrieve-status endpoint for updates.

COMPLETED: The request was processed successfully and this is applicable for HTTP response status code 200. Check error messages for details.

traceId A number assigned by a transaction originator to assist in identifying a transaction uniquely. The systems trace audit number remains unchanged for all messages within a transaction.

HTTP method: POST

Endpoint: /disputes/{disputeId}/fulfill

Scenario: Retrieval request response – sending backup documentation to support a valid transaction 

Json
{
  "last4CardNumber": "4106",
  "supportingDocuments": [
    {
      "documentName": "Sample.pdf",
      "documentContent": "base64 content..."
    }
  ]
}

Response:

Json
{
  "requestId": "c0f0aa46-7e40-4dd1-83eb-7fdb71df549e",
  "disputeId": 1972560996,
  "actionProcessingStatus": "COMPLETED",
  "disputeStatus": "CHALLENGED_MERCHANT",
  "statusUpdateTimestamp": "2025-06-18T16:29:23.243439662Z",
  "traceId": "b7df2e24-b36d-4b78-bc48-ca7de637530a"
}

Scenario: Retrieval request response - Invalid Document Type

Json
{
  "last4CardNumber": "2496",
  "supportingDocuments": [
    {
      "documentName": "Sample.pdf",
      "documentContent": "Invalid Plain Text Format"
    }
  ]
}

Response:

Json
{
  "httpStatus": 400,
  "title": "Document validation failed",
  "requestId": "1292cfa5-1763-452c-99c5-999204afc04f",
  "traceId": "1b5b425e-65e6-478e-8ba7-a750636e6a66",
  "context": [
    {
      "code": "13006",
      "message": "Invalid document type for network type : VI, allowed types are 'pdf/tif/tiff'",
      "field": "supportingDocument",
      "location": "BODY"
    }
  ]
}