MercuryPay P2PE Error messages

Document created by matthew.milner on May 10, 2016Last modified by Chris Jennings on Jun 1, 2016
Version 2Show Document
  • View in full screen mode

MercuryPay E2E Error Responses

 

Connectivity Errors 

In the rare event that Mercury’s encryption service is unavailable, the following error will be returned:

<ResponseOrigin>Server</ResponseOrigin> 
<DSIReturnCode>004116</DSIReturnCode> 
<CmdStatus>Error</CmdStatus> 
<TextResponse>Decryption Service Unavailable.</TextResponse> 

 

Mercury’s E2E Merchant Check Mismatch Error

If the merchant is not setup for E2E but the E2E encryption data elements (EncryptedFormat, AccountSource, EncryptedBlock, EncryptedKey) are sent in the request, then the transaction will return “Merchant setting does not accept Encrypted data.”

 

If merchant is setup for E2E but the request does not contain the E2E Encryption elements, then the transaction will return “Merchant setting requires Encrypted data.”

  <CmdResponse> 
   <ResponseOrigin>Server</ResponseOrigin> 
<DSIReturnCode>004115</DSIReturnCode> 
<CmdStatus>Error</CmdStatus> 
<TextResponse>Merchant setting requires Encrypted data</TextResponse> 

 

E2E Invalid Field Errors

If one of the E2E Encryption elements is missing in the transaction request, an “Invalid Field” will be returned qualified by the missing element.

  <CmdResponse>

<ResponseOrigin>Server</ResponseOrigin> 
<DSIReturnCode>100254</DSIReturnCode> 
<CmdStatus>Error</CmdStatus> 
<TextResponse>Invalid Field - Encrypted Block</TextResponse> 

 

Decryption Service Unavailable errors: Corrupt, Malformed or Incorrect Data 

In the event that one of the E2E encryption data elements contains corrupted, malformed or in any way incorrect data, Mercury’s encryption service will return a text response containing Decryption Service Unavailable followed by the field detected to contain the failed data.  These failure messages vary and are dynamically generated based on the reason for the failure:

 

<CmdResponse> 
<ResponseOrigin>Server</ResponseOrigin> 
<DSIXReturnCode>004116</DSIXReturnCode> 
<CmdStatus>Error</CmdStatus> 
<TextResponse>Decryption Service Unavailable-200 Response with Status: Failure Message:Invalid EncryptedBlock</TextResponse> 

 

Note Merchant setting, Invalid Field and some “Decryption Service Unavailable” error messages described above are typically determined by MercuryPay’s server prior to decryption. If an encrypted transaction request passes this initial set of checks it is passed to MercuryPay’s decryption server.

 

There is another set of error messages at this stage of the decryption process: 

  • In the event that an incorrect EncryptedKey is sent, or the EncryptedBlock is not decryptable, in the wrong format, or if the decrypted data is invalid, the following error format is used. Note the differences in the failure message for “Failed to decrypt,” “Encrypted block invalid,” or “Decrypted data invalid”:

 

  • Error # 004118 - Decryption Service Unavailable. - 200 Response With Status:Failure Message: Failed to decrypt
  • Error # 004118 - Decryption Service Unavailable. - 200 Response With Status:Failure Message: Encrypted block invalid
  • Error # 004118 - Decryption Service Unavailable. - 200 Response With Status:Failure Message: Decrypted data invalid

Attachments

    Outcomes