Void Last Purchase

Overview

The void last purchase command allows you to void the last completed transaction. You cannot use this command consecutively to void more than one transaction. In a partial approval transaction flow, the void last purchase will only void the last completed transaction. You must use the Void Purchase command to void all the remaining transactions.

  1. Void Last Command

Request Structure

ElementTypeDescriptionSizeRequired
apiVersion String API version number V20 Required
istConfigCode String Moneris provided integration configuration code V25 Required
dataId String Merchant defined unique identifier for the data object V50 Required
dataTimestamp String Date and time of the request (YYYY-MM-DD HH:MM:SS) F19 Required
data Object Object that contains all transaction requests
request Array Contains data applicable to transaction request
idempotencyKey String Unique transaction identifier to avoid duplicate request V50 Required
terminalId String Destination Terminal ID
Note: An error will be returned if terminalId in the request does not match with the Terminal
F8 Optional
userName String Unique identifier for clerk / user V30 Optional
action String "voidLast" V50 Required
progressStatus String If value is set to "True", terminal will return progress to ECR
Note: This feature is only available on Direct Integration
V5 Optional

Request example

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

Response Structure

ElementTypeDescriptionSizeRequired
apiVersion String API version number V20 Required
statusCode String Status code for the overall transaction request V4 Required
status String Description of the statusCode V4 Required
dataId String Merchant defined unique identifier for the data object V50 Required
dataTimestamp String Date and time of the request (YYYY-MM-DD HH:MM:SS) F19 Required
data Object Object that contains all transaction requests
response Array Contains data applicable to transaction request
orderId String Unique identifier for this request V50 Required
transactionId String Unique identifier for this request V50 Required
idempotencyKey String Unique transaction identifier to avoid duplicate request V50 Required
linkId String Id used to group related transactions V50 Optional
action String "voidLast" V50 Required
statusCode String Status code for individual request V4 Required
status String Description of the individual statusCode V50 Required
approvedAmount String Payment amount received / approved V9 Required
tenderType String Payment Type: Credit, Debit, Gift etc V50 Required
cardType String Card Type: V, M, P, AX etc V2 Conditional
cardName String Card Name: Visa, MasterCard, Interac, Amex etc V25 Conditional
sequenceNum String Sequence Number V18 Conditional
realTimeUniqueId String Real Time Moneris Transaction Unique Identifier F15 Conditional
responseCode String Moneris Host Response Code V3 Conditional
iso String ISO response Code V2 Conditional
authCode String Authorization code returned from the issuing institution. V8 Conditional
formFactor String EMV Specific Data V2 Conditional
maskedPan String Masked Primary Account Number (PAN) V21 Conditional
completed String "true" or "false" V5 Required
receipt String Financial receipt data sent using ISO-8895-1 encoding V4000 Conditional
receiptChoice String The 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. V10 Conditional
terminalId String Destination Terminal ID V8 Required
dccOptIn String This field indicates a Dynamic Currency Conversion (DCC) transaction V5 Optional

Response example

{
  "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",
        "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": "voidLast",
        "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.


Did this page help you?