Order API

Order API allows integrated partners to retrieve order details from Wolt and send them to their POS, KDS or other systems.

The API is designed to help our partners reduce the time they spend managing orders they receive through Wolt. By using all endpoints you can develop an experience that helps manage Wolt orders without the Wolt Merchant app.

For a detailed explanation of HTTP error status codes and their meanings, see the documentation.

Authentication

Bearer authentication

The JWT token is used for authentication and is obtained as part of the OAuth 2.0 flow. For detailed implementation guidance, refer to the documentation.

You can get credentials by contacting your Wolt account manager or technical account manager.

OrderV2

With Order V2, a more detailed breakdown of pricing of the order is provided. The pricing structure (all of it, or some of it) may be required for order creation in the POS system, taking into account the proper mapping of discounts.

Please note that any enum defined may get additional values at any point in time. Moreover, additional JSON properties may be added.

The OrderV2 object

Properties

idstring

Unique identifier for the order.

venueobject

Details of the venue where the order was placed.

basket_priceobject

Details of the basket price (ordered items and mofidiers only, excluding fees).

deliveryobject

Details about the delivery.

feesobject

Detailed fee breakdown for the order.

items[object]

Items included in the order.

created_atstringnullable

The date and time (ISO 8601 format) when the order was received by Wolt's system.

consumer_commentstringnullable

Comment added to the order by consumer.

When making an order using Wolt app, a consumer can leave a message to the restaurant. For example to inform the kitchen about dietary restrictions.

consumer_namestringnullable

Name of the consumer who made the order.

If a self-delivery venue has full name setting enabled they will receive the full name of the consumer, otherwise the name will include only first name and first letter of last name.

consumer_phone_numberstringnullable

Phone number of the consumer who made the order.

Consumer phone number is not shared unless absolutely necessary. This is toggled on only for select markets where the phone number is available on the Wolt Merchant app or for self-delivery venues. The field is null in all other cases.

pickup_etastringnullable

The date and time (ISO 8601 format) when the courier is expected to pick up the order.

attribution_idstringnullable

Unique identifier for the attribution.

This is used to track consumer "source" if the consumer is coming to Wolt from a merchant's website or app. Merchants can create a unique attribution IDs for a campaign or source and pass it to Wolt. This ID is carried through the order flow and reflected in the order.

typestringenum: preorder, instant

An order can be of two different types.

  • instant: When an order is to be fulfilled instantly.
  • preorder: When a consumer schedules an order.
pre_orderobjectnullable

Pre-order details for the order.

order_numberstring

A human readable order number that is unique only for open orders. Order numbers can repeat and are not unique for a venue.

order_statusstringenum: received, fetched, acknowledged, production, ready, delivered, rejected, other

Status of the order. An order progresses through a life cycle that consists of different states:

  • received: The order was fetched by the Wolt Merchant app and/or acknowledged by venue staff on the app.
  • fetched: The order was fetched in the Wolt Merchant app.
  • acknowledged: The order was interacted by venue staff on the Wolt Merchant app.
  • production: Preparation of the order has started.
  • ready: The order has been prepared and is awaiting delivery.
  • delivered: The order has been delivered to the consumer.
  • rejected: The venue or Wolt's system rejected the order.
  • other: Other unknown status.
modified_atstringnullable

Order modification time (UTC - ISO-8601 format)

company_tax_idstringnullable

Unique identifier for company (billing and tax purposes).

In some markets, consumers are allowed to bill their company for the purchase. In these situations they can input the company's tax ID. This information can be passed on for accounting purposes (generating an invoice). Note: This field being a non-null does not mandate company_address and company_name to be non-null.

company_namestringnullable

Name of company (billing and tax purposes).

In some markets, consumers are allowed to bill their company for the purchase. In these situations they can input the company's tax ID, with potentially also the name and the address of the company. This information can be passed on for accounting purposes (generating an invoice).

company_addressstringnullable

Address for company (billing and tax purposes).

In some markets, consumers are allowed to bill their company for the purchase. In these situations they can input the company's tax ID, with potentially also the name and the address of the company. This information can be passed on for accounting purposes (generating an invoice).

loyalty_card_numberstringnullable

Loyalty card number given by consumer during checkout from a retail venue.

This can be only used to add points for the consumer based on the purchase. No validation of this number takes place in Wolt's system.

is_wolt_plusbooleannullable

This field indicates whether the order was a Wolt+ order or not. The presence of this field depends on the venue configuration

is_no_contact_deliverybooleannullable

For self delivery orders, this field being "true" indicates that the user has asked for the drop off to be to their "doorstep" without an interaction with the courier delivering.

cash_paymentobjectnullable

Contains information about cash payment of the order.

With this information the courier will be able to request correct amount of cash from the customer and also reserve enough change in case customer does not have even amount in cash.

group_participants[object]nullable

List of participants for a group order.

order_handlingobject

With this information you are able to trigger specific flows on your middleware for order handling - acceptance, delay for preparation and forecasted preparation time.

in_store_operationsobjectnullable

Contains information about in-store operations required as a part of handling this order.

This will be used in cases where venue staff need to perform certain additional tasks as a part of processing a purchase.

Order

Order object describes an order on Wolt.

The Order object

Properties

idstring

Unique identifier for the order.

venueobject

Details of the venue where the order was placed.

priceobject

Total price of the order.

deliveryobject

The delivery method of the order.

items[object]

Items included in the order.

created_atstring

The date and time (ISO 8601 format) when the order was received by Wolt's system.

consumer_commentstringnullable

Comment added to the order by consumer.

When making an order using Wolt app, a consumer can leave a message to the restaurant. For example to inform the kitchen about dietary restrictions.

pickup_etastring

The date and time (ISO 8601 format) when the courier is expected to pick up the order.

attribution_idstring

Unique identifier for the attribution.

This is used to track consumer "source" if the consumer is coming to Wolt from a merchant's website or app. Merchants can create a unique attribution IDs for a campaign or source and pass it to Wolt. This ID is carried through the order flow and reflected in the order.

typestringenum: preorder, instant

An order can be of two different types.

  • instant: When an order is to be fulfilled instantly.
  • preorder: When a consumer schedules an order.
pre_orderobjectnullable

Pre-order details for the order.

consumer_namestring

Name of the consumer who made the order.

If a self-delivery venue has full name setting enabled they will receive the full name of the consumer, otherwise the name will include only first name and first letter of last name.

consumer_phone_numberstringnullable

Phone number of the consumer who made the order.

Consumer phone number is not shared unless absolutely necessary. This is toggled on only for select markets where the phone number is available on the Wolt Merchant app or for self-delivery venues. The field is null in all other cases.

order_numberstring

A human readable order number that is unique only for open orders. Order numbers can repeat and are not unique for a venue.

order_statusstringenum: received, fetched, acknowledged, production, ready, delivered, rejected, other

Status of the order. An order progresses through a life cycle that consists of different states:

  • received: The order was fetched by the Wolt Merchant app and/or acknowledged by venue staff on the app.
  • fetched: The order was fetched in the Wolt Merchant app.
  • acknowledged: The order was interacted by venue staff on the Wolt Merchant app.
  • production: Preparation of the order has started.
  • ready: The order has been prepared and is awaiting delivery.
  • delivered: The order has been delivered to the consumer.
  • rejected: The venue or Wolt's system rejected the order.
  • refunded: Wolt has processed a refund for the order.
  • other: Other unknown status.
modified_atstring

The date and time (ISO 8601 format) when the order was last modified.

Orders move through a life cycle and can change the order status. This change is also considered a modification, so the date and time could be the time when a purchase changed its status from acknowledged to production.

company_tax_idstringnullable

Unique identifier for company tax.

In some markets, consumers are allowed to bill their company for the purchase. In these situations they input the company's tax ID and this information is passed on for accounting purposes.

loyalty_card_numberstringnullable

Loyalty card number given by consumer during checkout from a retail venue.

This can be only used to add points for the consumer based on the purchase. No validation of this number takes place in Wolt's system.

is_wolt_plusbooleannullable

This field indicates whether the order was a Wolt+ order or not. The presence of this field depends on the venue configuration.

is_no_contact_deliverybooleannullable

For self delivery orders, this field being "true" indicates that the user has asked for the drop off to be to their "doorstep" without an interaction with the courier delivering.

cash_paymentobject

Contains information about cash payment of the order.

With this information the courier will be able to request correct amount of cash from the customer and also reserve enough change in case customer does not have even amount in cash.

order_handlingobject

With this information you are able to trigger specific flows on your middleware for order handling - acceptance, delay for preparation and forecasted preparation time.

in_store_operationsobjectnullable

Contains information about in-store operations required as a part of handling this order.

This will be used in cases where venue staff need to perform certain additional tasks as a part of processing a purchase.