Guides
Log In
Guides

Void

Overview

The void command allows you to cancel a purchase or gift transaction. This prevents the funds from being transferred to the business and the customer from being charged. A transaction can be voided as long as the funds for that transaction have not been moved yet. This is used for but not limited to cancelling a partial approval transaction which you can learn more about at Partial Transaction. If funds have been moved then a refund is required which you can learn more about at Refund.

  1. Void Command

Request Structure

ElementTypeDescriptionSizeRequired
apiVersionStringAPI version numberV20Required
istConfigCodeStringMoneris provided integration configuration codeV25Required
dataIdStringMerchant defined unique identifier for the data objectV50Required
dataTimestampStringDate and time of the request (YYYY-MM-DD HH:MM:SS)F19Required
dataObjectObject that contains all transaction requests--
requestArrayContains data applicable to transaction request--
orderIdStringOrder ID from PurchaseV50Required
transactionIdStringTransaction ID from Purchase responseV50Required
idempotencyKeyStringUnique transaction identifier to avoid duplicate requestV50Required
linkIdStringId used to group related transactionsV50Optional
terminalIdStringDestination Terminal ID
Note: An error will be returned if terminalId in the request does not match with the Terminal
F8Optional
userNameStringUnique identifier for clerk / userV30Optional
customIdDataStringCustom fieldV50Optional
actionString"void"V50Required
dynamicDescriptorStringMerchant-defined descriptionV20Optional
progressStatusStringIf value is set to "True", terminal will return progress to ECR
Note: This feature is only available on Direct Integration
V5Optional
languageStringValid values "EN" and "FR". If value is not provided, the payment app will use the language from TMSF2Optional

{
   "apiVersion": "3.0",
   "istConfigCode": "example_istConfigCode",
   "dataId": "example_dataId",
   "dataTimestamp": "1969-12-31 23:59:59",
   "data": {
      "request": [
         {
            "orderId": "example_orderId",
            "transactionId": "example_transactionId",
            "idempotencyKey": "example_idempotencyKey",
            "action": "void"
         }
      ]
   }
}

Response Structure

ElementTypeDescriptionSizeRequired
apiVersionStringAPI version numberV20Required
statusCodeStringStatus code for the overall transaction requestV4Required
statusStringDescription of the statusCodeV4Required
dataIdStringMerchant defined unique identifier for the data objectV50Required
dataTimestampStringDate and time of the request (YYYY-MM-DD HH:MM:SS)F19Required
dataObjectObject that contains all transaction requests--
responseArrayContains data applicable to transaction request--
orderIdStringUnique identifier for this requestV50Required
transactionIdStringUnique identifier for this requestV50Required
idempotencyKeyStringUnique transaction identifier to avoid duplicate requestV50Required
linkIdStringId used to group related transactionsV50Optional
actionString"void"V50Required
statusCodeStringStatus code for individual requestV4Required
statusStringDescription of the individual statusCodeV50Required
approvedAmountStringPayment amount received / approvedV9Required
tenderTypeStringPayment Type: Credit, Debit, Gift etcV50Required
cardTypeStringCard Type: V, M, P, AX etcV2Conditional
cardNameStringCard Name: Visa, MasterCard, Interac, Amex etcV25Conditional
sequenceNumStringSequence NumberV18Conditional
realTimeUniqueIdStringReal Time Moneris Transaction Unique IdentifierF15Conditional
responseCodeStringMoneris Host Response CodeV3Conditional
ISOStringISO response CodeV2Conditional
authCodeStringAuthorization code returned from the issuing institution.V8Conditional
formFactorStringEMV Specific DataF2Conditional
maskedPanStringMasked Primary Account Number (PAN)V21Conditional
completedString"true" or "false"V5Required
receiptStringFinancial receipt data sent using ISO-8895-1 encodingV4000Conditional
receiptChoiceStringThe choices of how the receipt is being returned to the cardholder at the time of transaction. Valid values include: PRINT (Default Option), EMAIL, SMS, NONE.V10Conditional
terminalIdStringDestination Terminal IDF8Required
transactionTypeStringTransaction that was voided: Purchase Void, Gift Activation VoidV50Required

{
   "apiVersion":"3.0",
   "statusCode":"example_statusCode",
   "status":"example_status",
   "dataId":"example_dataId",
   "dataTimestamp":"1969-12-31 23:59:59",
   "data":{
      "response":[
         {
            "orderId":"example_orderId",
            "transactionId":"example_transactionId",
            "statusCode":"example_statusCode",
            "status":"example_status",
            "idempotencyKey":"example_idempotencyKey",
            "completed":"true",
            "saf":"false",
            "responseCode":"example_responseCode",
            "iso":"example_iso",
            "approvedAmount":"example_approvedAmount",
            "tenderType":"example_tenderType",
            "cardType":"example_cardType",
            "sequenceNum":"example_sequenceNum",
            "realTimeUniqueId":"example_realTimeUniqueId",
            "authCode":"example_authCode",
            "formFactor":"example_formFactor",
            "maskedPan":"example_maskedPan",
            "action":"void",
            "receipt":"example_receipt",
            "receiptChoice":"PRINT",
            "terminalId":"example_terminalId"
         }
      ]
   }
}

Errors

If your response contains errors, visit the Errors page for a detailed description of each one.