This is allowed, but Shopify doesn't know about pre-orders, thus will generate an order and a subscription contract as if it wasn't a pre-order. More precisely:
- The order's fulfillments will be "open" for work
- The subscription contract will be created with an initial `next_billing_date` of `checkout_time + 1 month`, and active.
As a workaround, you could update the subscription contract and mark it as paused. When the pre-order product ships, you can then update the contract to active and set the next billing date accordingly.
I hope that helps.