# Developer Tools

**What are Developer tools?**

Developer tools are basically a tool where you can simulate test orders with multiple aggregators and configurations. The only catch is that you will not be able to select specific items and modifiers. This is a pos-int (sandbox) Atlas ONLY feature. It is also expected that the menu is first populated in Atlas or ingested via Catalogue API to put this to use.\
\
**Where can I find this feature?**

Any user who has a test Atlas account can access Developer tools and can find it under Settings in the left navigation bar. The feature is called “Developer Tools” in the Atlas UI.

<figure><img src="https://lh7-us.googleusercontent.com/l0KoPbCg8NMXrPvDGwVZJblwqHeJfFGgvoeIKYHGyQTr4YRidEXXJLFsGvJ_byzoOCPtUEBSnENnJ0PkpNtCXFqW2rpj9kcrAGt2iRC2EqVV1vIVdLbqBZoLZ5bdiwRUeLOLxAWEC1pGgejNPyQbPDI" alt=""><figcaption></figcaption></figure>

**What problem does this solve?**

Through Developer tools, we can stimulate the orders with many use cases and review the orders in a single platform. It is a hassle free process.\
Our objective with this feature is to give merchants and partners an easy way to simulate the orders with multiple variations and aggregators from one place.\
\
**What are the basic requirements to use this tool?**

To place an order for any aggregator make sure that the particular aggregator is enabled for the account/biz and there are locations enabled for it. A full menu is to be published to the aggregator and the location as well, containing multiple items with option groups, variants, add-ons, and unique POS IDs for each of them.

1\. Menu with POS IDs for every entity

2\. Location association of items and modifiers

3\. Timing group added to the location

4\. The platform should be associated with the items\
\
**Which aggregators can be tested with this tool?**

Currently, this tool is available for the following aggregators and their respective regions:

**INDIA**

* Zomato
* Swiggy

**GCC**

* Talabat
* Careem

**UK**

* Deliveroo
* Justeats

**US/CAN**

* DoorDash
* Grubhub
* UberEats
* SkipTheDishes

## What does the UI look like?

A snapshot of the UI is shown below

<figure><img src="https://lh7-us.googleusercontent.com/cRkJ-vZPwcp5-9tT2rPiQJBraml1wgE_nSP8HY2ko66rwIYeTyBXknxpnnPvLl2xBpC6cJFsr6-5P96OCV8kiF61pIvqqixHd7sSN8Vz1XCmiMvovmZJa8zxX3OKFTo8y6btqhD8k1fLJxPN-Fldw2M" alt=""><figcaption></figcaption></figure>

The UI consists of the following components:

### Location

Select the location from the dropdown which shows a list of configured locations for the particular account. Make sure you are placing the order for a location that is enabled on the aggregator.

### Platform

Select the platform from the dropdown list for which you want to place the test order.

### Has an addon

This is to be toggled on if your test order should contain an add-on. If toggled on this will place an order with an item having add-ons configured.

### Fixed Discount value

The fixed discount value that needs to be applied to the order.

### Line Item Count

The number of different items for which the order is to be placed. For example, if there is a menu of beverages then if it is set to 1, an order for Coke will be placed. If set to 2, then Coke and Pepsi will be ordered.

### Item Quantity

The item quantity for placing the order. The order will be placed for the particular quantity of all the items.

### Addon count

The number of add-ons to be ordered with the particular order.

### Charges

Different types of charges that are to be tested can be configured here. Make sure you have gone through the platform-specific constraints for the aggregator which you are placing the order for. Not all aggregators support all charges and only the charges that are relayed to us by them will be shown in the payload.

### Fulfillment type

To be selected from Delivery or Pickup.

### Delivery type

The type of delivery that this order will be for, is to be selected between self and partner.

### Is future order

A few aggregators allow the customers to place orders for future date-time (ex: A customer can place an order for tomorrow). To recognize the order of this scenario, the POS Partner shall have to maintain the minimum preparation time to process an order at the POS level. If the "delivery\_datetime" value in the order payload is greater than the threshold value (minimum preparation time), then the POS can recognize the order as a Future/Scheduled order.

### Has variants

To be toggled if the item has variants associated with it.

### Payment type

The payment type to be selected is between cash and Prepaid.

### Discount Type

The discount can be merchant-born or aggregator-born.

### Order instructions

The order level instructions given will be added in the field.

\
**Region-wise exemptions:**

**INDIA**

* Zomato- Surcharge, Driver Tip, Services charges, Future order
* Swiggy- Delivery charges, Surcharge, Driver Tip, Services charges, Future order, Pick up order, Delivery type- self, Hybrid Discount order, Aggregator Sponsored Discount

**GCC**

* Talabat - Packaging charge, Surcharge, Driver Tip, Future Order, Hybrid Discount order, Aggregator Sponsored Discount
* Careem- Surcharge, Driver Tip, Services charges, Future order, Pick up order, Delivery type- self, Hybrid Discount order, Aggregator Sponsored Discount

**UK**

* Deliveroo - Packaging charge, Surcharge, Driver Tip, Hybrid Discount order, Aggregator Sponsored Discount
* Just Eats - surcharge, Hybrid Discount order, Aggregator Sponsored Discount

## Common points that lead to errors and how to solve them.

1. Please add POS ID on location (Click on location > POS ID)
2. Please enable the platform by adding the platform ID and url (click on location > HUB)
3. Add POS ID on Categories (click on categories edit > POS ID)
4. Associate items with the categories (click on categories edit > items > update)
5. Please add POS ID (Click on item > show more > POS ID)
6. Please associate the platform with the items (click on items > platforms > associate with the aggregator)
7. Please add the modifiers groups as variants and add-on with associate POS ID ( click on modifiers group > show more > POS ID)
8. In Modifiers groups as variant and add-on, please associate modifiers ( click on modifiers group > update > select the modifiers)
9. Please associate items with modifier groups ( click on item > modifier groups > update > select modifier groups).
10. Nested groups cannot be tested
11. If the ref id is -1, then the order cannot be placed.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://api-docs.urbanpiper.com/downstream/getting-started/developer-tools.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
