Pay at Table Itemised Check message

In this section you will learn how to process a Pay at Table Itemized Receipt message

Pay at Table Itemised Check Overview

The Pay at Table Itemised Check message enables a staff member to print out an itemised check on an allocated wireless PIN Entry Device before the payment is processed.

665

How to process a PayAtTableItemisedCheckRequest message

ANYpay POS sends a PayAtTableItemisedCheckRequest message to the merchants system once a staff member has requested an Itemised Check on an allocated Wireless PIN Entry Device.

Section PayAtTableItemisedCheckRequest Element describes the elements required to build a PayAtTableItemisedCheckRequest message.

📘

Key elements of a PayAtTableItemisedCheckRequest message

Either a CheckNumber OR TableNumber MUST be present in the PayAtTableItemisedCheckRequest message

📘

Check Numbers

Check Numbers must range from 1 to 99999999 (Max 8 chars)
Check Numbers can be alphanumeric (1001A)
Check Numbers can contain special characters (1001-A)

Supported Special Characters
.,*'"- +#!:;@=&/%$_

An example of a PayAtTableItemisedCheckRequest message can be seen below.

<?xml version="1.0" encoding="utf-16"?>
<PayAtTableItemisedCheckRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://servebase.com/2009/06/pedframework">
  <CheckNumber>1001</CheckNumber>
  <TableNumber></TableNumber>
  <SessionId>22f643e3-21ce-409e-a1d3-1bc67349e8c2</SessionId>
</PayAtTableItemisedCheckRequest>

How to respond with a PayAtTableItemisedCheckResponse message

The contents of a PayAtTableItemisedCheckResponse Element returned by the merchant system is then printed on the PIN Entry Device.

An example of a PayAtTableItemisedCheckResponse message can be seen below.

📘

PayAtTableItemisedCheckResponse (Multiple checks)

In cases where a table has multiple checks the break attribute is used to indicate the end of a receipt.

<?xml version="1.0" encoding="utf-16"?>
<PayAtTableItemisedCheckResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://servebase.com/2009/06/pedframework">
  <ResponseCode>Success</ResponseCode>
  <FaultResponseCode>0</FaultResponseCode>
  <ResponseMessage>Success</ResponseMessage>  
  <ReceiptPrintData>
    <Line><Text align="center" bold="true" size="Large">PXP Demo</Text></Line>
    <Line><Text align="center">05/05/2018 15:34</Text></Line>
    <Line><Text align="center">VAT: 123 456 789</Text></Line> 
    <Line><Text align="left">----------------------------</Text></Line> 
    <Line><Text align="left" size="Medium">CHECK 1001</Text></line>
    <Line><Text align="left">----------------------------</Text></Line>
    <Line><Text align="left">1 Turkey Burger       £10.00</Text></Line>
    <Line><Text align="left">2 Fries               £10.00</Text></Line>
    <Line/>
    <Line><Text align="left">Net Total             £20.00</Text></Line>
    <Line><Text align="left">VAT @ 20%              £4.00</Text></Line>
    <Line><Text align="left">Total                 £24.00</Text></Line>
    <Line><Text align="left">-------- Check Open --------</Text></Line>
  </ReceiptPrintData>
</PayAtTableItemisedCheckResponse>
<?xml version="1.0" encoding="utf-16"?>
<PayAtTableItemisedCheckResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://servebase.com/2009/06/pedframework">
  <ResponseCode>Success</ResponseCode>
  <FaultResponseCode>0</FaultResponseCode>
  <ResponseMessage>Success</ResponseMessage>  
  <ReceiptPrintData>
    <Line><Text align="center" bold="true" size="Large">PXP Demo</Text></Line>
    <Line><Text align="center">05/05/2018 15:34</Text></Line>
    <Line><Text align="center">VAT: 123 456 789</Text></Line> 
    <Line><Text align="left">----------------------------</Text></Line> 
    <Line><Text align="left" size="Medium">CHECK 1001</Text></line>
    <Line><Text align="left">----------------------------</Text></Line>
    <Line><Text align="left">1 Turkey Burger       £10.00</Text></Line>
    <Line><Text align="left">2 Fries               £10.00</Text></Line>
    <Line/>
    <Line><Text align="left">Net Total             £20.00</Text></Line>
    <Line><Text align="left">VAT @ 20%              £4.00</Text></Line>
    <Line><Text align="left">Total                 £24.00</Text></Line>
    <Line><Text align="left">-------- Check Open --------</Text></Line>
    <Line break="true"></Line>
    <Line><Text align="center" bold="true" size="Large">PXP Demo</Text></Line>
    <Line><Text align="center">05/05/2018 15:36</Text></Line>
    <Line><Text align="center">VAT: 123 456 789</Text></Line> 
    <Line><Text align="left">----------------------------</Text></Line> 
    <Line><Text align="left" size="Medium">CHECK 1002</Text></line>
    <Line><Text align="left">----------------------------</Text></Line>
    <Line><Text align="left">1 Fries                £5.00</Text></Line>
    <Line/>
    <Line><Text align="left">Net Total              £5.00</Text></Line>
    <Line><Text align="left">VAT @ 20%              £1.00</Text></Line>
    <Line><Text align="left">Total                  £6.00</Text></Line>
    <Line><Text align="left">-------- Check Open --------</Text></Line>    
  </ReceiptPrintData>
</PayAtTableItemisedCheckResponse>
<?xml version="1.0" encoding="utf-16"?>
<PayAtTableItemisedCheckResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://servebase.com/2009/06/pedframework">
  <ResponseCode>Error</ResponseCode>
  <FaultResponseCode>5</FaultResponseCode>
  <ResponseMessage>Itemised Check 1001 Not Found</ResponseMessage>  
</PayAtTableItemisedCheckResponse>
<?xml version="1.0" encoding="utf-16"?>
<PayAtTableItemisedCheckResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://servebase.com/2009/06/pedframework">
  <ResponseCode>Error</ResponseCode>
  <FaultResponseCode>7</FaultResponseCode>
  <ResponseMessage>General Error</ResponseMessage>  
</PayAtTableItemisedCheckResponse>