Request Hash Digest Pushed To Merchants ServerResultURL

Below is the order that the variables should be listed when creating the hash digest to check against the one in submitted in the form. The string to be hashed must be comprised of the variables listed in the order below in standard URL format (i.e. listed in name/value pairs, delimited with an ampersand character e.g. “variable1=value&variable2=value&variable3=value”). The variable names and values are case-sensitive and the values should be represented EXACTLY as they appear in the form (NON-URL ENCODED). This hash must be checked against the one submitted in the form, and it should be exactly the same as the hash digest created by us. Any differences should be treated with EXTREME caution, as this indicates that the variables in the form have been tampered with.

Variable Name

Mandatory

Comments
PreSharedKey See comments The pre shared key should ONLY be included in the hash digest if the chosen hash method is standard (i.e. not HMAC) MD5 or SHA1. If the chosen hash method is either HMACMD5 or HMACSHA1, then the pre shared key is used as part of the hash generation so should be ENTIRELY omitted from the string to be hashed
MerchantID

Yes

 
Password

Yes

 
StatusCode

Yes

 
Message

Yes

 
PreviousStatusCode

Yes

Must be included as “PreviousStatusCode=” if an empty variable in the form
PreviousMessage

Yes

Must be included as “PreviousMessage=” if an empty variable in the form
CrossReference

Yes

 
AddressNumericCheckResult

Yes

Must be included as “AddressNumericCheckResult=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
PostCodeCheckResult

Yes

Must be included as “PostCodeCheckResult=” if
   

an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)

CV2CheckResult

Yes

Must be included as “CV2CheckResult=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
ThreeDSecureAuthenticationCheckResult

Yes

Must be included as “ThreeDSecureAuthenticationCheckResult=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
FraudProtectionCheckResult

Yes

Must be included as “FraudProtectionCheckResult=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
CardType

Yes

Must be included as “FraudProtectionCheckResult=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards

compatibility)

CardClass

Yes

Must be included as “CardClass=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
CardIssuer

Yes

Must be included as “CardIssuer=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
CardIssuerCountryCode

Yes

Must be included as “CardIssuerCountryCode=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
CardNumberFirstSix

Yes

Must be included as “CardNumberFirstSix=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
CardNumberLastFour

Yes

Must be included as “CardNumberLastFour=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
CardExpiryDate

Yes

Must be included as “CardExpiryDate=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
Amount Yes  
DonationAmount

Yes

Must be included as “DonationAmount=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
CurrencyCode Yes  
OrderID Yes Note: make sure that special characters in the OrderID are properly escaped, otherwise the hash digest will not match
TransactionType Yes  
TransactionDateTime Yes  
OrderDescription Yes Must be included as “OrderDescription=” if an empty variable in the form. Note: make sure that special characters in the OrderDescription are properly escaped, otherwise the hash digest will not match
CustomerName Yes Must be included as “CustomerName=” if an empty variable in the

form

Address1 Yes Must be included as “Address1=” if an empty variable in the form
Address2 Yes Must be included as “Address2=” if an empty variable in the form
Address3 Yes Must be included as “Address3=” if an empty variable in the form
Address4 Yes Must be included as “Address4=” if an empty variable in the form
City Yes Must be included as “City=” if an empty variable in the form
State Yes Must be included as “State=” if an empty variable in the form
PostCode Yes Must be included as “PostCode=” if an empty variable in the form
CountryCode Yes Mustbeincludedas”CountryCode=”ifanemptyvariableintheform
EmailAddress Yes Must be included as “EmailAddress=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
PhoneNumber Yes

Must be included as “PhoneNumber=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)

DateOfBirth Yes Must be included as “DateOfBirth=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
PrimaryAccountName Yes Must be included as “PrimaryAccountName=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
PrimaryAccountNumb er Yes Must be included as “PrimaryAccountNumber=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
PrimaryAccountDateO fBirth Yes Must be included as “PrimaryAccountDateOfBirth=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)
PrimaryAccountPostCo de Yes Must be included as “PrimaryAccountPostCode=” if an empty variable in the form. NOT included in the hash if not present in the form (only for backwards compatibility)

 

Next Post
Request Variables Pushed To Merchants ServerResultURL
Previous Post
Expected Response From Merchant’s ServerResultURL
Menu