Getnet DocsGetnet Docs

Recuperar o Último Comprovante

Este guia explica como recuperar ou reimprimir o comprovante da última transação de um POS Integrado usando a operação GetLastVoucher. O comportamento é o mesmo via USB e Rede (Network).

O que é o último comprovante

O último comprovante é o conteúdo do recibo da transação mais recente no terminal POS (uma venda ou um cancelamento). O GetLastVoucher aciona uma reimpressão ou retorna esse conteúdo sem reexecutar a transação. É útil quando o recibo foi perdido, a impressão falhou ou o cliente solicita uma segunda via.

Antes de começar

Antes de recuperar o último comprovante:

  • Um Connector deve ser criado e validado usando Polling
  • O Modo POS Integrado deve estar ativo
  • Pelo menos uma transação deve ter sido concluída no terminal

Passo 1: Executar a requisição

Para recuperar ou reimprimir o comprovante da última transação, chame a operação GetLastVoucher. Você pode optar por imprimi-lo diretamente no POS ou receber o conteúdo na resposta.

Os seguintes parâmetros estão disponíveis para a operação GetLastVoucher:

ParâmetroTipoObrigatórioDescrição
PrintOnPosBooleanNãoSe true, o POS imprime o comprovante. Se false, o conteúdo do recibo é retornado em ReceiptContent.
SkipReceiptBooleanNãoSe true, o recibo do cliente não é impresso; se false (padrão), ele é impresso. Ignorado quando PrintOnPos é false.

O exemplo a seguir demonstra como solicitar a reimpressão do último comprovante diretamente no terminal POS:

var request = new LastTransactionRequest
{
    PrintOnPos = true,
    SkipReceipt = false
};

var voucherResult = await connector.GetLastVoucherAsync(request);

Passo 2: Tratar a resposta

Após a conclusão, o POS retorna uma resposta estruturada com o status da operação e, se solicitado, o conteúdo do recibo. Veja abaixo um exemplo de objeto de resposta bem-sucedida:

{
  "Code": 0,
  "Message": "APPROVED",
  "ReceiptContent": null
}

O retorno contém apenas Code, Message e ReceiptContent. O ReceiptContent está null aqui porque a requisição definiu PrintOnPos como true. Quando PrintOnPos é false, o ReceiptContent retorna um objeto estruturado com os campos do recibo — consulte Responsabilidade de Impressão.

Sempre verifique o Code e a Message antes de processar o ReceiptContent.

Considerações importantes

Tenha em mente o seguinte:

  • Somente o comprovante da transação mais recente pode ser recuperado (venda ou cancelamento).
  • A operação não reprocessa nem reverte a transação.
  • Se a última transação foi um Relatório, nenhum comprovante é impresso e uma mensagem explicativa é retornada.

Próximos passos