Order Management System (OMS) reached end of support in October 2024.
The documentation available here is intended for historical reference only and is not maintained.
For other Commerce-related documentation, see Adobe Commerce Documentation.

Pre-orders

A pre-order is any order that contains a new item which has been not released yet and it is still not in stock. It has a street date (StreetDate attribute) in which the item is expected to be in stock.

StreetDate is the date in which the item is expected to be available, in stock, or released. You must configure the streetDate attribute during the order setup phase, or it cannot be modified (or visible) later.

The StreetDate attribute can be modified in your OMS Admin or via the magento.sales.preorder_management specification.

See Pre-orders for more info about modifying the streetDate attribute.

Enable pre-orders

Unlike backorders, your System Integrator (SI) does not need to pre-enable the pre-order feature by sales channel. You can include the StreetDate attribute in your new order (OrderCreate):

Example of a pre-order line

....
"line_number": 1,
"payment_reference": "xxxxx ",
"pre_order_street_date": "2019-02-05T00:00:00+00:00",
"product_name": "thank u, next (CD)",
"product_type": "PHYSICAL",
"product_url": null,
"promotions_info": {
    "original_price": 20,
    "promotions": []
},
"shipping_address_reference": "xxxx",
"sku": "00602577378034",
...

The pre-order element must have a StreetDate child, which indicates when the item is expected to become available. You can use the magento.sales.preorder_management specification to modify it.

Configure pre-orders

Similar to backorders, these pre-orders are configured at the order item level, by adding the applicable attribute (in which order items that do not allow a pre-order are canceled if there is not stock). You receive this information via the magento.sales.order_management.create specification.

Pre-orders are also available at the store level.

If the pre-order functionality is enabled, your OMS will hold back the preorder lines in a unallocated stock status while the rest of the order lines without a street date will be sourced according to normal sourcing flow. This will result in an order splitting into several shipments. The logistics provider must be able to support multiple shipment requests for the same order.

Once the street date is reached for the pre-ordered line, the line will be sourced according to configured sourcing rules. At this point the stock is not yet available in any source and the line will be back ordered and added to the sourcing queue for later attempts, as per configured sourcing waves.

The store needs to know how much stock of a specific SKU is available and when they will be available for delivery. The OMS only needs to know the street date of the order and that the SKU is a pre-order. With that info the store can easily provide this in the new order feed.

Example of a pre-order line in an OrderCreate

{
    "order": {
        "addresses": [
            {
                "address1": "156 Pendle Way",
                "address2": "",
                "address_type": "customer",
                "city": "Pendle Hill",
                "country_code": "AU",
                "email": "ally.tsalikis@hotmail.com",
                "first_name": "Ally",
                "last_name": "Tsalikis ",
                "phone": "0401500901",
                "reference": "xxxx",
                "state": "NSW",
                "zip": "2145"
            },
            {
                "address1": "156 Pendle Way",
                "address2": "",
                "address_type": "customer",
                "city": "Pendle Hill",
                "country_code": "AU",
                "email": "ally.tsalikis@hotmail.com",
                "first_name": "Ally",
                "last_name": "Tsalikis ",
                "phone": "0401500901",
                "reference": "xxxx",
                "state": "NSW",
                "zip": "2145"
            }
        ],
        "custom_attributes": [
            {
                "attribute_code": "mdc_shipping_method",
                "name": "mdc_shipping_method",
                "value": "flatrate_flatrate"
            },
            {
                "attribute_code": "mdc_shipping_description",
                "name": "mdc_shipping_description",
                "value": "Flat Rate - Fixed"
            }
        ],
        "customer": {
            "id": "xxxx",
            "segment": "B2C",
            "type": "GUEST"
        },
        "customer_service_agent": null,
        "id": "64600006036",
        "ip": "172.194.124.142",
        "language": "en_AU",
        "lines": [
            {
                "amount": {
                    "currency": "AUD",
                    "gross_amount": 20,
                    "net_amount": 18.18,
                    "tax_amount": 1.82,
                    "tax_rate": 10,
                    "taxes": [
                        {
                            "amount": 1.82,
                            "rate": 10,
                            "type": "GST 10%"
                        }
                    ]
                },
                "id": "9334",
                "line_number": 1,
                "payment_reference": "xxxx",
                "pre_order_street_date": "2019-02-05T00:00:00+00:00",
                "product_name": "thank u, next (CD)",
                "product_type": "PHYSICAL",
                "product_url": null,
                "promotions_info": {
                    "original_price": 20,
                    "promotions": []
                },
                "shipping_address_reference": "xxxx",
                "sku": "00602577378034",
                "source_id": null,
                "status": null
            },
            {
                "amount": {
                    "currency": "AUD",
                    "gross_amount": 6.82,
                    "net_amount": 6.14,
                    "tax_amount": 0.68,
                    "tax_rate": 10,
                    "taxes": [
                        {
                            "amount": 0.68,
                            "rate": 10,
                            "type": "GST 10%"
                        }
                    ]
                },
                "id": "SHIPPING",
                "image_url": null,
                "line_number": 2,
                "payment_reference": "xxxx",
                "pre_order_street_date": null,
                "product_name": "Shipping",
                "product_type": "SHIPPING",
                "product_url": null,
                "promotions_info": {
                    "original_price": 6.14,
                    "promotions": []
                },
                "shipping_address_reference": "xxxx",
                "sku": "STANDARD",
                "source_id": null,
                "status": null
            }
        ],
        "origin": "FRONTEND",
        "origin_date": "2019-01-31T20:31:25+11:00",
        "payments": [
            {
                "currency": "AUD",
                "reference": "xxxx",
                "transactions": [
                    {
                        "amount": 27.5,
                        "billing_address_reference": "xxxx",
                        "gateway_information": {
                            "account": null,
                            "authorization_status": "AUTHORIZED",
                            "custom_attributes": [
                                {
                                    "attribute_code": "card_expiration_date",
                                    "name": "card_expiration_date",
                                    "value": "2021-07"
                                }
                            ],
                            "gateway_id": "BRAINTREE",
                            "original_auth_request_id": null,
                            "payment_account_unique_id": null,
                            "payment_service_response": null,
                            "transaction_id": null
                        },
                        "payment_method": "CC",
                        "payment_submethod": "MC"
                    }
                ]
            }
        ],
        "status": null,
        "store": "xxxx",
        "vat_country": "AU"
    }
}