> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zuper.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Placing Material Order to QXO

> Place a material order at your QXO branch from a quote without leaving Zuper.

## Overview

When a customer accepts a quote that includes QXO products, you can place the material order at your QXO branch without leaving Zuper. Zuper reads the line items on the quote, pre-fills your QXO supplier details, and submits the order directly to your preferred QXO branch and **Job account**.

The **QXO Order ID** that appears on your Zuper document is QXO's material order number, and it is your reference for tracking or modifying the order directly with QXO.

Once QXO accepts the material order, delivery updates, delivery photos, and a PDF invoice sync back to the material order in Zuper automatically, so your team can confirm fulfillment without contacting the branch directly. Because the material order is built from the quote, you do not need to re-enter any line items manually, and you can also create a material order from a quote in **Draft** or **Accepted** status.

## Before you begin

* Your QXO integration must be installed, and at least one branch must be active. See [Connecting QXO](#).
* Your parts catalog must be linked to QXO. See [Setup your QXO catalog](#).
* The line items on your quote must be mapped to QXO catalog products. Only mapped items appear in the item-selection step.

## Configure purchasing settings

1. Go to **Settings**.
2. Select **Purchasing**, then select **General Settings**.
3. Select the **Material Orders** tab.
4. Confirm the required values under **General Settings**: **Require Supplier Approval** must be set to **Yes**, and **Automatically Send MO to Supplier after Approval** should be set to **Yes**.
5. Select **Save**.

<Note>
  **Require Supplier Approval** must be set to **Yes** when you place material orders through QXO. The setting label uses Zuper's current UI terminology, and it applies to all suppliers, including QXO. If this setting is off, material orders bypass the supplier acceptance step, though the **QXO Order ID** still appears on the material order once QXO processes it.
</Note>

## Create a material order from a quote

### Open the quote and start a material order

1. Go to **Accounting** and select **Quotes**.
2. Open the quote that contains the line items you want to procure from QXO.
3. Select **New** at the top right, then select **Material Order** from the dropdown. Zuper creates this as a Material Order document internally and submits it to QXO as a material order.

The **Supplier** panel on the right side of the quote shows the QXO supplier pre-filled when your line items are linked to the QXO catalog. If you updated the supplier assignment on the quote directly, the material order inherits that change automatically.

### Select the items to purchase

1. Select the checkbox next to each item you want to include. All items are selected by default.
2. Use the **Search Item** field to find a specific item by name.
3. Review the **Required Qty** column. This value is pulled from the quote line item.
4. Confirm the correct QXO branch is assigned to each item in the **Select Supplier** column.

<Note>
  The QXO supplier branch is pre-filled based on your catalog settings. Each branch uses the **Job account** you assigned during setup, so changing the branch also changes the Job account and might affect the unit price.
</Note>

5. Select **Next**.

### Select SKU options

1. Review the items listed under each product heading.
2. Select the checkbox next to the specific SKU variant you want to order.
3. Confirm the **Unit Purchase Cost** for each selected variant. Prices are pulled from the QXO catalog and reflect the Job account assigned to the selected branch.
4. Adjust the **Required Qty** field if needed.
5. Select the appropriate unit of measure from the dropdown next to the quantity field.
6. Add any line-level notes in the **Remarks** field.

<Note>
  The unit purchase cost updates based on the unit of measure you select, but the quantity does not. Verify the quantity and unit of measure together before you proceed, since both values determine the total material order amount sent to QXO.
</Note>

### Complete the primary details

1. Enter a **MO Title**. Zuper pre-fills this as "MO for Quote" followed by the quote number, and you can edit it.
2. Select a **Delivery Method**. Select **Direct Shipment to Job's Site** to send materials to the job address on the quote.
3. Select a **Delivery Time**, for example, Anytime.
4. Select a **Template** for the material order document.
5. Select a **Payment Term**, for example, Immediate.
6. Enter a **Required By** date. This field is mandatory.
7. Add any order-level notes in the **Remarks** field.
8. Select **Create Material Order**.

<Note>
  If your quote includes items from multiple suppliers, Zuper creates a separate material order for each supplier in a single step. Each material order appears individually under the **Material Orders** panel on the quote.
</Note>

<iframe src="https://player.vimeo.com/video/1233468503?title=0&byline=0&portrait=0" title="Create a material order from a quote with QXO items" className="w-full aspect-video" frameBorder="0" allow="autoplay; fullscreen; picture-in-picture" allowFullScreen />

## What happens after you create the material order

### Draft status and submission

Zuper creates the material order document in **Draft** status and links it to the quote under the **Material Orders** panel in the right sidebar. The **QXO Order ID** field is empty at this stage, since QXO has not yet created the material order on their end.

To move the material order forward, open it and select **Mark as Submitted**.

<Note>
  If **Automatically Send MO to Supplier after Approval** is enabled, Zuper sends the material order to QXO as soon as it clears the approval step, and no manual send is needed.
</Note>

### Supplier accepted status and QXO Order ID

Once QXO accepts the material order, Zuper updates the material order status to **Supplier Accepted**, populates the **QXO Order ID** field with QXO's material order number, and records the **MO Sent Date**.

The **QXO Order ID** is your material order reference in QXO's system. Use this number when contacting your branch, requesting changes, or tracking fulfillment outside Zuper.

### Delivery status updates

QXO pushes delivery status updates back to the material order in Zuper. Along with each update, QXO sends delivery photos and a PDF invoice, and Zuper attaches both directly to the material order.

| Status | What it means |
| - | - |
| **In Transit** | Materials have left the QXO warehouse |
| **Arrived** | Materials have arrived at the delivery address |
| **Delivered** | Materials have been delivered to the delivery recipient |

<Note>
  Open the material order to view the delivery photos and download the PDF invoice QXO sends with each update.
</Note>

### Receive items after delivery

1. Open the material order from the **Purchasing** module or from the **Material Orders** panel on the quote.
2. Select **Receive Items**.
3. Enter the quantity received for each line item.
4. Select a delivery location if applicable.
5. Select **Confirm**.

Zuper records the inward transaction and updates the material order status to **Fulfilled** or **Partially Fulfilled**.

## Add a QXO product to a material order

<Note>
  The **Add product from QXO** option appears only when the supplier on the material order is a QXO branch. If you do not see this option, confirm the correct supplier is selected.
</Note>

1. Go to the **Purchasing** module and select **Material Orders**.
2. Open an existing draft material order, or select **+ New Material Order** to create a new one.
3. Select **+ Add** in the **MO Items** section.
4. Select **Add product from QXO** from the dropdown.
5. Select the product you want to order in the **Supplier Product** field.
6. Select the variant, for example, Brown or Gray, in the **Option** field.
7. Enter the quantity and select the unit of measure, for example, PC or SQ, in the **Required Qty** field.
8. Review the **Unit Purchase Cost**. Zuper populates this from the QXO catalog, priced against the Job account on the selected branch, and you can update it if needed.
9. Add any notes in the **Remarks** field. This step is optional.
10. Select **Add Product**. The product appears in **MO Items** with the supplier SKU, option, and cost pre-filled.

Repeat these steps for each additional QXO product you want to add.

## Limitations

Once a material order is submitted and QXO has created the material order on their end, the following restrictions apply.

<Note>
  **Cancel** and **Delete** are only available while the material order is in **Draft** status. Once submitted, you cannot cancel or delete it from Zuper. Contact QXO directly with your **QXO Order ID** to coordinate any changes, and then update the **Remarks** field on the material order in Zuper for your records.
</Note>

<Note>
  Editing a line item on a submitted material order pulls the price from your Zuper catalog, not the current QXO supplier price. If the catalog price has not been updated, the line item cost might be set to \$0.
</Note>

## FAQs

<AccordionGroup>
  <Accordion title="Can I create a material order from a quote that is still in Draft status?">
    Yes, you can create a material order from a quote in either **Draft** or **Accepted** status. The quote does not need to be accepted by the customer before you order materials.
  </Accordion>

  <Accordion title="The QXO supplier is not pre-filled on one of my items. What should I do?">
    This means the line item is not linked to a QXO catalog product. Confirm the item is mapped to the correct QXO SKU in **Parts and Services**. See [Setup your QXO catalog](#) for guidance.
  </Accordion>

  <Accordion title="The QXO Order ID is not appearing on my material order. What does that mean?">
    The **QXO Order ID** is QXO's material order number, and it populates only after QXO accepts the material order and creates it in their system. If the field remains empty after submission, verify that **Require Supplier Approval** is set to **Yes** and that the material order has been sent to QXO. If the issue continues, contact [Support](mailto:support@zuper.co).
  </Accordion>

  <Accordion title="The unit purchase cost changed when I selected a different unit of measure. Is that expected?">
    Yes, the unit purchase cost from QXO is tied to both the unit of measure and the **Job account** assigned to your branch, so selecting a different unit of measure updates the cost accordingly. Always confirm the unit of measure and cost together before you create the material order.
  </Accordion>

  <Accordion title="I need to cancel a material order I already submitted. What can I do?">
    Contact QXO directly with your **QXO Order ID** to arrange a cancellation, and then add a note in the **Remarks** field of the material order in Zuper to record the outcome. If the issue continues, contact [Support](mailto:support@zuper.co).
  </Accordion>
</AccordionGroup>

## Related articles

* [Connecting QXO](https://docs.zuper.co/Integrations/Purchasing/qxo/connecting-qxo)
* [Setup your QXO catalog](https://docs.zuper.co/Integrations/Purchasing/qxo/setup-your-qxo-catalog)
* [Using QXO pricing on your proposals](https://docs.zuper.co/Integrations/Purchasing/qxo/using-qxo-pricing-on-your-proposals)
* [Placing Material Order to ABC](https://docs.zuper.co/Integrations/Purchasing/abc-supply/placing-material-order-to-abc)
* [Understanding material order status](https://docs.zuper.co/Zuper_for_Roofing/Material-order-status)


## Related topics

- [Placing Material Order to SRS](/Integrations/Purchasing/Creating a Purchase Order from a Quote with SRS Items.md)
- [Placing Material Order to ABC](/Integrations/Purchasing/abc-supply/placing-material-order-to-abc.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.