Uma solicitação de impressão permite iniciar uma impressão no terminal a partir da caixa registradora fora de um pagamento. Você pode imprimir texto ou um QR code que o cliente possa digitalizar com o dispositivo móvel.
Aqui estão alguns exemplos de como você pode usar solicitações de impressão
- No fluxo pagamento na mesa, imprima a fatura no terminal antes de enviar uma solicitação de pagamento. Isso permite que os clientes decidam se desejam dividir a conta e como desejam pagar.
- Imprima ingressos de entrada em um festival.
- Em um restaurante de serviços rápidos, imprima um recibo que permita aos clientes receber seus pedidos no balcão.
- Imprima um QR code com um URL para ingressar no seu programa de fidelidade ou para baixar um aplicativo.
If you want to combine text and a QR code, you'd need to make two subsequent print requests. Não há solicitação para rasgar o papel após cada solicitação de impressão, para que você possa fornecer ao cliente um único recibo.
Obviamente, uma solicitação de impressão funciona apenas em um terminal de pagamento que possui uma impressora embutida. Você pode usar estes modelos:
- V240m Plus (in Brazil)
- V400c Plus
- V400m
Imprimir texto
Para usar o terminal de pagamento para imprimir conteúdo de texto:
-
Faça uma solicitação POST para o endpoint da API de terminais, especificando:
-
MessageHeader
: A estrutura daMessageHeader
padrão, explicada nos fundamentos da API de terminais:Parâmetro Requerimento Descrição ProtocolVersion
3.0 MessageClass
Device MessageCategory
Print MessageType
Request SaleID
Seu ID exclusivo para a caixa registradora. ServiceID
Seu ID exclusivo para esta solicitação, consistindo em 1 a 10 caracteres alfanuméricos. Este valor precisa ser exclusivo nas últimas 48 horas. POIID
ID exclusivo do terminal para o qual você deseja encaminhar esta solicitação. Formato: [modelo do dispositivo] - [número de série].
-
PrintRequest.PrintOutput
: O corpo da solicitação com:Parâmetro Requerimento Descrição DocumentQualifier
Document ResponseMode
PrintEnd OutputContent.OutputFormat
Text OutputContent.OutputText
Uma matriz com um ou mais itens da matriz contendo o texto que você deseja imprimir. Cada item
OutputText
da matriz pode ter:Parâmetro Requerimento Descrição CharacterStyle
Valores permitidos: Normal, Bold, Underline. Se não especificado, o padrão é Normal. Alignment
Valores permitidos: Left, Centred, Justified, Right. Se não especificado, o padrão é Left. EndOfLineFlag
Se não especificado, o padrão é true. Use false se desejar que o próximo item da matriz continue na mesma linha. Text
O texto que você deseja imprimir neste elemento da matriz. Para uma linha em branco, especifique um valor vazio.
Selecione as abas abaixo para ver como você pode usar os parâmetros para imprimir um recibo (com cabeçalho, itens de linha e rodapé) ou um documento (com título, títulos e parágrafos).
-
-
Você recebe uma resposta de impressão contendo:
DocumentQualifier
: DocumentResponse.Result
: Success
{ "SaleToPOIResponse": { "PrintResponse": { "DocumentQualifier": "Document", "Response": { "Result": "Success" } }, "MessageHeader": { "ProtocolVersion": "3.0", "SaleID": "POSSystemID12345", "MessageClass": "Device", "MessageCategory": "Print", "ServiceID": "050823", "POIID": "V400m-346403161", "MessageType": "Response" } } }
Imprimir um QR code
Para usar o terminal para imprimir um QR code que o cliente pode digitalizar com seu dispositivo móvel:
-
Decida o que o QR code precisa conter.
- Apenas um URL: você não precisa fazer nada agora. Você especificará isso como uma sequência de texto na solicitação de impressão.
-
Mais do que um URL: escreva o conteúdo e converta-o em uma string codificada em URL.
-
Faça uma solicitação POST para o endpoint da API de terminais, especificando:
-
MessageHeader
: A estrutura daMessageHeader
padrão, explicada nos fundamentos da API de terminais:Parâmetro Requerimento Descrição ProtocolVersion
3.0 MessageClass
Device MessageCategory
Print MessageType
Request SaleID
Seu ID exclusivo para a caixa registradora. ServiceID
Seu ID exclusivo para esta solicitação, consistindo em 1 a 10 caracteres alfanuméricos. Este valor precisa ser exclusivo nas últimas 48 horas. POIID
ID exclusivo do terminal para o qual você deseja encaminhar esta solicitação. Formato: [modelo do dispositivo] - [número de série].
-
PrintRequest.PrintOutput
: O corpo da solicitação com:Parâmetro Requerimento Descrição DocumentQualifier
CustomerReceipt ResponseMode
PrintEnd OutputContent.OutputFormat
BarCode OutputContent.OutputBarcode.BarcodeType
QRCode OutputContent.OutputBarcode.BarcodeValue
O conteúdo do QR code, especificado como uma sequência de texto ou uma sequência codificada em URL.
Você recebe uma resposta de impressão contendo:
DocumentQualifier
: CustomerReceiptResponse.Result
: Success
{ "SaleToPOIResponse": { "PrintResponse": { "DocumentQualifier": "CustomerReceipt", "Response": { "Result": "Success" } }, "MessageHeader": { "ProtocolVersion": "3.0", "SaleID": "POSSystemID12345", "MessageClass": "Device", "MessageCategory": "Print", "ServiceID": "050817", "POIID": "V400m-346403161", "MessageType": "Response" } } }
-