Pesquisar

Are you looking for test card numbers?

Would you like to contact support?

Point-of-sale icon

Reconciliar uma incompatibilidade de saldo

Obtenha os totais de um período de reconciliação e use-os para reconciliar incompatibilidades de saldo entre o terminal e a caixa registradora.

Pode ser necessário reconciliar o saldo entre o terminal e a caixa registradora quando ocorrer uma incompatibilidade. Por exemplo, se a conexão cair em algum momento e a caixa registradora não receber a resposta final

Use o ReconciliationRequest para:

  1. Obtenha os totais do período de reconciliação atual e inicie um novo período usando "ReconciliationType":"SaleReconciliation".

  2. Obtenha o relatório de um período de reconciliação anterior usando "ReconciliationType":"PreviousReconciliation" e "POIReconciliationID":"NNN" . Nesse caso, nenhum novo período de reconciliação é iniciado.

Antes você começar

Endpoint

O URL utilizado para enviar mensagens da API de terminais depende do seu tipo de implementação. Para obter mais informações sobre as arquiteturas disponíveis, consulte a Visão geral da API de terminais

ReconciliationRequest

Para uma lista de campos ReconciliationRequest, consulte campos ReconciliationRequest.

O SaleID e o ServiceID no MessageHeader devem ser únicos. Combinações SaleID e ServiceID são rejeitadas se usadas recentemente, dentro de 48 horas.

Os campos descritos abaixo são aqueles que você especifica ao fazer uma chamada ReconciliationRequest para a Terminal API.

{
   "SaleToPOIRequest":{
      "MessageHeader":{
         "ProtocolVersion":"3.0",
         "MessageClass":"Service",
         "MessageCategory":"Reconciliation",
         "MessageType":"Request",
         "ServiceID":"0518145303",
         "SaleID":"CashRegB3",
         "POIID":"P400Plus-275008565"
      },
      "ReconciliationRequest":{
         "ReconciliationType":"SaleReconciliation"
      }
   }
}
String serviceID = "YOUR_UNIQUE_ATTEMPT_ID";
String saleID = "YOUR_CASH_REGISTER_ID";
String POIID = "YOUR_TERMINAL_ID";

SaleToPOIRequest saleToPOIRequest = new SaleToPOIRequest();
MessageHeader messageHeader = new MessageHeader();
messageHeader.setProtocolVersion("3.0");
messageHeader.setMessageClass( MessageClassType.SERVICE );
messageHeader.setMessageCategory( MessageCategoryType.RECONCILIATION );
messageHeader.setMessageType( MessageType.REQUEST );
messageHeader.setServiceID(serviceID);
messageHeader.setSaleID(saleID);
messageHeader.setPOIID(POIID);
saleToPOIRequest.setMessageHeader(messageHeader);

ReconciliationRequest reconciliationRequest = new ReconciliationRequest();
reconciliationRequest.setReconciliationType( ReconciliationType.SALE_RECONCILIATION );
saleToPOIRequest.setReconciliationRequest(reconciliationRequest);
terminalAPIRequest.setSaleToPOIRequest(saleToPOIRequest);

ReconciliationResponse

Para uma lista de campos ReconciliationResponse, consulte campos ReconciliationResponse.

A resposta de reconciliação contém informações sobre o status do terminal nos seguintes campos:

{
   "SaleToPOIResponse":{
      "ReconciliationResponse":{
         "ReconciliationType":"SaleReconciliation",
         "POIReconciliationID":"1000",
         "Response":{
            "Result":"Success"
         },
         "TransactionTotals":[
            {
               "SaleID":"CashRegB3",
               "PaymentInstrumentType":"Card",
               "PaymentCurrency":"EUR",
               "PaymentTotals":[
                  {
                     "TransactionType":"Debit",
                     "TransactionCount":1,
                     "TransactionAmount":10.99
                  }
               ],
               "OperatorID":"John",
               "CardBrand":"mc",
               "TotalsGroupID":"GroupA",
               "ShiftNumber":"123"
            }
         ]
      },
      "MessageHeader":{
         "ProtocolVersion":"3.0",
         "SaleID":"CashRegB3",
         "MessageClass":"Service",
         "MessageCategory":"Reconciliation",
         "ServiceID":"0518145303",
         "POIID":"P400Plus-275008565",
         "MessageType":"Response"
      }
   }
}