VoidTransaction Method
Voids a transaction in the current batch.
Object Oriented Interface
public function doVoidTransaction($retrievalnumbertovoid, $lastretrievalnumber);
Procedural Interface
inpaydirect_ptechecommerce_do_voidtransaction($res, $retrievalnumbertovoid, $lastretrievalnumber);
Remarks
This method voids a previously authorized transaction. A transaction can only be voided if it exists in the current open batch. If the batch that contained the target transaction has already been released (settled), you must use the Credit method instead.
The VoidTransaction method has two parameters, RetrievalNumberToVoid and LastRetrievalNumber. RetrievalNumberToVoid is the ResponseRetrievalNumber of the transaction you wish to void. LastRetrievalNumber should be set to the last ResponseRetrievalNumber received from the Paymentech Server. If LastRetrievalNumber is left blank, the current contents of the ResponseRetrievalNumber property will be used instead.
Before sending a void, you must make sure that the CardNumber property contains the card number from the original transaction. Also note that since AuthOnly transactions are not added to the current batch, they cannot be voided. Examples follow.
class.CardNumber = "4444333322221111" class.CardExpMonth = 1 class.CardExpYear = 2010 class.TransactionAmount = "1.00" class.Sale() cnumToVoid = class.CardNumber refNumToVoid = class.ResponseRetrievalNumber ... more sale transactions ... 'All that's needed for a void: class.CardNumber = cnumToVoid class.VoidTransaction(refNumToVoid, "")
Note that in the above void, if you use a new instance of the class or otherwise reset it's state, you must set the LastRetrievalNumber parameter as well.
Note: This method is not available when using the Terminal Capture SettlementMode.