Supergood | GoTab API

Supergood | GoTab API

Programmatically access GoTab restaurant and hotel commerce data—orders, tabs/checks, menus, tickets, and payments—with a stable REST API. Supergood builds and operates production-grade, unofficial GoTab integrations so your team can automate FOH/BOH workflows without heavy custom engineering.

Plain English: GoTab is hospitality commerce software used by restaurants, breweries, hotels, and food halls to power QR ordering, POS, kitchen display systems (KDS), and contactless payments. An unofficial API lets you programmatically pull order and tab lists, menu items and modifiers, ticket statuses, tables/zones, customer contact details, payments, tips, taxes, and service charges—and push new menu items or updates, fire/complete tickets, and close checks back into GoTab.

For a tech company integrating with GoTab, this means you can ingest real-time order and payment data to power dashboards, sync tips and settlements to accounting (e.g., QuickBooks, Xero), automate menu updates from your catalog, build loyalty or CRM flows from guest data, drive KDS/FOH automations, and keep stakeholder systems (ERP, analytics, CRM, scheduling) in lockstep.

Operators often report challenges like limited exports, difficulty wiring in automation from external tools, and gated or costly API access. A robust unofficial API mitigates these pain points by providing consistent endpoints, normalized data across venues, and webhooks for real-time events—even when the native platform prioritizes portal-first workflows.

What is GoTab?

GoTab (https://gotab.com/) is a cloud platform for hospitality commerce, enabling guests to order and pay via QR codes or staff-operated POS, with kitchen routing, tabs/checks, and multi-venue management. Teams use GoTab to manage digital menus and modifiers, process dine-in and takeout orders, route items to stations via KDS, handle tips/service charges and taxes, and close out tabs with partial/split payments—all with guest-facing experiences and staff tools.

Core product areas include:

  • Ordering & Commerce (QR Ordering, Online Ordering, Dine-In, Pickup/Delivery)
  • POS & Kitchen Operations (POS, KDS/Tickets, Station Routing)
  • Menu Management (Menus, Items, Modifier Groups, Availability)
  • Payments & Settlement (Cards, Cash, Room Charge/House Account, Tips, Service Charges, Taxes)
  • Guest Experience (Customer Profiles, Receipts, Messaging)
  • Multi-Venue Management (Locations, Zones/Tables, Devices, Staff Roles/Permissions)

Common data entities:

  • Locations/Venues and Zones/Tables
  • Menus, Items, Categories, Modifier Groups/Options
  • Orders/Tickets (status lifecycle: placed, fired, ready, completed, closed)
  • Tabs/Checks (balances, splits, transfers, service charges)
  • Payments (method, authorization, capture, refunds), Tips/Gratuity
  • Customers/Guests (contact info, order history)
  • Staff Users/Roles (Server, Manager, Admin), Devices (POS/KDS terminals)

The GoTab Integration Challenge

Hospitality teams rely on GoTab for day-to-day operations, but turning front-end, QR-first interactions into API-driven automation introduces complexity:

  • Role-aware experiences: Guests, servers, managers, and kitchen staff each see different data and permissions (e.g., closing tabs, comping items, issuing refunds)
  • Menu dynamics: Modifier groups, station routing, availability windows, and zone-based menus require careful modeling
  • Order lifecycle nuance: Split checks, transfers, partial payments, and voids/refunds affect how totals, tips, taxes, and service charges are calculated
  • Kitchen event timing: Firing, bumping, and completing tickets span multiple stations; status changes must be captured consistently
  • Authentication complexity: Manager PINs, device sessions, SSO for multi-location operators, and session lifecycles complicate headless automation
  • Data access friction: Operators often report limited CSV exports or gated API access, making real-time integrations and automations hard to maintain

How Supergood Creates GoTab APIs

Supergood reverse-engineers authenticated browser and staff app flows to deliver a resilient API endpoint layer for your GoTab tenant.

  • Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely; supports manager PIN challenges where applicable
  • Maintains session continuity with automated refresh and change detection
  • Normalizes responses so you can integrate once and rely on consistent objects across venues and modules
  • Aligns with customer entitlements and role-based permissions to ensure compliant access

Use Cases

Real-Time Orders, Tabs & Customer Data Sync

  • Mirror orders, tabs/checks, and guests into your internal systems for analytics
  • Keep menu metadata current across multi-venue operations
  • Normalize statuses, totals, taxes, and service charges for cross-location reporting

Kitchen & FOH Automation

  • Drive KDS automations by ingesting ticket updates
  • Trigger alerts for SLA breaches (e.g., long prep times) and notify staff
  • Enrich workflows with device routing and zone/table assignments
  • Push new items, prices, and modifier groups from your catalog or ERP
  • Schedule availability windows and station routing programmatically
  • Bulk-edit menus for seasonal changes across locations

Payments, Tips & Accounting Sync

  • Export settlements, tips, and service charges to accounting (e.g., QuickBooks, Xero)
  • Track refunds/voids and reconcile to ERP
  • Maintain audit trails for gratuity distribution and compliance

Available Endpoints

Authentication

POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions \
  --header 'Authorization: Basic <Base64 encoded token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "username": "[email protected]",
    "password": "<password>",
    "mfa": { "type": "totp", "code": "123456" }
  }'

Example response

{
  "authToken": "eyJhbGciOi...",
  "expiresIn": 3600,
  "user": {
    "id": "u_gt_7a3f12",
    "name": "Floor Manager",
    "entitlements": ["orders", "menus", "tickets", "tabs", "payments"],
    "role": "manager"
  }
}

Orders

GET /orders: List orders with filters and summary details across venues and channels.

Query parameters

  • locationId: string
  • status: open | in_kitchen | ready | completed | voided | refunded
  • channel: qr | pos | online
  • fulfillmentType: dine_in | pickup | delivery | room_charge
  • updatedFrom, updatedTo: ISO 8601 timestamps
  • page, pageSize: integers for pagination

Example response

{
  "items": [
    {
      "orderId": "ord_91b7e0",
      "tabId": "tab_5c21f9",
      "checkNumber": 3842,
      "locationId": "loc_seattle_taphouse",
      "channel": "qr",
      "fulfillmentType": "dine_in",
      "table": { "zone": "Patio", "tableNumber": "P12" },
      "guest": { "name": "Sam W.", "phone": "+12065551234" },
      "items": [
        {
          "itemId": "itm_burger_classic",
          "name": "Classic Burger",
          "quantity": 1,
          "unitPrice": 14.00,
          "modifiers": [
            { "group": "Cheese", "option": "Cheddar", "priceDelta": 1.00 },
            { "group": "Temp", "option": "Medium" }
          ],
          "station": "Grill",
          "notes": "No pickles"
        },
        {
          "itemId": "itm_fries",
          "name": "Fries",
          "quantity": 1,
          "unitPrice": 5.00,
          "station": "Fry"
        }
      ],
      "totals": {
        "subtotal": 20.00,
        "serviceCharge": 0.00,
        "tax": 2.00,
        "tip": 3.00,
        "total": 25.00
      },
      "status": "in_kitchen",
      "timestamps": {
        "placedAt": "2026-01-20T18:12:03Z",
        "firedAt": "2026-01-20T18:12:20Z",
        "completedAt": null,
        "closedAt": null
      },
      "updatedAt": "2026-01-20T18:13:10Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

POST /menus/{menuId}/items: Create a menu item with pricing, modifiers, routing, and availability.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/menus/mnu_main/items \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "Smoked Brisket Sandwich",
    "sku": "BBQ-001",
    "price": 16.50,
    "taxCategory": "prepared_food",
    "categories": ["BBQ", "Sandwiches"],
    "modifierGroups": [
      {
        "title": "Sides",
        "choiceType": "single",
        "options": [
          {"name": "Fries", "priceDelta": 0.00},
          {"name": "Slaw", "priceDelta": 0.00}
        ]
      },
      {
        "title": "Add-Ons",
        "choiceType": "multiple",
        "options": [
          {"name": "Extra Meat", "priceDelta": 4.00},
          {"name": "Pickled Jalapeños", "priceDelta": 1.00}
        ]
      }
    ],
    "stationRouting": ["Smoke", "Expo"],
    "availability": {
      "days": ["Fri", "Sat"],
      "startTimeLocal": "16:00",
      "endTimeLocal": "22:00"
    },
    "visible": true
  }'

Example response

{
  "itemId": "itm_brisket_7a12f0",
  "status": "active",
  "createdAt": "2026-01-21T10:03:11Z"
}

Tabs/Checks

POST /tabs/{tabId}/close: Close a tab/check with payment details, tips, and optional receipt delivery.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/tabs/tab_5c21f9/close \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "paymentMethod": "card",
    "tipAmount": 3.00,
    "serviceCharge": 0.00,
    "sendReceipt": true,
    "receipt": { "email": "[email protected]" },
    "referenceId": "erp-close-774"
  }'

Example response

{
  "tabId": "tab_5c21f9",
  "status": "closed",
  "closedAt": "2026-01-21T11:20:44Z",
  "totals": {
    "subtotal": 20.00,
    "serviceCharge": 0.00,
    "tax": 2.00,
    "tip": 3.00,
    "total": 25.00
  },
  "payment": {
    "method": "card",
    "transactionId": "pay_41e88c",
    "cardLast4": "1032"
  }
}

Get full API Specs →


Technical Specifications

  • Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports manager PIN challenges; service accounts or customer-managed credentials
  • Response format: JSON with consistent resource schemas and pagination across modules
  • Rate limits: Tuned for enterprise throughput while honoring customer entitlements and usage controls
  • Session management: Automatic reauth and cookie/session rotation with health checks
  • Data freshness: Near real-time retrieval of orders, tickets, tabs, menus, and payments
  • Security: Encrypted transport, scoped tokens, and audit logging; respects GoTab role-based permissions
  • Webhooks: Optional asynchronous delivery for long-running workflows (e.g., order/ticket events, tab closed, refunds)

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load
  • Throughput: Designed for high-volume order ingestion and menu/ticket automation across multi-venue operators
  • Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
  • Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates

Getting Started

  1. Schedule Integration Assessment

Book a 30-minute session to confirm your modules, licensing, and authentication model.

  1. Supergood Builds and Validates Your API

We deliver a hardened GoTab adapter tailored to your workflows and entitlements.

  1. Deploy with Monitoring

Go live with continuous monitoring and automatic adjustments as GoTab evolves.

Schedule Integration Call →


Frequently Asked Questions

Q: Which GoTab modules can this integration cover?

Supergood supports workflows across commonly used modules such as Ordering/Commerce (QR, POS, Online), Kitchen Ops (KDS/Tickets), Menu Management (Items, Modifiers), and Payments/Tabs (Tips, Service Charges, Refunds), subject to your licensing and entitlements. We scope coverage during integration assessment.

Q: How are MFA, SSO, and manager PINs handled for automation?

We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. Manager PIN challenges for privileged actions are handled securely. Sessions refresh automatically with challenge handling.

Q: Can you sync tips, service charges, and settlements to our accounting system?

Yes. We normalize orders, tabs, tips, taxes, and service charges to match your ERP/accounting schema and deliver updates via webhooks or polling while complying with rate and permission constraints. We commonly integrate with QuickBooks and Xero.

Q: Do you support split checks, transfers, and refunds?

Yes. We model tab/check splits, item transfers between tabs, voids, and refunds explicitly. Our normalized responses preserve audit trails and lifecycle timestamps for reconciliation.



Ready to automate your GoTab workflows?

Supergood can have your GoTab integration live in days with no ongoing engineering maintenance.

Get Started →

Read more