# GoTab Documentation > GoTab, Inc., the contactless ordering & payment platform, helps restaurants run lean, profitable operations. Append .md to any documentation page URL to get its markdown version. ## Guides - [Client Credentials Grant](https://gotab.readme.io/docs/client-credentials-flow.md) - [Authorization Code Grant Flow](https://gotab.readme.io/docs/authorization-code-grant-flow.md) - [Testing with Postman](https://gotab.readme.io/docs/testing-with-postman.md) ## API Reference - [List customers](https://gotab.readme.io/reference/listcustomers.md): Lists existing customers for an integration - [Create customer](https://gotab.readme.io/reference/createcustomer.md): Creates a new customer - [Get customer](https://gotab.readme.io/reference/getcustomer.md): Retrieves a customer - [Get Item Group](https://gotab.readme.io/reference/getitemgroup.md): Gets item group data - [Create Item Group](https://gotab.readme.io/reference/createitemgroup.md): Creates an item group for the tab - [Delete Item Group](https://gotab.readme.io/reference/deleteitemgroup.md): Removes the item group from the tab - [Create Payment Intent](https://gotab.readme.io/reference/createpaymentintent.md): Creates a new payment intent for a tab - [Get Payment Intent](https://gotab.readme.io/reference/getpaymentintent.md): Retrieves a payment intent by its UUID. Returns 202 while the intent is still in progress. - [Process Payment Intent](https://gotab.readme.io/reference/processpaymentintent.md): Processes and authorizes a payment intent. - [Get Item Groups](https://gotab.readme.io/reference/getitemgroups.md): Gets tab item groups data - [Update Item Group Selection](https://gotab.readme.io/reference/updateitemgroupselection.md): Updates the customer item selection for an item group - [Refund a tab payment](https://gotab.readme.io/reference/refundtab.md): Issues a partial refund against a single payment on the tab. Provide either an amount (in cents) for an open refund, or a list of items for an itemized refund, but not both. - [Delete Location Integration](https://gotab.readme.io/reference/deleteintegrationlocation.md): Remove an location and associated permissions from an integration - [List locations](https://gotab.readme.io/reference/listlocations.md): List locations accessible to the current user - [Subscribe locations to an integration](https://gotab.readme.io/reference/subscribelocations.md): Subscribes one or more locations to the integration associated with the bearer token. Intended for integrator-driven location mapping: after an end-user selects locations in the integrator's UI, the integrator posts the chosen location uuids here. The integration is resolved from the token, and the token's user must have access to every requested location — if any location fails the access check, no locations are subscribed. - [Bulk create products](https://gotab.readme.io/reference/bulkcreateproducts.md): Create one or more products simultaneously. - [Bulk update products](https://gotab.readme.io/reference/bulkupdateproducts.md): Update and archive one or more products simultaneously. - [List modifiers](https://gotab.readme.io/reference/listmodifiers.md): list modifiers at a location - [Create a new modifier](https://gotab.readme.io/reference/createmodifier.md): Create a new modifier - [Get a modifier](https://gotab.readme.io/reference/getmodifier.md): Get information about a modifier - [Update a modifier](https://gotab.readme.io/reference/updatemodifier.md): Updates a modifier along with any products that use it - [Delete a modifier](https://gotab.readme.io/reference/deletemodifier.md): Archives a modifier and subsequently removes it from all products it is attached to - [List modifier products](https://gotab.readme.io/reference/listmodifierproducts.md): List all the products that use a modifier - [Add modifier to products](https://gotab.readme.io/reference/attachmodifiertoproducts.md): Add the modifier to one or more products. If the modifier is already on a product it will be ignored. - [Remove modifier from products](https://gotab.readme.io/reference/detachmodifierfromproducts.md): Remove the modifier from one or more products. If the modifier is not on a product it will be ignored. - [Bulk update users](https://gotab.readme.io/reference/bulkupdateusers.md): Create, update, and archive multiple users at once - [List User Roles](https://gotab.readme.io/reference/listuserroles.md): Get all user roles defined at a location - [Get User Role](https://gotab.readme.io/reference/getuserrole.md): Returns information about a specific user role at a location - [List users](https://gotab.readme.io/reference/listusers.md): Lists existing users at a location - [Create user](https://gotab.readme.io/reference/createuser.md): Creates a new user - [Get user](https://gotab.readme.io/reference/getuser.md): Get an existing user - [Update user](https://gotab.readme.io/reference/updateuser.md): Update an existing user - [Remove user](https://gotab.readme.io/reference/removeuser.md): Remove a user from a location - [Adjust or transfer inventory](https://gotab.readme.io/reference/transferproductinventory.md): Transfer or update inventory within GoTab locations or to/from GoTab locations and integrations - [Get product variant inventory](https://gotab.readme.io/reference/getproductinventoryvariant.md): Get the product variant inventory at a location - [Update product variant inventory](https://gotab.readme.io/reference/updateproductinventoryvariant.md): Update product variant inventory at a location. - [List product inventory](https://gotab.readme.io/reference/listproductinventory.md): List the inventory details for a product and its variants - [Update product inventory](https://gotab.readme.io/reference/updateproductinventory.md): Update the inventory for a product - [Apply inventory instructions](https://gotab.readme.io/reference/applyinventoryrecipeinstructions.md): Applies a set of incremental instructions to create or update inventory items and their component relationships. Unlike a full-tree upsert, this endpoint is additive — existing relationships are never removed unless an explicit `unlink` instruction is included. Returns the current state of all inventory items referenced in the request. - [Update SKU stock level](https://gotab.readme.io/reference/updateskustocklevel.md): Adjust the stock level for a specific SKU at a location. Only lowest-level components can be directly updated. Stock level can be optionally transferred from another SKU at a different location if `adjustment_reason` is `TRANSFER` and valid source information is included in the request body. - [List time entries](https://gotab.readme.io/reference/listtimeentries.md): Returns time entries (shifts and breaks) at a location - [Create time entry](https://gotab.readme.io/reference/createtimeentry.md): Creates a new shift or adds a break to an existing shift - [Get time entry](https://gotab.readme.io/reference/gettimeentry.md): Returns a single time entry by uuid - [Update time entry](https://gotab.readme.io/reference/updatetimeentry.md): Updates an existing time entry - [Price Check](https://gotab.readme.io/reference/pricecheck.md): Performs a price check on one or more items. - [Create a tab](https://gotab.readme.io/reference/createtab.md): Creates a new tab. - [Get a tab by pass](https://gotab.readme.io/reference/gettabbypass.md): Get a tab by its tab pass - [Cancel tab by pass](https://gotab.readme.io/reference/canceltabbypass.md): Fully refunds or voids all line items on an OPEN or CLOSED tab. - [List tab items by pass](https://gotab.readme.io/reference/gettabitemsbypass.md): Get the items on a tab by its tab pass. - [Add payments to tab](https://gotab.readme.io/reference/addtabpayments.md): Add one or more payments to a tab. - [Add items to tab by pass](https://gotab.readme.io/reference/addtabitemsbypass.md): Add items to a tab by its tab pass. - [Get Tab Passes by pass](https://gotab.readme.io/reference/gettabpassesbypass.md): Get Tab Passes for a given a tab - [Assign Tab Pass by pass](https://gotab.readme.io/reference/assigntabpassbypass.md): Assign a Tab Pass to a tab - [Update a tab](https://gotab.readme.io/reference/updatetab.md): Update fiscal day of a tab - [Cancel tab](https://gotab.readme.io/reference/canceltab.md): Fully refunds or voids all line items on an OPEN or CLOSED tab. - [Get a tab](https://gotab.readme.io/reference/gettab.md): Get tab information by its uuid - [List tab items](https://gotab.readme.io/reference/gettabitems.md): Get the items on a tab. - [Add items to tab](https://gotab.readme.io/reference/addtabitems.md): Add items to a tab. - [Get Tab Passes](https://gotab.readme.io/reference/gettabpasses.md): Get Tab Passes for a given a tab - [Add Open Discount to a tab](https://gotab.readme.io/reference/addopendiscount.md): Add an open discount to a tab - [Assign Tab Pass](https://gotab.readme.io/reference/assigntabpass.md): Assign a Tab Pass to a tab - [Pay for a tab](https://gotab.readme.io/reference/paytablegacy.md): Add a payment to a tab. Deprecated. Use `/loc/:location_uuid/tabs/:tab_uuid/payments` or `/tabs/:tab_uuid/payments` instead. - [Close tab by pass](https://gotab.readme.io/reference/closetabbypass.md): Closes a tab that has no remaining balance due. Tabs are normally closed automatically once a payment settles them, so this endpoint is for tabs that are already fully settled or zeroed out and still need an explicit close. It does not send, void, or refund anything. The call is idempotent - closing an already closed tab succeeds and returns the tab unchanged. - [Close tab](https://gotab.readme.io/reference/closetab.md): Closes a tab that has no remaining balance due. Tabs are normally closed automatically once a payment settles them, so this endpoint is for tabs that are already fully settled or zeroed out and still need an explicit close. It does not send, void, or refund anything. The call is idempotent - closing an already closed tab succeeds and returns the tab unchanged. - [Validate a kiosk phone number](https://gotab.readme.io/reference/validatekioskphone.md): Strictly validates and normalizes a phone number before kiosk checkout. Always responds with HTTP 200 — either `{valid: true, phoneNumber}` carrying the normalized E.164 number, or `{valid: false, message}` when the number is rejected. - [Create labor schedule](https://gotab.readme.io/reference/createschedule.md): Creates a new labor schedule - [Update schedule](https://gotab.readme.io/reference/updateschedule.md): Update an existing schedule - [Archive schedule](https://gotab.readme.io/reference/archiveschedule.md): Archive a schedule from a location - [Get Tab Pass](https://gotab.readme.io/reference/gettabpass.md): Get a specific tab pass - [Update Tab Pass](https://gotab.readme.io/reference/updatetabpass.md): Update a specific tab pass - [Archive Tab Pass](https://gotab.readme.io/reference/archivetabpass.md): Archive a specific tab pass. A tab pass will automatically be archived when the tab is closed. - [Refresh Access Token](https://gotab.readme.io/reference/refreshtoken.md): Generates a new access token given the long lived refresh token - [Generate Access Token](https://gotab.readme.io/reference/authtoken.md): Returns an API Access Token - [Create Payment Session](https://gotab.readme.io/reference/createpaymentsession.md): Creates a new payment session for a tab - [Get Payment Terminal Checkout](https://gotab.readme.io/reference/getpaymentterminalcheckout.md): Get a payment terminal checkout. Optionally wait for completion if still in progress. - [Cancel Payment Terminal Checkout](https://gotab.readme.io/reference/cancelpaymentterminalcheckout.md): Cancel a payment terminal checkout - [Create Payment Terminal Checkout](https://gotab.readme.io/reference/createpaymentterminalcheckout.md): Create a payment terminal checkout - [List Payment Terminals](https://gotab.readme.io/reference/get_v2-loc-location-payment-terminals.md): Retrieve a list of payment terminals associated with the location. - [Add a customer to a segment](https://gotab.readme.io/reference/addcustomertoasegment.md): Takes in a segment uuid and a phone number to add a customer to a segment - [Delete customer from segment](https://gotab.readme.io/reference/deletecustomerfromsegment.md): Takes in a segment uuid and a customer id and removes that customer from the provided segment - [Delete customer from segment](https://gotab.readme.io/reference/deletecustomerfromsegmentbyhandle.md): Takes in a segment uuid and a customer handle and removes that customer from the provided segment - [/v2/pl](https://gotab.readme.io/reference/post_v2-pl.md): Creates a new pending location - [Trigger OTP Challenge](https://gotab.readme.io/reference/challengecustomer.md): Creates or resolves GoTab customer and triggers OTP challenge for verification - [Verify OTP Code](https://gotab.readme.io/reference/verifycustomer.md): Verifies a previously issued OTP code and optionally returns a payment auth token - [User and User Role Operations](https://gotab.readme.io/reference/useroperations.md): Takes in array of user and user role operations and runs in the order that they are defined - [Create wallet payment](https://gotab.readme.io/reference/createwalletpayment.md): Creates a payment on the tab associated with a valid wallet payment session token. - [List wallet payment methods](https://gotab.readme.io/reference/listwalletpaymentmethods.md): Lists existing payment methods for the customer associated with a valid wallet payment session token. Each card includes its computed customer fee for the tab's current balance, and a separate digital_wallet_customer_fee is returned for Apple Pay (which may route through a different processor with a different fee). All fees are in minor currency units (e.g. cents) and are 0 when the tab has no balance due. - [Delete wallet payment method](https://gotab.readme.io/reference/deletewalletpaymentmethod.md): Deletes a payment method for the customer associated with a valid wallet payment session token. - [Add card to wallet](https://gotab.readme.io/reference/addwalletcard.md): Adds a new credit/debit card for the customer associated with a valid wallet payment session token. - [Set primary payment method](https://gotab.readme.io/reference/setprimarywalletpaymentmethod.md): Sets a payment method as the primary payment method for the customer associated with a valid wallet payment session token. - [Create Digital Wallet Pay session](https://gotab.readme.io/reference/createwalletapplepaysession.md): Creates an Adyen payment session for Apple Pay (works with or without authentication) - [Close a zero-balance wallet tab](https://gotab.readme.io/reference/closewallettab.md): Closes the tab associated with the wallet payment session token when it has no remaining balance due. The tab is resolved from the token (via `confirmWalletPermissions`), so no path parameter is needed. Mirrors the customer-flow `/.{tab_uuid}/close` behavior for the already-paid case (no order send, no display name update). - [Getting Started With Your API](https://gotab.readme.io/reference/getting-started-with-your-api.md): This page will help you get started with Sync Users. - [Getting Started With Your API](https://gotab.readme.io/reference/getting-started-with-your-api-1.md): This page will help you get started with Beta APIs. - [Basic Accounting Integration](https://gotab.readme.io/reference/basic-accounting-integration.md): This documentation will describe the necessary steps to consume the GoTab API in order to create a basic accounting integration. - [Reservation Integration](https://gotab.readme.io/reference/reservation-integration.md): This documentation will describe the necessary steps to consume the GoTab API in order to create a reservation integration. - [GoTab Loyalty API](https://gotab.readme.io/reference/gotab-loyalty-api.md): The GoTab Loyalty API is an events-driven API to be consumed by a third party loyalty program. - [GoTab Promo API](https://gotab.readme.io/reference/gotab-promo-api.md): The GoTab Promo API is an events-driven API to be consumed by a third party promo (code) program. - [Payments SDK](https://gotab.readme.io/reference/payment-sdk.md) ## Recipes - [Get available menus](https://gotab.readme.io/recipes/get-available-menus.md) ## Changelog - [Spot details added to Orders](https://gotab.readme.io/changelog/spot-details-added-to-orders.md) - [Accounting Streams added to QGL](https://gotab.readme.io/changelog/accounting-streams-added-to-qgl.md) - [Update to Generate and Refresh Token Response](https://gotab.readme.io/changelog/update-to-generate-and-refresh-token-response.md)