openapi: 3.1.0 info: title: ItsaCheckmate Marketplace for Developers Locations Orders API version: '2.2' description: 'ItsaCheckmate (Checkmate) is restaurant middleware that connects point-of-sale (POS) systems to delivery marketplaces and online ordering channels. The Marketplace for Developers API is an open REST API that lets technology partners build a single integration to read and write menus, orders, and locations across 50+ POS systems and 100+ ordering platforms. Authentication uses an OAuth-style flow: a token endpoint issues short-lived, scoped access tokens (24-hour default expiry) and refresh tokens. After obtaining a token a partner must call the Activate Location endpoint before any menu or order operation will succeed. Menu retrieval requires the `menus` scope. Order submission supports both standard and group orders via a `group_order` flag and requires a verified location. Endpoints documented here were confirmed from the official Checkmate developer reference (openapi-itsacheckmate.readme.io) and its llms.txt index. The reference also publishes ready-to-use Postman collections and an Update Notice webhook for real-time menu synchronization.' contact: name: ItsaCheckmate Marketplace for Developers url: https://openapi-itsacheckmate.readme.io/reference/getting-started license: name: ItsaCheckmate Developer Terms url: https://www.itsacheckmate.com/solutions/marketplace-for-developers x-generated-from: documentation x-source-url: https://openapi-itsacheckmate.readme.io/llms.txt x-last-validated: '2026-06-02' servers: - url: https://sandbox-api.itsacheckmate.com description: ItsaCheckmate sandbox API base URL tags: - name: Orders description: Standard and group order submission into the POS. paths: /api/v2/orders/{order_source}: post: tags: - Orders operationId: submitOrder summary: ItsaCheckmate Submit Order description: Submits a standard order or a group order into the location's POS system for a specific ordering platform. A group order, indicated by the group_order flag, is an order placed by multiple individuals together. The location must be verified before orders can be submitted. security: - bearerAuth: [] parameters: - name: order_source in: path description: Name of the ordering platform the order originates from. required: true schema: type: string example: doordash - name: accept in: header description: Response media type. Defaults to application/json. required: false schema: type: string enum: - application/json - text/plain default: application/json example: application/json requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Order' examples: SubmitOrderRequestExample: summary: Default submitOrder request x-microcks-default: true value: external_id: dd_98765 order_source: doordash group_order: false customer: name: Jane Smith phone: '+15551234567' items: - id: item_2001 name: Classic Cheeseburger quantity: 2 price: 1099 totals: subtotal: 2198 tax: 195 total: 2393 payment_status: paid responses: '201': description: Order accepted into the POS content: application/json: schema: $ref: '#/components/schemas/OrderConfirmation' examples: SubmitOrder201Example: summary: Default submitOrder 201 response x-microcks-default: true value: order_id: ord_700456 external_id: dd_98765 status: accepted pos_reference: TOAST-A1B2C3 '400': description: Bad request — invalid order payload '401': description: Unauthorized '403': description: Forbidden — location not verified x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: OrderTotals: title: OrderTotals type: object description: Monetary totals for an order, in the smallest currency unit (cents). properties: subtotal: type: integer description: Sum of line items before tax. tax: type: integer description: Tax amount. total: type: integer description: Grand total charged. OrderConfirmation: title: OrderConfirmation type: object description: Confirmation that an order was accepted into the POS. properties: order_id: type: string description: ItsaCheckmate order identifier. external_id: type: string description: Originating platform order identifier. status: type: string description: Order acceptance status. enum: - accepted - rejected - pending pos_reference: type: string description: Reference assigned by the POS system. OrderItem: title: OrderItem type: object description: A single line item in an order. properties: id: type: string description: Menu item identifier. name: type: string description: Item name. quantity: type: integer description: Quantity ordered. price: type: integer description: Unit price in the smallest currency unit (cents). Order: title: Order type: object description: An order to submit into the POS. required: - external_id - items properties: external_id: type: string description: Identifier of the order in the originating ordering platform. order_source: type: string description: Ordering platform the order originated from. group_order: type: boolean description: Whether this is a group order placed by multiple individuals together. default: false customer: $ref: '#/components/schemas/Customer' items: type: array description: Line items in the order. items: $ref: '#/components/schemas/OrderItem' totals: $ref: '#/components/schemas/OrderTotals' payment_status: type: string description: Payment status of the order. enum: - paid - unpaid - refunded Customer: title: Customer type: object description: Customer who placed the order. properties: name: type: string description: Customer name. phone: type: string description: Customer phone number in E.164 format. securitySchemes: bearerAuth: type: http scheme: bearer description: OAuth-style scoped access token issued by /oauth/token.