Skip to main content

Build Dual Pricing (delivery vs. pickup)

Overview​

Dual Pricing allows integration partners to pass two prices on an item, option, or option extra within a single menu: a price and a base_price. This feature enables merchants to offer uninflated or in-store pricing for Pickup orders placed through DoorDash and for first-party orders placed through DoorDash Online Ordering/Storefront, while maintaining a single shared menu across DoorDash channels. Note that Dual Pricing is required for all partners to support in-store pricing on Marketplace Pickup orders.

How to Implement Dual Pricing​

When creating or updating a menu through your DoorDash integration, include both a price and a base_price for each item, for example:

{
"name": "Cheeseburger",
"merchant_supplied_id": "item_001",
"price": 1299,
"base_price": 1099
}

In the above example, the $12.99 price will be used for all Marketplace delivery orders. The $10.99 base_price value will be used for:

  • Marketplace pickup orders
  • First party pickup orders placed through DoorDash Online Ordering/Storefront
  • First party delivery orders placed through DoorDash Online Ordering/Storefront

See here for additional details on how to implement.

Using Dual Pricing in Combination with Channel-Based Menus​

Channel-Based Menus is an additional feature that allows merchants to configure a separate menu for each DoorDash channel, using the experience field on the menu payload. See Support Channel-Based Menus for the full guide.

Dual Pricing is not supported on catering or first-party Online Ordering (Storefront) menus. If both price and base_price are passed on those menu types, price is ignored and only base_price is displayed.

_Modified: 9/23/2026