> ## Documentation Index > Fetch the complete documentation index at: https://docs.restaurant365.com/llms.txt > Use this file to discover all available pages before exploring further. # Daily Sales > Retrieves a single daily sales summary with its paginated sales tickets for the specified business date and location **Security** The requesting user must have the following permission to retrieve daily sales: - Sales & Cash → Daily Sales → View Daily Sales ## OpenAPI ````json GET /public/v1/sales/daily-sales { "openapi": "3.0.1", "info": { "title": "R365 Public API", "contact": { "name": "R365 Services Team", "email": "r365@restaurant365.com" }, "version": "1.0" }, "security": [ { "Bearer": [] } ], "paths": { "/public/v1/sales/daily-sales": { "get": { "tags": [ "sales" ], "summary": "Daily Sales", "description": "Retrieves a single daily sales summary with its paginated sales tickets for the specified business date and location\n\n**Security**\n\nThe requesting user must have the following permission to retrieve daily sales:\n\n- Sales & Cash → Daily Sales → View Daily Sales", "parameters": [ { "$ref": "#/components/parameters/TenantId" }, { "name": "businessDate", "in": "query", "description": "The business date of the daily sales summary to retrieve", "required": true, "schema": { "type": "string", "format": "date" } }, { "name": "location", "in": "query", "description": "Location identifier to filter by", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "pageSize", "in": "query", "description": "Maximum number of sales tickets to return in one page. Pagination applies only to the nested salesTickets array — the daily sales summary itself is a single object, not a collection.", "required": false, "schema": { "type": "integer", "format": "int32", "minimum": 1, "maximum": 250, "default": 250 } }, { "name": "continuationToken", "in": "query", "description": "Continuation token for paging the nested salesTickets array. Use the nextLink from a previous response to get the next page of tickets.", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Daily sales summary with paginated sales tickets.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetDailySalesResponse" } } } }, "400": { "description": "Bad Request — a parameter value is malformed, of the wrong type, or outside its allowed range." }, "401": { "description": "Unauthorized — the bearer token is missing, invalid or expired, or is not valid for the specified tenant." }, "403": { "description": "Forbidden — the caller lacks the permission required for this operation." }, "404": { "description": "Not Found — the requested resource does not exist, or the supplied continuation token is unknown or has expired." }, "409": { "description": "Conflict — the request conflicts with the current state of the resource and cannot be applied." }, "422": { "description": "Unprocessable Entity — a required parameter is missing, or a supplied parameter value is invalid." }, "429": { "description": "Too Many Requests — the caller has exceeded the rate limit; retry after a short delay." }, "500": { "description": "Internal Server Error — an unexpected error occurred while processing the request." } } } } }, "components": { "parameters": { "TenantId": { "name": "x-r365-context-tenant-id", "in": "header", "required": true, "description": "Identifies the R365 tenant the request applies to. Required on every request.", "schema": { "type": "string" } } }, "schemas": { "GetDailySalesResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/DailySalesSummary" }, "nextLink": { "type": "string", "nullable": true, "description": "URL to retrieve the next page of sales tickets, or null when this is the last page. Only the salesTickets array is paged: the data summary object is repeated in full on every page, so accumulate data.salesTickets across pages rather than data itself." } }, "additionalProperties": false }, "DailySalesSummary": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Unique identifier of the daily sales summary." }, "location": { "$ref": "#/components/schemas/DailySalesLocationReference" }, "businessDate": { "type": "string", "format": "date" }, "netSales": { "type": "number", "format": "double" }, "grossSales": { "type": "number", "format": "double" }, "guestCount": { "type": "integer", "format": "int32" }, "totalLaborHours": { "type": "number", "format": "double" }, "totalLaborAmount": { "type": "number", "format": "double" }, "totalLaborPercentage": { "type": "integer", "format": "int32" }, "totalDeposit": { "type": "number", "format": "double" }, "expectedCash": { "type": "number", "format": "double" }, "paidInTotal": { "type": "number", "format": "double" }, "paidOutTotal": { "type": "number", "format": "double" }, "overShort": { "type": "number", "format": "double" }, "salesTickets": { "type": "array", "items": { "$ref": "#/components/schemas/SalesTicket" }, "nullable": true } }, "additionalProperties": false }, "DailySalesLocationReference": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Unique identifier of the location." }, "name": { "type": "string", "nullable": true, "description": "Display name of the location." }, "number": { "type": "string", "nullable": true, "description": "Number assigned to the location." } }, "additionalProperties": false }, "SalesTicket": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Unique identifier of the sales ticket." }, "receiptNumber": { "type": "string", "nullable": true }, "checkNumber": { "type": "string", "nullable": true }, "comment": { "type": "string", "nullable": true, "description": "Free-text comment associated with the sales ticket." }, "saleDateTime": { "type": "string", "format": "date-time", "nullable": true }, "dayOfWeek": { "type": "string", "nullable": true }, "dayPart": { "type": "string", "nullable": true }, "netSales": { "type": "number", "format": "double" }, "grossSales": { "type": "number", "format": "double" }, "salesAmount": { "type": "number", "format": "double" }, "guestCount": { "type": "integer", "format": "int32" }, "orderHour": { "type": "integer", "format": "int32", "nullable": true }, "taxAmount": { "type": "number", "format": "double" }, "taxDetail": { "type": "array", "items": { "$ref": "#/components/schemas/TaxDetail" }, "nullable": true }, "tipAmount": { "type": "number", "format": "double" }, "totalAmount": { "type": "number", "format": "double", "description": "Total monetary amount on the sales ticket." }, "totalPayment": { "type": "number", "format": "double" }, "void": { "type": "boolean" }, "server": { "$ref": "#/components/schemas/ServerReference" }, "salesDetails": { "type": "array", "items": { "$ref": "#/components/schemas/SalesDetail" }, "nullable": true }, "salesPayments": { "type": "array", "items": { "$ref": "#/components/schemas/SalesPayment" }, "nullable": true } }, "additionalProperties": false }, "TaxDetail": { "type": "object", "properties": { "rateId": { "type": "string" }, "name": { "type": "string", "nullable": true, "description": "Display name of the tax detail." }, "rate": { "type": "number", "format": "double" }, "taxType": { "type": "string" }, "inclusionType": { "type": "string" }, "appliedTaxPortionAmount": { "type": "number", "format": "double" } }, "additionalProperties": false }, "ServerReference": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Unique identifier of the server." }, "name": { "type": "string", "nullable": true, "description": "Display name of the server." }, "payrollId": { "type": "string", "nullable": true } }, "additionalProperties": false }, "SalesDetail": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Unique identifier of the sales detail." }, "posItem": { "$ref": "#/components/schemas/PosItemReference" }, "saleAmount": { "type": "number", "format": "double" }, "quantity": { "type": "number", "format": "double" }, "void": { "type": "boolean" }, "salesAccount": { "$ref": "#/components/schemas/SalesAccountReference" }, "salesCategory": { "type": "string", "nullable": true }, "menuItemCategory1": { "type": "string", "nullable": true }, "menuItemCategory2": { "type": "string", "nullable": true }, "menuItemCategory3": { "type": "string", "nullable": true } }, "additionalProperties": false }, "SalesPayment": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Unique identifier of the sales payment." }, "amount": { "type": "number", "format": "double", "description": "Monetary amount on the sales payment." }, "paymentType": { "type": "string", "nullable": true }, "paymentGroup": { "type": "string", "nullable": true }, "paymentDate": { "type": "string", "format": "date-time", "nullable": true } }, "additionalProperties": false }, "PosItemReference": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64", "description": "Unique identifier of the pos item." }, "name": { "type": "string", "nullable": true, "description": "Display name of the pos item." } }, "additionalProperties": false }, "SalesAccountReference": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "description": "Unique identifier of the sales account." }, "name": { "type": "string", "nullable": true, "description": "Display name of the sales account." }, "number": { "type": "string", "nullable": true, "description": "Number assigned to the sales account." }, "glType": { "type": "string", "nullable": true } }, "additionalProperties": false } }, "securitySchemes": { "Bearer": { "type": "http", "scheme": "Bearer" } } } } ````