Are you looking for test card numbers?

Would you like to contact support?

Point-of-sale icon

Cancel collecting input

Learn how to cancel an in-progress input request.

While an input request is in progress, you can cancel it in the same way that you can cancel an in-progress payment. You can either:

  • Make an AbortRequest from your POS app.
  • Press the Cancel key on the terminal keypad.

Cancel from POS app

To cancel an InputRequest from your POS app:

  1. Make a POST request to a Terminal API endpoint, specifying:

    Parameter Required Description
    MessageClass -white_check_mark- Service
    MessageCategory -white_check_mark- Abort
    • AbortRequest:

      Parameter Description
      AbortReason MerchantAbort
      MessageReference An object with:
      • MessageCategory: Input
      • SaleID: your unique ID of the POS app component that sent the input request.
      • ServiceID: the ServiceID of the input request being cancelled.

    For more details see the AbortRequest API reference.

    The example below shows how to make a request to cancel an in-progress input request with a ServiceID of 21796.

    AbortRequest to cancel an InputRequest
    {
       "SaleToPOIRequest":{
          "MessageHeader":{
             "ProtocolVersion":"3.0",
             "MessageClass":"Service",
             "MessageCategory":"Abort",
             "MessageType":"Request",
             "SaleID":"POSSystemID12345",
             "ServiceID":"29239",
             "POIID":"V400m-324688179"
          },
          "AbortRequest":{
             "AbortReason":"MerchantAbort",
             "MessageReference":{
                "MessageCategory":"Input",
                "SaleID":"POSSystemID12345",
                "ServiceID":"21796"
             }
          }
       }
    }

    A successful AbortRequest returns a response with a 200 OK HTTP status code and no body.

  2. Check whether cancelling was successful:

    • The screen generated by your InputRequest disappears from the terminal display.
    • The InputRequest returns a response containing:
      • Result: Failure
      • ErrorCondition: Aborted

    The following example shows the response for a confirmation input request that was cancelled.

    InputResponse after cancelling the InputRequest
    {
        "SaleToPOIResponse": {
            "InputResponse": {
                "InputResult": {
                    "Device": "CustomerInput",
                    "InfoQualify": "Input",
                    "Response": {
                        "Result": "Failure",
                        "ErrorCondition": "Aborted"
                    },
                    "Input": {
                        "InputCommand": "GetConfirmation"
                    }
                },
                "OutputResult": {
                    "Device": "CustomerDisplay",
                    "InfoQualify": "Display",
                    "Response": {
                        "Result": "Success"
                    }
                }
            },
            "MessageHeader": {
                "ProtocolVersion": "3.0",
                "SaleID": "POSSystemID12345",
                "MessageClass": "Device",
                "MessageCategory": "Input",
                "ServiceID": "010",
                "POIID": "V400m-324688179",
                "MessageType": "Response"
            }
        }
    }

Cancel from terminal

To cancel an in-progress input request from a terminal:

  • Press the Cancel key on the terminal keypad.

If this is successful:

  • The screen generated by your InputRequest disappears from the terminal display.
  • The InputRequest returns a response. Depending on the type of input, this InputResponse contains:

    Type of input Result ConfirmedFlag
    Confirmation Success false
    Signature Success false
    Type of input Result ErrorCondition
    Menu Failure Cancel
    Digit Failure Cancel
    Text Failure Cancel

See also