Skip to content
DevMarket
Odoo ModulesWordPress PluginsWordPress ThemesShopify ThemesApp TemplatesScripts & UtilitiesBlogSell on DevMarket

Purchase Requests for Odoo 19 documentation

A guide to purchase requests: asking, approval, creating the RFQs, following what was ordered and received, the printout and access rights.

Documents version 1.0.0Updated Oct 23, 2026

Start here

In plain words: Somebody needs paper, somebody else needs a laptop, and the buyer finds out from a message in a chat. Purchase Requests gives everyone one place to ask for what they need. A purchase manager approves it, and the buyers turn the approved lines into RFQs with a few clicks, one RFQ per vendor, while the request keeps track of what was ordered and what was received.
The requests, one request partly ordered, and the wizard that creates the RFQs.
The requests, one request partly ordered, and the wizard that creates the RFQs.
Tip: Anyone with an Odoo user can ask. Only purchase managers approve, and only the purchasing team creates RFQs.

What you get

FeatureWhat it does
RequestsA request with lines: product, quantity, unit, estimated price, needed-by date and a suggested vendor.
ApprovalThe requester submits, the purchase managers get an activity, one of them approves or rejects with a reason.
Create RFQsA wizard proposes what is still to order with the vendor of each line. It creates one RFQ per vendor, or adds the lines to an open RFQ of that vendor.
Follow-upEach line shows what was ordered, what was received and what is still to order. The request becomes Partly ordered, then Ordered.
Linked to the RFQThe purchase order lines remember their request. The order has a Requests button, the request has an RFQs and orders button.
Items to OrderAll approved lines still to order, grouped by vendor.
PrintA request form with the lines and what was ordered.
Own requests onlyRequesters see only their own requests.
ArabicEverything is translated and works right to left.

Requirements

ItemDetails
Odoo19.0 (Community or Enterprise)
Apps neededPurchase (purchase)
LicenseOPL-1 (Odoo Proprietary License v1.0)

Install

  1. Unzip the package. Inside is taqnix_purchase_request.zip; unzip it to get the folder taqnix_purchase_request.
  2. Copy the folder into one of the addons_path folders of your Odoo server and restart Odoo.
  3. Log in as an administrator, activate Developer mode, open Apps and press Update Apps List.
  4. Remove the “Apps” filter, search Purchase Requests and press Install.
# or from the command line
./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_purchase_request --stop-after-init

Ask for something

In plain words: Open Purchase → Requests → Purchase Requests and press New. Add the products with the quantity; the estimated price and the suggested vendor come from the product and can be changed. Say why it is needed and when, then press Submit.
The requests: draft, rejected, to approve, approved, partly ordered and ordered. The urgent ones have a star.
The requests: draft, rejected, to approve, approved, partly ordered and ordered. The urgent ones have a star.
A draft request: the requester can still change it.
A draft request: the requester can still change it.
Tip: After the submission the requester can no longer change the request. Only the purchasing team can.

Approve or reject

In plain words: The purchase managers get an activity when a request is submitted. Open it and press Approve, or Reject and give the reason. The requester is told in the chatter. A rejected request goes back to draft with Back to draft.
A request waiting for approval, with its activities.
A request waiting for approval, with its activities.
A rejected request with its reason.
A rejected request with its reason.

Create the RFQs

In plain words: On an approved request, a buyer presses Create RFQs. The wizard lists what is still to order. Change the quantity or the vendor, or remove a line you do not order now. One RFQ is created for each vendor.
The wizard: each line with its vendor and price.
The wizard: each line with its vendor and price.
OptionWhat it does
Add to an open RFQ of the same vendorChecked: the lines go to the vendor's open RFQ if there is one. Unchecked: a new RFQ is created.
QuantityA part of the quantity can be ordered now and the rest later; the request is then Partly ordered.
VendorSuggested from the request or the product. A line without a vendor cannot be ordered.
The RFQ with its Requests button.
The RFQ with its Requests button.

Follow what happens

In plain words: The request counts the quantities of its lines that are in RFQs and orders (cancelled ones do not count), converted to the unit of the request, and what was received. It becomes Ordered when nothing is left to order. If an RFQ is cancelled, or its quantity is lowered, the quantity comes back and the request becomes Partly ordered or Approved again.
A request partly ordered: 2 of the 3 laptops, the docking stations, and nothing for the mice.
A request partly ordered: 2 of the 3 laptops, the docking stations, and nothing for the mice.
The items still to order, grouped by vendor.
The items still to order, grouped by vendor.
In plain words: Print on a request gives the form with the requester, the dates, the lines and what was ordered and received.
The printed request.
The printed request.

Who can do what

WhoCan
Every userCreate a request, change it while it is a draft, submit, cancel or reopen it. They see only their own requests.
Buyers (Purchase / User)See all the requests, create the RFQs, see the Items to Order, edit a submitted request.
Purchase managersEverything the buyers do, and approve or reject. The group Purchase Requests: Approver is added to them.

Arabic and right to left

The requests in an Arabic interface.
The requests in an Arabic interface.

Limits

LimitDetail
One approval stepOne manager approves. There are no levels by amount; use an approval module for that.
Products onlyA line needs a product.
DeliveryWhat was received comes from the receipts of the purchase orders.
One company per requestEach request belongs to one company.

For developers

In plain words: Skip this chapter if you only use the module.
request = env['taqnix.purchase.request'].create({
    'line_ids': [(0, 0, {'product_id': product.id, 'product_qty': 10})],
})
request.action_submit(); request.action_approve()
request.line_ids.po_line_ids   # the purchase order lines created from it

Troubleshooting

ProblemWhat to do
“Choose a vendor on every line”Choose the vendor in the wizard, or put a vendor on the product.
“RFQs were created from this request: cancel them first”Cancel the RFQs; the request can then be cancelled.
“A request that has been submitted can only be changed by the purchasing team”Ask the buyer, or press Back to draft after a rejection.
I cannot approveYou need to be a purchase manager.
I do not see Items to OrderIt is for the purchasing team.

Updating and removing

Replace the folder with the new version, restart Odoo and run -u taqnix_purchase_request. Requests and their links to the RFQs are kept.

Support

Installation help and bug fixes are included for 6 months, with lifetime updates. Contact us through the marketplace page where you bought the module or write to support@taqnix.com with your Odoo version and a screenshot.