MACReversal Method
Reverses a transaction when MAC validation fails.
Syntax
ptechcanadiandebit.MACReversal([callback])
Callback
The 'callback' parameter specifies a function which will be called when the operation completes (or an error is encountered). If the 'callback' parameter is not specified, then the method will block and will not return until the operation completes (or an error is encountered).
The callback for this method is defined as:
function(err){ }
'err' is the error that occurred. If there was no error, then 'err' is 'null'.
'err' has 2 properties which hold detailed information:
err.code err.message
Remarks
After sending a transaction with the Authorize method, the ResponseMACValue must be validated against the GetResponseDataToMAC using the PIN pad device's MAC functionality. It must be validated under the latest ResponseMACKey returned from Paymentech. If the ResponseMACValue cannot be validated, you should immediately send a MACReversal to void the authorization. Note that you do not need to calculate a new MACValue for a MACReversal. You may simply send the MACValue from the original authorization request (the Paymentech server will not validate the MACValue). All other properties must match the properties sent during the original authorization, including the EncryptedPIN, CardTrack2Data, and EncryptedKeyIndex.