Empowering Restaurants through Integration

Validating Your Integration

While we understand that every POS integration will be unique, some core features must be implemented in order to serve our mutual customers. To make sure that your integration meets those needs, we operate a three stage validation process:

  1. Lab validation
  2. Pilot phase
  3. Pre-launch check

Lab Validation

After developing a POS integration, we will want to verify that the essential Grubhub functions work correctly. We will need a version of your integrated POS so we can test it in a pre-production lab environment before any live orders get sent.

We will test the POS integration in several categories.


Menu Management

*for sandbox/testing/preprod* please host your menus with no authentication for testing. Our preprod environment does not support authentication

The menu is the starting point for any online order. We'll set up a test restaurant to verify the following:

  • All items and modifiers on the Grubhub menu map to their respective items in the POS.
  • A change to the text name of a menu item in the Grubhub menu management tool flows to the POS and does not break the integration.
  • Changes on a restaurant's Grubhub menu continue to map to the POS menu without redeploying the integration.

Order Processing

Orders are integral to a POS integration, so we test this functionality heavily. This includes:

  • Orders placed on Grubhub.com appear in the POS interface.
  • The integration updates the order status to CONFIRMED when that order has been successfully inserted into the POS system.
  • If an order fails to insert into the POS, then it updates the status to REJECTED.
  • All menu items and modifiers can be successfully inserted into the POS as part of Grubhub orders.
  • Prepaid orders display as paid; cash orders indicate payment is due.
  • Delivery-related taxes, fees, and tips are not included in any order displays.
  • Kitchen chits print properly or displayed on a KDS, depending on how the restaurant operates.
  • Special instructions for any menu items are clearly visible to the kitchen staff.
  • The POS clearly identifies Grubhub orders as such.
  • Delivery and pickup orders are clearly differentiated.
  • Grubhub order numbers clearly display in the POS interface, kitchen chits, and on printed receipts.
  • Kitchen chits and customer receipts clearly identify the promise time.
  • Receipts or other pickup/delivery materials clearly display the customer name, address, and phone number.
  • Receipts or other pickup/delivery materials clearly display delivery or pickup instructions.
  • Grubhub receives order status updates when that order is ready for pickup or sent out for delivery.

Grubhub Managed Delivery

If your POS will serve restaurants that could use Grubhub-provided delivery drivers, then it's essential that it can properly relay an order to an assigned driver. To ensure this, we test the following:

  • Restaurant employees can see driver name and contact information once that driver is assigned an order.
  • If an order is reassigned to another driver, the order updates to reflect the new driver name and contact information.
  • Driver contact information never prints out and remains visible to restaurant employees only until the order is fulfilled.
  • Restaurant employees can see the estimated arrival time for any assigned drivers.

Pilot Phase

After the POS integration passes the lab validation, you should move on to a pilot phase where you run the integration in a live restaurant setting for a short period of time. This lets you thoroughly test all features with all user types and get feedback from everyone who may use it after launch.

While there is no list of tests that you will need to perform, keep in mind that the POS integration needs to perform as well in this pilot as it would in a regular lunch rush. Test all operations thoroughly and solicit feedback from all participants. This is your chance to refine the feature set available and tweak functionality, so once the integration launches, no one hits any snags - at least, not because of your POS system.

Grubhub will participate in this pilot by watching the integration in action, then interview all restaurant participants to see how everything worked out for them. We will review all feedback, both that we gathered and you gathered, to put together a punch list - a list of all the things that need to change - for launch.

Launch Validation

Before you launch you POS integration, we will validate that all punch list items have been taken care of and the restaurants that participated in the pilot phase validate that all workflows in the POS satisfy their needs. Because this is the last chance to test the integration before live Grubhub orders flow through it, we test a few features shown below.

Menu Management

  • Any changes in POS are reflected on the Grubhub menu within a short period of time. Depending on your implementation method, this will vary. Your Grubhub representative will discuss this with you.
  • The POS interface can add new items to the Grubhub menu using management tools.
  • Menus synchronize between the POS and Grubhub, including tags, menu sections, descriptions, and schedules.
  • Any items '86-ed' in the POS (that is, made unavailable temporarily) are unavailable online.

Order Processing

  • Any orders that fail to insert in the POS are rejected with meaningful error codes.
  • When the integration confirms an order, it also updates fulfillment times.
  • The POS handles relevant order adjustment and cancellation scenarios.