What this solution does
Pre-orders
The module enables sales of out-of-stock items by processing them as standard orders through the shopping cart. The buyer joins the supply queue and receives the goods immediately upon their arrival at the warehouse. The store assesses demand in advance, collects prepayment, and distributes limited stock fairly based on the order of payment or order placement.
Usage Scenarios
New product before launch — accepting orders before goods arrive at the warehouse. Reception dates and expected delivery dates are specified. All purchases made during this period automatically become pre-orders.
Out of stock — while inventory is available, the item sells normally. Once the stock is exhausted, the purchase automatically converts to a pre-order with a specified delivery timeframe, such as "Delivery in 14 days."
B2B seasonal procurement — wholesale clients place orders in advance. Pre-orders are available only to selected customer groups. Minimum order quantities and submission deadlines can be configured.
Limited batches — when supply is restricted (e.g., 50 units) but demand is high (e.g., 200 interested buyers), reception limits and maximum quantities per buyer are set. The queue is formed based on payment time. A waiting list is created for those who do not secure a spot in the batch.
A manager creates a pre-order campaign and adds products or trade offers to it. While the campaign is accepting pre-orders, the module allows purchasing products even when stock is zero. After the acceptance period ends, the product settings are automatically restored to their standard state.
A buyer adds a product to the cart using the 'Place Pre-order' button on the product card or the standard purchase button. The cart item is marked as 'Pre-order' with an expected delivery date. Campaign rules are validated twice: when adding to the cart and when placing the order.
After the order is placed, the buyer receives a notification indicating their position in the queue. All order status changes, including payment, quantity adjustments, cancellation, and shipment, are automatically reflected in the pre-order system.
When the product arrives at the warehouse, the module distributes it according to the queue, reserves items in the orders, and notifies buyers that the product is available.
Capabilities
Pre-order campaigns can be configured with acceptance dates, expected delivery dates, or delivery terms in days.
Two operating modes are available: pre-order for any purchase during the acceptance period, or only when stock is insufficient.
The delivery queue can be organized by payment time (pre-orders are fulfilled in the order of payment) or by order placement time.
The Xlogic pre-order module allows buyers to track their application status: whether it is included in the current expected batch or is on the waiting list. The system manages acceptance limits for each item and determines the size of the expected batch.
Settings include the minimum quantity per order, the maximum quantity per buyer, and access control by buyer groups.
Item arrivals are tracked from three sources: an increase in stock in the trading catalog (accounting for reserves), processed warehouse documents (receipt or acceptance), and manual registration.
The system supports a strict queue: items are allocated only after earlier pre-orders are fulfilled, without moving to later ones.
Item reservation in an order occurs automatically as soon as the pre-order receives the item.
The 'Pre-order Button' component displays on the product card, showing campaign conditions, the number of remaining spots, and the status of the buyer's pre-orders with a place in the queue.
Marking pre-orders in product lists is performed via a single request to the result_modifier.php file in the catalog template.
The system releases the reservation from an order line if the item is lost (due to payment cancellation, quantity change, or rejection) and moves the order to a selected status once all its pre-orders are fulfilled.
The module supports creating campaigns for individual websites and selecting items from the catalog directly within the campaign card.
The Xlogic preorder module manages a preorder registry with filtering capabilities, saved filter sets, Excel export, and actions including priority fulfillment, resending arrival notifications, rejection with notification, and removal from the queue.
A queue journal is maintained for each campaign, recording arrivals, distribution, payments, and cancellations.
The system automatically sends emails to buyers (regarding order acceptance, item arrival, and rejection) and to managers (regarding new orders) using customizable email templates. The sale.order.ajax order template does not require modification.
Module access is controlled by user groups, and data is preserved even after the module is uninstalled.
Installation and Configuration
The module requires the installed components "Online Store", "Trade Catalog", and "Information Blocks".
Create a campaign in the "Store > Preorders > Campaigns" section and add products to it.
In the product card template (bitrix:catalog.element), connect the "Preorder Button" component in place of the "Out of Stock" label. The ready-to-use code is available on the "Connection" tab in the module settings.
Review the email texts in the XLOGIC_PREORDER_* email templates and specify the manager's email address in the module settings.
To automatically detect product arrivals, quantity accounting must be maintained in the trading catalog. If stock levels are not tracked, disable automatic detection and record arrivals manually.
Arrivals are checked by a background agent. By default, it runs every five minutes. It is recommended to configure the agent to run via cron to ensure the queue is processed on time regardless of website traffic.
For products with trade offers, the offers are added to the campaign, not the product itself.
A product can belong to only one active campaign at a time.
Declining a pre-order does not automatically cancel the order or refund payment. These actions must be performed by a manager directly within the order.
General iT can connect “Pre-orders”, configure it and verify the integration with the existing website.