A Material Request is ERPNext's purchase requisition — the internal "we need these items" that starts the buying cycle. Most of the confusion around it comes down to one field: the Material Request Type. Pick the wrong one and "Create Purchase Order" is greyed out, or your request quietly turns into a stock transfer instead of an order. This guide shows which Type to use, how the request flows to a PO, how partial fulfilment works, and how to fix the moments it stalls.
Want the request raised automatically?
If you're tired of raising Material Requests by hand every time stock runs low, the ERPNext auto-reorder guide shows how to make stock levels create the Purchase request for you.
The Material Request Type is the single field that decides whether you get a Purchase Order or a Stock Entry — and most "it won't let me order" tickets are just the wrong Type. I am Manoj, ERPNext and Frappe implementation lead at Mith Tech in Bengaluru; we wire the buying cycle on every distribution and manufacturing go-live.
The Type field decides everything
A Material Request in ERPNext isn't only a purchase requisition — the Material Request Type repurposes the same document for five different jobs, and only one of them buys anything. Per the official documentation, the Type controls what the request can become downstream. Pick it first; everything else follows.
Select a Material Request Type to see when to use it and which document it flows into.
Pick the Material Request Type to see when to use it and where it flows.
The practical rule: use Purchase for anything you'll order from a supplier. Material Transfer moves stock you already own between warehouses (it becomes a Stock Entry, not a Purchase Order), and Manufacture feeds production. If "Create → Purchase Order" is missing, the Type is the first thing to check.
Where a Material Request sits in the buying cycle
The request is step one of a five-stage flow. You don't always need every stage — walk through it to see what's optional.
Tap through Material Request → RFQ → Supplier Quotation → Purchase Order → Purchase Receipt to see what each stage does and when to skip it.
The internal ask: “we need these items.” Type = Purchase for anything you buy. Can be raised by hand, from a Sales Order, from a Work Order, or auto-created when stock hits its reorder level.
You can skip the Request for Quotation and Supplier Quotation stages entirely when you already know the supplier and price — go straight from Material Request to Purchase Order. Use them when you want to collect and compare prices from several suppliers first.
Converting, auto-creating, and fixing
Step recipes for converting a Material Request to a Purchase Order, auto-creating requests from reorder levels, and fixing the common stalls.
The supported path — and the partial-fulfilment gotcha.
1. Open the submitted Material Request (Type = Purchase).
2. Create > Purchase Order. (ERPNext asks for a default
Supplier — set one, or set it per item on the Item master.)
3. Only ordering some now? Reduce the qty on the PO. ERPNext
tracks the MR's "% Ordered"; raise another PO later for the rest.
4. Can't create a PO? Check the MR is SUBMITTED and Type =
Purchase (Transfer/Manufacture types don't produce POs).Raise a Purchase-type Material Request
New Material Request → Type = Purchase → add items and quantities → Submit. It has to be submitted before it can become a Purchase Order.
Create the Purchase Order
From the submitted request: Create → Purchase Order. ERPNext prompts for a default Supplier (set one here, or per item on the Item master). It carries the items and quantities across.
Order partially if you need to
Reduce the quantity on the Purchase Order to order only part now. ERPNext records the Material Request's ordered percentage, so you can raise another Purchase Order for the balance later without double-ordering.
Receive and bill from the PO
Raise a Purchase Receipt when goods arrive (stock and valuation post here) and a Purchase Invoice to bill — both pulled from the Purchase Order so the links stay intact.
Order now, or collect quotes first?
FAQ
+What is a Material Request in ERPNext?
A Material Request is ERPNext's internal purchase requisition — a record that says "we need these items". Its Type field decides what it becomes: a Purchase-type request flows to a Request for Quotation or a Purchase Order, while Material Transfer, Issue, and Manufacture types flow to Stock Entries or Work Orders instead.
+How do I create a Purchase Order from a Material Request?
Submit the Material Request with Type set to Purchase, then choose Create then Purchase Order from the submitted document and set the supplier when prompted. To order only part of it, reduce the quantity on the Purchase Order — ERPNext tracks the ordered percentage so you can raise another PO for the balance.
+Why is Create Purchase Order not working on my Material Request?
Almost always because the request isn't submitted yet, or its Type isn't Purchase. Material Transfer, Material Issue, and Manufacture types don't produce Purchase Orders — they become Stock Entries or Work Orders. Check both before anything else; a few version-specific conversion bugs exist too (for example #44635 on v16).
+Can one Material Request become multiple Purchase Orders?
Yes. Reduce the quantity on each Purchase Order to order in parts; ERPNext records the ordered percentage against the Material Request so the remaining quantity stays available for a later PO. This is how partial fulfilment across suppliers or over time is handled.
+What's the difference between Material Request and Stock Entry?
A Material Request is a request for items; a Stock Entry is an actual movement of stock. A Purchase-type Material Request leads to buying (Purchase Order). A Material Transfer or Issue type Material Request, once actioned, becomes a Stock Entry that physically moves or issues existing stock — no purchase involved.
+Does this apply to ERPNext v14, v15 and v16?
Yes — Material Request Types and the buying flow are the same across v14, v15 and v16. A few conversion bugs are version-specific (for example the v16 MR-to-PO error #44635), so confirm your patch level if a conversion misbehaves.
Closing
The Material Request is a simple document with one decisive field. Set the Type correctly, submit before you convert, and use partial ordering rather than fighting the system, and the buying cycle runs cleanly from requisition to receipt. Everything else in ERPNext buying hangs off getting this first step right.
Buying cycle a mess of ad-hoc POs and no requisition control?
We set up the Material Request → RFQ → Purchase Order flow with approvals, auto-reorder, and supplier defaults so procurement stops running on WhatsApp and spreadsheets.