openapi: 3.0.3 info: title: EposNow HQ REST Categories Stock API description: The EposNow HQ REST API lets developers programmatically interact with the cloud-based aspects of the Epos Now point of sale (POS) platform for retail and hospitality - products, categories, transactions (sales), customers, stock, tax rates, and devices. This document models the documented V2 API surface (base https://api.eposnowhq.com/api/V2). Epos Now recommends the newer V4 / "Global" API (https://api.eposnowhq.com/api/v4) for new integrations, which reorganizes the same domains; V4 per-resource paths are not fully enumerated here. All requests use HTTP Basic authentication with a per-device access token (Base64 of "API Key:API Secret") issued from the Back Office. List endpoints are paginated at up to 200 records per page via the page query parameter. version: V2 contact: name: Epos Now Developers url: https://developer.eposnowhq.com/ servers: - url: https://api.eposnowhq.com/api/V2 description: EposNow HQ REST API (V2) security: - basicAuth: [] tags: - name: Stock description: Product stock levels and stock control. paths: /ProductStock: get: operationId: listProductStock tags: - Stock summary: List product stock levels description: Returns a paginated list of product stock levels, up to 200 per page. Used to read on-hand inventory per product. parameters: - $ref: '#/components/parameters/Page' responses: '200': description: A paginated list of product stock levels. content: application/json: schema: type: array items: $ref: '#/components/schemas/ProductStock' '401': $ref: '#/components/responses/Unauthorized' /StockTransfer: get: operationId: listStockTransfers tags: - Stock summary: List stock transfers description: Returns a paginated list of stock transfers between locations, up to 200 per page. parameters: - $ref: '#/components/parameters/Page' responses: '200': description: A paginated list of stock transfers. content: application/json: schema: type: array items: type: object additionalProperties: true '401': $ref: '#/components/responses/Unauthorized' components: responses: Unauthorized: description: Missing or invalid Basic authentication credentials. schemas: ProductStock: type: object properties: ProductId: type: integer LocationId: type: integer CurrentStock: type: number additionalProperties: true parameters: Page: name: page in: query required: false description: The page number of results to return (up to 200 records per page). schema: type: integer default: 1 securitySchemes: basicAuth: type: http scheme: basic description: 'HTTP Basic authentication. The access token is the Base64 encoding of "API Key:API Secret" (the API Key, a colon, then the API Secret, with no spaces), sent as "Authorization: Basic {token}". Credentials are issued per API Device registered under Web Integrations in the Epos Now Back Office.'