Getting Started
¶ Prerequisites
Before starting the integration development process ensure you have:
- Returned a completed NDA and API licensing agreement. Don’t have an application yet? Create a developer account via sign in the top right. During setup you will be required to sign an NDA & API agreement.
- Reached out to your Uber Eats partner manager about POS integration and received confirmation to begin development.
- Reviewed the Versioning & Upgrade Timelines and Quality & Performance Standards.
Please complete any missing steps before proceeding. If you need assistance, reach out to your Uber Eats partner manager.
¶ Process Overview
Read through and follow the steps on each page in the “Guides” section. Consult the reference pages for each API accordingly. If you have any questions, utilize the technical support channels shared with you by your Uber Eats partner manager.
Below is a high-level overview of the full end-to-end integration process:
- Request test accounts
- Complete test application setup
- Begin development
- Finalize integration & perform end-to-end testing
- Verify your integration with Uber
- Set up your production developer account(s)
- Provision and launch pilot store(s)
- Continue provisioning and launching stores
- Upgrade integration & develop to new API features
Integration timelines - from test account setup to launch of the first integrated stores - typically range from 4-8 weeks. However it is ultimately up to your team to define the pace of development.
¶ Tools & Resources
The resources listed below will be essential for the development process. These tools are referenced throughout the integration guides but can be used effectively in many additional capacities not explicitly mentioned. If you are unsure which tool to use, refer back to this table.
Resource | What is it? | Use Cases |
---|---|---|
Developer Dashboard | Uber portal for developers | Access application credentials, set webhook url, and enable scopes for your developer application. |
Uber Eats Orders | Uber Eats in-store Merchant order management app (web browser version) | Check test store status, view store/holiday hours, view test orders. |
ubereats.com | Consumer-facing Uber Eats site | View test store menu on web and place test orders. |
Uber Eats mobile app | Consumer-facing Uber Eats app | View test store menu on mobile and place test orders. |
¶ Test Accounts
To begin the integration process, submit a Tech Support Request to receive login credentials for a test developer and test store accounts. These must be generated by Uber Eats and you will not be able to begin development without these test accounts. Make sure to save your login credentials for easy access. Test stores behave very similarly to production stores, but are only visible using the login credentials provided to you. No payment information is required and no couriers are dispatched for orders placed in test stores.
To facilitate the development process, Uber will create an application for your test developer account on your behalf. The test application will already be allow-listed for the appropriate Eats scopes and provisioned with access to your Eats test store. Note that you will need to complete these steps yourself when going live in a production environment, but we’ll guide you through it when the time comes!
¶ Completing Test Application Setup
Once you’ve received your test accounts, navigate to Developer Dashboard and log in with your test developer credentials. As mentioned, an application should already be registered for your account. Click on the name of your test application.
In the Auth tab, set the Redirect URI to http://localhost
and add the URL to your company’s privacy policy.
Now scroll down to “Partner Scopes”. You should see six scopes allow-listed for your app. Check the box next to all six scopes (eats.order
, eats.pos_provisioning
, eats.report
, eats.store
, eats.store.orders.read
, and eats.store.status.write
). Continue srcolling down to the bottom of the Auth page and click SAVE.
¶ Familiarizing Yourself with Developer Dashboard
The Developer Dashboard contains important information about your app. Throughout the development process we will be referencing information from the dashboard, so take some time to bookmark and familiarize yourself with it now.
Access your client credentials and manage scopes in the Auth section. Use the Settings tab to view and update your webhook url (this will be explained more in depth later in the Webhooks guide). The Debug Console provides a dashboard to view errors in case Uber is unable to send a notification to your webhook url.
Note that only one application should be created per developer account. If you discover the need for additional test applications later in the development cycle, you can submit a technical support request.
¶ (Optional) Testing with Postman
Postman is an API development environment that simplifies running and testing API requests. With Postman, you won’t have to copy and paste data from one endpoint to another.
To set up Postman:
-
Download and install Postman.
-
Postman Collection for new API suites is in progress
-
Select the Uber Eats APIs environment, and configure the following environment variables:
uber_eats_client_id
anduber_eats_client_secret
from your test applicationeats_store_id
(location UUID) from your test store
¶ Next Steps
Review the Authentication guide for information on scopes and accessing the Eats APIs.