Skip to main content
After a new order has been received in the RABOT platform either by API or via the web order funnel, it goes through different stages, please see the different pathways visualised below:

Order status sequence diagram

Clearing the Change Process swiftly

The change process can take up to several weeks or more, which can impact the customer experience negatively as well as your own operations in all partnership types. As mentioned in our Build Your Own Funnel guide, there is certain information required for successful order creation; similarly, an order can swiftly clear the change process if all information in the POST /orders call body is provided when the order is submitted. See our guide to review mandatory, conditional and optional fields.
Orders submitted with the meter number proceed through the change process 80% faster than those submitted without.
Orders submitted with the MaLo Number proceed through the change process 90% faster than those submitted without.

Retrieving Order Status via the API

The order status is available for retrieval via the GET Orders endpoint. The response provides two layers of status information that work together to give a complete picture of where an order stands:
  • Order-level fields (order.state, order.processingInfo, order.denialReason): The overarching status of the order across its full lifecycle — present at all times.
  • Change process fields (order.deliveryState.*): Granular status information specific to the change process — only populated once an order has passed pre-validation and entered the change process.
Your system should digest the response data and present this within your native UI for the relevant teams to review and take action as needed. As a Whitelabel partner, this information is particularly important for your operations to analyse and prevent issues in the change process. As a Sales Affiliate partner, this information can help you streamline your pipeline and avoid incurring delays related to commission payments.

Understanding Order Status: Two Layers

Layer 1 — Order-Level Fields

These fields describe the overall lifecycle state of the order and are always present in the response:

Layer 2 — Change Process Fields (order.deliveryState)

order.deliveryState is a nested object within the order response. It contains granular status information specific to the change process and is only populated once the order has passed pre-validation and entered the change process (i.e. order.state is Processing or beyond).
order.deliveryState is null while an order is in the Open state. It is populated once the order enters Processing and the change process begins.
Use order.state for high-level monitoring and workflow logic. Use order.deliveryState.state and order.deliveryState.message for detailed diagnostics — particularly when investigating stalled or rejected orders.

State Mapping: order.state vs order.deliveryState.state


Order States Table

These are the possible values for order.state:

order.processingInfo Reference

order.processingInfo contains messages generated by RABOT’s internal pre-validation and transmission layer. These messages reflect the outcome of attempts to transfer the order to the Market Communications Hub and are most relevant when an order is in the Open state.

deliveryState Message Reference

order.deliveryState.message contains detailed messages from the market communication process — typically feedback from the grid operator while the order is in the change process. These are most relevant when order.deliveryState.state is InChangeProcess and an order appears stalled or is progressing toward Rejected.

State: DeliveryPending / Delivery

State: InChangeProcess

These messages originate from the grid operator and are returned in German as part of the GPKE/GeLiGas market communication standard.
The messages above represent the most frequently occurring values. Additional messages may appear as defined by the GPKE/GeLiGas market communication standards. If you encounter a message not listed here, contact Integration Management.

State: Denied

When order.deliveryState.state is Denied, the reason is provided in order.deliveryState.denialReason. This field contains the same values as order.denialReason.

State: Revoked / Cancelled

Questions or Concerns?

Feel free to speak with our Integration Management Team or alternatively, ask our built-in AI assistant, Rabotini 🤖 (several languages supported).