Bolt Bridge
- home
- Apps
- Bolt Bridge
- Receive Orders
Receive Orders
Connecting Bolt to HubRise allows you to receive Bolt orders directly in your EPOS or any other solution connected to your HubRise account.
This page describes the information Bolt sends to HubRise and how order statuses are synchronised between the two platforms. It helps you understand how orders will be received on your EPOS.
Order Transmission
Bolt sends orders to HubRise immediately when they are placed by the customer, with the complete order details.
Once the integration is live, the Bolt tablet can no longer be used: orders are received and accepted through HubRise only.
Order Statuses
Bolt Statuses
Bolt orders go through several statuses during their lifecycle:
- Placed: The order has been placed by the customer and sent to HubRise.
- Accepted: The order has been accepted by the store. Orders must be accepted in time, or they are automatically cancelled by Bolt.
- Preparing: The order is being prepared.
- Ready for pickup: The order is awaiting pickup by the courier or the customer.
- Picked up: The order has been picked up.
- Delivered: The order has been delivered to the customer.
- Rejected: The order has been cancelled by the customer, the store, or Bolt.
When the Status Changes in HubRise
When an order status changes in HubRise, Bolt Bridge notifies Bolt of the change according to the following mapping:
| HubRise status | Bolt action |
|---|---|
new (order creation) | The order is accepted, if configured (*). |
received | The order is accepted, if configured (*). |
accepted | The order is accepted, if configured (*). |
rejected | The order is rejected, with the comment "Failed to send the order to the merchant". |
cancelled | The order is rejected, with the comment from seller_notes, or "Cancelled by the merchant". |
awaiting_collection | The order is marked as ready for pickup. |
in_delivery | The order is marked as picked up. |
completed | The order is marked as delivered. |
Other HubRise status values are not supported and are not sent to Bolt.
Bolt requires every order to be accepted. If an order is not accepted in time, Bolt cancels it automatically and sets the store as not available.
(*): Bolt Bridge lets you decide which HubRise status triggers the acceptance of the order in the Order Statuses section of the Configuration page.
Adjusting the Preparation Time
If the confirmed_time field is set on the HubRise order when it is accepted, Bolt Bridge sends the new preparation time to Bolt, computed as the time between the order creation and confirmed_time. It replaces the initial preparation time received from Bolt.
When the Status Changes in Bolt
When an order changes in Bolt, Bolt Bridge updates the corresponding order in HubRise:
| Bolt event | HubRise status |
|---|---|
| The customer cancels the order | cancelled |
| Bolt marks the order as being prepared | in_preparation |
Delivery Tracking
For orders delivered by Bolt, when a courier is assigned to the order, Bolt Bridge creates a Delivery resource in HubRise with the following information:
carrier: Set to "Bolt".status: Set topickup_enroute.driver_name: The courier's first name and initial of the last name.driver_phone: The courier's phone number.estimated_pickup_at: The estimated time when the courier will pick up the order.
Service Types
Bolt supports three service types:
- Delivery by Bolt
- Restaurant delivery
- Takeaway
These are typically associated with specific ref codes in your EPOS, which you can set in the Configuration page of the bridge. For more information about ref codes, see your EPOS documentation in our Apps page.
Order Times
The expected_time field of the HubRise order is set to the time the order needs to be ready for delivery or pickup, as provided by Bolt.
For orders delivered by Bolt, the expected_time_pickup field is set to true, as the expected time is the time the Bolt courier picks up the order.
Customer
Bolt identifies every customer with a unique ID.
If the Save Bolt customers in HubRise option is selected in the Configuration page, Bolt Bridge creates a customer in HubRise for every new customer ID received from Bolt, and attaches the order to that customer. Otherwise, orders are created as guest orders, with customer details are attached to the order itself.
Bolt may mask part of the customer information: when the full name and phone number are not provided, values such as John D. and ********1234 can be used instead. When a customer already exists in HubRise, masked values never overwrite the information already stored. The phone number is only updated when its last digits show that the customer changed their number.
Bolt Bridge sends the following information:
first_name: The customer's first name, or partial name.last_name: The customer's last name, when available.email: The customer's email address, when available.phone: The customer's phone number, or partial phone number.
Additionally, for restaurant delivery orders, Bolt Bridge sends the following fields:
address_1: The street address.address_2: The apartment, formatted as "Apartment X" if provided.postal_code: The postcode.city: The city name.country: The two-letter ISO country code.latitude: The latitude of the delivery address.longitude: The longitude of the delivery address.delivery_notes: The note for the courier from the customer.
Items and Options
Bolt orders can include either single items with options or deal items (special offers that bundle multiple products together).
Single Items Encoding
For every single item in the order, Bolt Bridge provides the following information:
sku_ref: The ref code of the item.product_name: The product name.price: The price for a single item.quantity: The quantity of items included in the order.customer_notes: The note from the customer for this item, when provided.options: The array of options attached to the item.
Deal Items Encoding
When an order contains a deal (a bundled offer), Bolt Bridge encodes it differently:
- Each product in the deal becomes a separate item in the HubRise order.
- All items belonging to the same deal are linked together with a
deal_linereference. - The deal price is included in the first item's price.
The deal information is stored in a deals object with:
name: The name of the deal.ref: The ref code of the deal.
Options Encoding
For every option in the order, Bolt Bridge provides the following information:
option_list_name: Set toOptions, as Bolt does not provide the name of the option group.name: The option name.ref: The ref code of the option.price: The price for a single option.quantity: The quantity of the option.
Discounts
Bolt does not send discounts as separate lines: when a promotion applies, the item prices sent to HubRise are already discounted. As a result, orders do not contain discount entries.
Charges
For restaurant delivery orders, Bolt can include the following fees, which are encoded as charges in the HubRise order:
- Delivery charge: The total delivery fee.
- Small order surcharge: Applied when the order is below the minimum amount.
- Service fee: General service fee.
The ref code of each charge can be set in the Configuration page.
Payments
Bolt customers can pay for their order either online or by cash. Cash payments are only available for restaurant delivery orders.
Bolt Bridge encodes a single payment covering the order total, computed from the items, options and charges. The payment ref codes can be set in the Configuration page.
If the cash payment ref code is left empty, cash payments will not be encoded in the order.
Customer Notes
Order-level customer notes left by the customer at checkout are encoded in the customer_notes field. Bolt also supports notes on individual items, which are encoded in the customer_notes field of the corresponding item.
Note that delivery instructions for restaurant delivery orders are provided separately in the delivery_notes field of the customer object, not in the order-level customer_notes.
Pause
When order acceptance sync is enabled in the Configuration page, Bolt Bridge syncs the order_acceptance field from HubRise to Bolt.
The order_acceptance.mode field controls the store status:
normalorbusy: Store open.paused: Store paused, with an optional scheduled resume time.
When the store is paused, you can optionally specify a resume_at time in HubRise, and Bolt will automatically reopen the store at that time.
Bolt also pauses the store itself when an order is not accepted in time. If order acceptance sync is enabled, the bridge reopens the store on the next update of your HubRise location status.


