eBay Resolution Case Management APIVersion 1.3.0

uploadDocuments

This call is used by German sellers to upload one or more documents (maximum of 5 per case) that act as proof that an item was shipped or proof that an order was fully or partially refunded. US and UK sellers will get an error if they attempt to use this call.

Note: Although UK and DE buyers are able to initiate returns for a refund (if returns are accepted for the listing) in the Resolution Center, and the 'RETURN' case type is returned (when applicable) in the getUserCases and getEBPCaseDetails calls, uploadDocuments cannot be used by DE sellers for the 'RETURN' case type.

Request Details

In the uploadDocuments request, the seller must provide the case ID and the case type (EBP_INR or EBP_SNAD) for the case upon which refund information will be sent to the buyer. If the caseId.id and caseId.type values don't match, the request is processed (if caseId.id is valid) but a warning message is returned.

If not already known, the case ID for an eBay Buyer Protection case can be retrieved with a call to getUserCases. If you make this call, use the EBP_INR or EBP_SNAD case type filters to restrict results to Item Not Received or Significantly Not As Described cases. To get more detailed information on an eBay Buyer Protection case, you will want to call getEBPCaseDetail, using the same case ID in the request.

The proofType field and at least one document container (one for each proof document) are required. Up to five proof documents can be uploaded with one call, but they must be of the same proof type. In the document container, the user passes in the document's name and content. The type of proof document is passed in through the proofType field.

Working with the Response

The response for uploadDocuments includes the standard fields for a successful call, which are timestamp and version. If they occur, errors and/or warnings will be returned in an errorMessage container.



Input

See also Samples.

The box below lists all fields that could be included in the call request. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

<?xml version="1.0" encoding="utf-8"?>
<uploadDocumentsRequest xmlns="http://www.ebay.com/marketplace/resolution/v1/services">
  <!-- Call-specific Input Fields -->
  <caseId> CaseIdType
    <id> string </id>
    <type> CaseType </type>
  </caseId>
  <document> UploadDocumentInfoType
    <content> base64Binary </content>
    <name> string </name>
  </document>
  <!-- ... more document nodes allowed here ... -->
  <proofType> ProofType </proofType>
</uploadDocumentsRequest>
Argument Type Occurrence Meaning
caseId CaseIdType Required This container is used to identify a specific eBay Buyer Protection case opened by a buyer in the eBay Resolution Center.
caseId.id string Required Unique identifier of the case. The caseId.id value is required in the request of every call except getVersion. The caseId.id value for a case is always returned in the caseSummary container of the getUserCases and getEBPCaseDetail calls.
Max length: 38.
caseId.type CaseType Required eBay case type. Case types include eBay Buyer Protection and PayPal Buyer Protection cases (opened through the Resolution Center), older disputes created through other sites, and Unpaid Item or Cancel Transaction disputes created through the Resolution Center or with the AddDispute call of the Trading API.

Applicable values:

EBP_INR
An Item Not Received case opened by a buyer in the Resolution Center.
EBP_SNAD
A Significantly Not As Described case opened by a buyer in the Resolution Center.

(Not all values in CaseType apply to this field.)
document UploadDocumentInfoType Required,
repeatable: [1..5]
Container consisting of the name and content of a proof document. A document container is required for each proof document being uploaded.
document.content base64Binary Required The binary representation of the proof document. Supported file types for proof documents include JPEG, GIF, BMP, and PNG. The upload operation will be unsuccessful for any other file type. There is a file size limit of 1 MB per document.
document.name string Required The file name of the proof document. The file name must be unique for each proof document "attached" to the case.
proofType ProofType Required The seller must specify the type of document(s) being uploaded. Currently, only PROOF_OF_REFUND and PROOF_OF_SHIPPING are applicable for the uploadDocuments call. If 'OTHER' is passed in this field, an error will occur.

Applicable values:

OTHER
The proof document type is reserved for future use.
PROOF_OF_REFUND
This document is uploaded by the seller to provide proof that a full or partial refund has been issued to the buyer. Supported file types for this document are JPEG, GIF, BMP, and PNG. The size limit for each document is 1 MB.
PROOF_OF_SHIPPING
This document is uploaded by the seller to provide proof that an item was shipped to the buyer. Supported file types for this document are JPEG, GIF, BMP, and PNG. The size limit for each document is 1 MB.



Output

See also Samples.

The box below lists all fields that might be returned in the response. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

<?xml version="1.0" encoding="utf-8"?>
<uploadDocumentsResponse xmlns="http://www.ebay.com/marketplace/resolution/v1/services">
  <!-- (No call-specific Output fields) -->

  <!-- Standard Output Fields -->
  <ack> AckValue </ack>
  <errorMessage> ErrorMessage
    <error> ErrorData
      <category> ErrorCategory </category>
      <domain> string </domain>
      <errorId> long </errorId>
      <exceptionId> token </exceptionId>
      <message> string </message>
      <parameter name="string"> ErrorParameter (string) </parameter>
      <!-- ... more parameter values allowed here ... -->
      <severity> ErrorSeverity </severity>
      <subdomain> string </subdomain>
    </error>
    <!-- ... more error nodes allowed here ... -->
  </errorMessage>
  <timestamp> dateTime </timestamp>
  <version> string </version>
</uploadDocumentsResponse>
Return Value Type Occurrence Meaning
(No call-specific fields)
Standard Output Fields  
ack AckValue Always

Applicable values:

Failure
eBay encountered a fatal error during the processing of the request, causing the request to fail. When a serious application-level error occurs, the error is returned instead of the business data.
PartialFailure
eBay successfully processed the request, but one or more non-fatal errors occurred during the processing. Inspect the message details and resolve any problems before resubmitting the request.
Success
eBay successfully processed the request and the business data is returned in the response. Note that it is possible for a response to return Success, but still not contain the expected data in the result.
Warning
The request that triggered the error was processed successfully but with one or more warnings.

Code so that your app gracefully handles any future changes to this list.
errorMessage ErrorMessage Conditionally Information for an error or warning that occurred when eBay processed the request. This field is not returned if the ack value is Success.
errorMessage.error ErrorData Conditionally,
repeatable: [0..*]
Details about a single error.
errorMessage.error.category ErrorCategory Conditionally There are three categories of errors: request errors, application errors, and system errors.

Applicable values:

Application
An error occurred due to a problem with the request, with the most likely source being the application sending the request. For example, the request is missing a required data element or it contains an invalid field. The problem must be corrected before the request can be resent. Inspect the error message to find the cause of the problem. If the problem is due to an application error, modify the application and resend the request. If the error is due to invalid data, the source of the data must be corrected before you resend the resend request to eBay.
Request
An error occurred due to a problem with the request, with the most likely source being missing or invalid data in the request. The problem must be corrected before the request can be retried. Inspect the error message to find the cause of the problem. If the problem is a result of end-user data, alert the end-user to the problem and provide the means for them to correct the problem. Once the problem is resolved, resend the request to eBay.
System
Indicates that an error has occurred on the eBay system side. For example, a database or server could be down. Inspect the error message to find the cause of the problem. If the problem is on the eBay side, an application can retry the request a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.

Code so that your app gracefully handles any future changes to this list.
errorMessage.error.domain string Conditionally Name of the domain in which the error occurred.
errorMessage.error.errorId long Conditionally A unique code that identifies the particular error condition that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms.
errorMessage.error.exceptionId token Conditionally Unique identifier for an exception associated with an error.
errorMessage.error.message string Conditionally A detailed description of the condition that caused the error.
errorMessage.error.parameter ErrorParameter (string) Conditionally,
repeatable: [0..*]
Various warning and error messages return one or more variables that contain contextual information about the error. This is often the field or value that triggered the error.
errorMessage.error.parameter
  [ attribute name ]
string Conditionally Various warning and error messages return one or more variables that contain contextual information about the error. This is often the field or value that triggered the error.
errorMessage.error.severity ErrorSeverity Conditionally Indicates whether the reported problem is fatal (an error) or is less- severe (a warning). Review the error message details for information on the cause.

If the request fails and the application is the source of the error (for example, a required element is missing), update the application before you retry the request. If the problem is due to incorrect user data, alert the end-user to the problem and provide the means for them to correct the data. Once the problem in the application or data is resolved, re-send the request to eBay.

If the source of the problem is on eBay's side, you can retry the request a reasonable number of times (eBay recommends you try the request twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, you can resend the request in its original form.

If a warning occurs, warning information is returned in addition to the business data. Normally, you do not need to resend the request (as the original request was successful). However, depending on the cause of the warning, you might need to contact the end user, or eBay, to effect a long term solution to the problem.

Applicable values:

Error
eBay encountered a fatal error during the processing of the request, causing the request to fail. When eBay encounters an error, it returns error data instead of the requested business data. Inspect the error details and resolve the problem before resubmitting the request.
Warning
The request was successfully processed, but eBay encountered a non-fatal error during the processing that could affect the data returned. For example, eBay might have changed the value of an input field. In this case, eBay returns a successful response, but it also returns a warning. For best results, requests should return without warnings. Inspect the warning details and resolve the problem before resubmitting the request.

Code so that your app gracefully handles any future changes to this list.
errorMessage.error.subdomain string Conditionally Name of the subdomain in which the error occurred.
timestamp dateTime Always This value represents the date and time when eBay processed the request. The time zone of this value is GMT and the format is the ISO 8601 date and time format (YYYY-MM-DDTHH:MM:SS.SSSZ). See Time Values in the eBay Web Services guide for information about this time format and converting to and from the GMT time zone.
version string Always The version of the response payload schema. Indicates the version of the schema that eBay used to process the request.



Samples

New to making API calls? Please see Making a Call.

Note: Some item IDs, user IDs, or other data in these samples might no longer be active on eBay. If necessary, you can substitute current eBay data in your requests.

Sample: Basic Call

This call is used by a German seller to upload one or more documents that act as proof that an item was shipped, or proof that an order was fully or partially refunded.

Description

This uploadDocuments call sample is used by a seller to upload a document that acts as proof that a refund was issued to the buyer. The case ID, case type, document container, and proofType field are required.

This call will fail if an invalid case ID is passed in. If the case ID does not match the case type that is passed in, a warning message will be returned in the request, but the call will succeed (if case ID is valid). This call will also fail if a non-supported document (wrong file type or too large) is passed into the document container, or if an invalid proofType value is provided.

This call only returns the standard output fields to indicate a successful call.

Input

The seller uploads a document that acts as proof that a refund was issued to the buyer.

The case ID is 5********3. 'EBP_INR' is passed in as the caseId.type value. 'PROOF_OF_REFUND' is passed in as the proofType value, and the proof document's name and content is passed into the document container.

SOAP format. Also available is the XML equivalent.

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns="http://www.ebay.com/marketplace/resolution/v1/services">
   <soap:Header>
      <RequesterCredentials>
        <eBayAuthToken>A********3</eBayAuthToken>
      </RequesterCredentials>
   </soap:Header>
   <soap:Body>
      <uploadDocumentsRequest>
         <caseId>
            <id>5********3</id>
            <type>EBP_INR</type>
         </caseId>
         <proofType>PROOF_OF_REFUND</proofType>
         <document>
             <name>m********2.png</name>
             <content>i********B</content>
         </document>
         <!-- 1 to 5 proof documents may be provided for each case -->
      </uploadDocumentsRequest>
   </soap:Body>
</soap:Envelope>

Output

The successful uploading of the document is indicated by the Success value in the ack field.

SOAP format. Also available is the XML equivalent.

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns="http://www.ebay.com/marketplace/resolution/v1/services">
   <soap:Header/>
   <soap:Body>
      <uploadDocumentsResponse>
         <ack>Success</ack>
         <version>1.3.0</version>
         <timestamp>2011-03-31T14:54:37.581Z</timestamp>
      </uploadDocumentsResponse>
   </soap:Body>
</soap:Envelope>

   Here is the same output in XML format. Note that this does not include standard values.

XML format. Also available is the SOAP equivalent.

<?xml version="1.0" encoding="utf-8"?>
<uploadDocumentsResponse xmlns="http://www.ebay.com/marketplace/resolution/v1/services">
   <ack>Success</ack>
   <version>1.3.0</version>
   <timestamp>2011-03-31T14:54:37.581Z</timestamp>
</uploadDocumentsResponse>



Change History

Change Date Description
1.3.0
2011-05-26
  • (added) New call