Terminal-2 icon

Retrieve totals from the terminal

Return payment totals from a terminal and filter for totals by group or operator.

Using a Terminal API request, your POS app can retrieve totals from a payment terminal without starting a new reconciliation period. The result includes the total value and number of transactions by payment instrument type (such as card) and transaction type (such as credit or debit). You can filter and group the results on aspects like operator or shift number.

Requirements

Before you begin, take into account the following requirements.

Requirement Description
Integration type A Terminal API integration with payment terminals.

Get the totals of a terminal

  1. Log in to the terminal.

  2. Make a Terminal API get totals request, specifying:

    • The standard SaleToPOIRequest.MessageHeader object, with MessageClass set to Service and MessageCategory set to GetTotals.

      Parameter Required Description
      ProtocolVersion -white_check_mark- 3.0
      MessageClass -white_check_mark- Service
      MessageCategory -white_check_mark- GetTotals
      MessageType -white_check_mark- Request
      ServiceID -white_check_mark- Your unique ID for this request, consisting of 1-10 alphanumeric characters. Must be unique within the last 48 hours for the terminal (POIID) being used.
      SaleID -white_check_mark- Your unique ID for the POS system component to send this request from.
      POIID -white_check_mark- The unique ID of the terminal to send this request to. Format: [device model]-[serial number].
    • The GetTotalsRequest object with:

      Parameter Required Description
      TotalDetails Group the results by terminal (POIID), sale system, operator, shift number, or totals group.
      TotalFilter Limit the results to the specified terminal (POIID), sale system, operator, shift number, or totals group.

    Select the tabs to see some example requests.

  3. In the GetTotalsResponse, check the TransactionTotals object.

    The following example is the response for a request that asked for the totals of a terminal and group of totals.

    {
      "SaleToPOIResponse":{
         "MessageHeader":{
            "ProtocolVersion":"3.0",
            "SaleID":"CashRegB3",
            "MessageClass":"Service",
            "MessageCategory":"GetTotals",
            "ServiceID":"0518144235",
            "POIID":"P400Plus-275008565",
            "MessageType":"Response"
         },
         "GetTotalsResponse":{
            "POIReconciliationID":"1000",
            "Response":{
               "Result":"Success"
            },
            "TransactionTotals":[
               {
                  "SaleID":"CashRegB3",
                  "PaymentInstrumentType":"StoredValue",
                  "PaymentCurrency":"EUR",
                  "PaymentTotals":[
                     {
                        "TransactionType":"Debit",
                        "TransactionCount":1,
                        "TransactionAmount":100.99
                     }
                  ],
                  "OperatorID":"",
                  "CardBrand":"SVS",
                  "TotalsGroupID":"GroupA",
                  "ShiftNumber":""
               },
               {
                  "SaleID":"CashRegB3",
                  "PaymentInstrumentType":"Card",
                  "PaymentCurrency":"EUR",
                  "PaymentTotals":[
                     {
                        "TransactionType":"Debit",
                        "TransactionCount":51,
                        "TransactionAmount":1841.52
                     }
                  ],
                  "OperatorID":"",
                  "CardBrand":"mc",
                  "TotalsGroupID":"GroupA",
                  "ShiftNumber":""
               }
            ]
         }
      }

See also