PosTicket
One register ticket, as the POS stored it. A field whose column the store's POS lacks, or that the POS left blank, is absent. A ticket never says who rang it or who the customer is beyond the POS customer id: no cashier, no remark, no phone. A tender never carries a card number, its last four digits, an authorization or reference code, a check number, a gift-card number, an EBT or gift-card balance or a signature: the store agent never reads the columns that hold them.
Type: object.
| Name | Type | Description |
|---|---|---|
sale required | boolean | True for the sale types S and O only; count only these as revenue. |
ticketId required | string | The POS ticket id: the register code, the date and the time the ticket was started. Pass it to GET /v1/tickets/{ticketId}. The register moves the seconds forward to keep ids unique, so read dates and times from date, time and createdAt, not from the id. |
type required | string | The ticket type as the register wrote it. Only the two sale types are read unless type names others: S (a completed register sale) and O (a direct account charge or payment, which normally carries a sale of 0). The other types are not sales and must never be summed as revenue: V a voided sale (its sale total is still filled in), T calculate-only or a transfer whose value already landed on another ticket (it would double-count), R a transfer ticket not yet paid, G training mode, H a held sale and A a sale still being rung. Compare with type and sale on a row. One of: S, O, V, T, R, G, H, A. |
anonymousCustomer | boolean | Present and true when the ticket belongs to the register's anonymous walk-in or remote-customer placeholder account, which is not a customer; absent otherwise. |
businessDay | string (date) | The business day the POS assigned the ticket, else its date (YYYY-MM-DD). |
createdAt | string (date-time) | date and time as one instant (UTC). |
customerDiscountPercent | number | The customer's ticket discount percentage. |
customerId | string | The POS customer id (posCustomerId on the customer reads) of the account the ticket names, when exactly one account carries it. Absent, with anonymousCustomer true, on a ticket of the register's walk-in or remote-customer placeholder account; absent too when the ticket names no account or one the store cannot tell apart. |
date | string (date) | The day the ticket was started (the store's calendar). |
finishedAt | string (date-time) | When the register last finished the ticket: completed, held or voided (UTC). Later edits on the ticket screens do not move it. |
lines | array of PosTicketLine | Single-ticket read only: every line row of the ticket in the register's receipt order, voided lines included (voided true). Lines of tickets the store moved to its line archive are not read, so such a ticket has no lines. At most 500 items. |
linesTruncated | boolean | Single-ticket read only: the ticket has more than the 500 lines one answer carries. |
logNumber | integer | The register log (shift) the ticket was rung in: logNumber on a Z-report log. |
paperBagCount | number | Paper bags charged. |
payType | string | The tender code of the only tender, M when there were several (the ticket's pay type as the register wrote it). |
priceLevel | integer | The ticket's price level, at stores that use level pricing. |
register | string | The register code the ticket id starts with (01, 32, or one character on older databases). |
taxExempt | boolean | The ticket was rung tax exempt. |
taxRate1 | number | The first tax rate in percent, as the ticket captured it. |
taxRate2 | number | The second tax rate in percent. |
tenders | array of PosTicketTender | Single-ticket read only: every tender row of the ticket, in the order it was taken. The change given is not a tender row; it is totals.change. At most 100 items. |
tendersTruncated | boolean | Single-ticket read only: the ticket has more than the 100 tenders one answer carries. |
ticketDiscountPercent | number | The cashier's ticket discount percentage (only one of the two discount percentages is ever set). |
time | string | The time the ticket was started, the store's wall clock (HH:MM:SS). |
totals | PosTicketTotals | |
upChargePercent | number | The up-charge percentage on the ticket. |
No other fields appear.