Exchange Rate on Purchase Order
Enter the exact exchange rate you negotiated with your vendor — instead of Odoo's daily market rate — and have it flow automatically through the purchase order, the vendor bill, and stock valuation.
When you raise a purchase order in a foreign currency, Odoo normally converts it using that day's market rate. This module lets you enter the exact rate you negotiated with your vendor instead — shown both ways (e.g. 1 USD = 3.80 AED and 1 AED = 0.26 USD).
That same rate then carries forward automatically to the vendor bill and is used to value your stock when the goods arrive, so the order, the bill, and your inventory all agree on one number — no manual exchange-difference corrections needed.
The rate fields stay editable while the order is in draft or quotation state, then automatically lock the moment the order is confirmed — protecting the agreed rate from being changed afterward.
Whether the bill is created directly from the order, through Bill Matching, or linked later via Odoo's Auto-Complete field, the module re-applies the correct rate so the bill is never left with a different, freshly-fetched market rate.
This module is ideal for businesses that negotiate fixed exchange rates with vendors, deal in semi-fixed or pegged currencies (e.g. AED, SAR), and need their purchase order, vendor bill, and inventory valuation to match exactly.
How It Works
Five simple steps from picking a currency to a fully aligned stock valuation
Pick a Foreign Currency
Select a foreign currency on the order — a starting rate fills in automatically.
Override With Your Rate
Replace it with the rate you actually agreed with your vendor.
Confirm the Order
Confirm the order — the rate locks so it can't be changed afterward.
Create the Vendor Bill
The bill picks up the exact same rate automatically.
Receive the Goods
Stock valuation uses that same rate, not the day's market rate.
See It in Action
A visual walkthrough from activating a foreign currency to a fully aligned stock valuation.
Enable Multi-Currency & Activate a Foreign Currency
Go to Settings → Accounting, scroll to the Currencies section, then click through to activate the foreign currency you'll be purchasing in (e.g. USD, EUR, AED) — make sure it has at least one exchange rate set.
Settings → Currencies → Activate a foreign currency
Create a Purchase Order in a Foreign Currency
Create a new RFQ and select your vendor. Change the order's Currency field — the bidirectional rate widget appears just below it, pre-filled with today's market rate as a starting point.
New RFQ → Pick Vendor → Change Currency
Override the Rate to Match What You Agreed
Type the negotiated rate into either side of the widget — whichever side you edit, the other field updates instantly to stay mathematically consistent.
Edit either rate field — the other side updates automatically
Add Products & Review the Total
Add your order lines as usual. The company-currency total is calculated using your manual rate instead of the date-based market rate — the true cost that will land in your accounting currency.
Order total reflects your manual exchange rate
Confirm the Purchase Order
Click Confirm Order. The moment the order becomes a confirmed Purchase Order, both rate fields automatically switch to read-only.
Confirm Order → Rate fields become read-only
Create the Vendor Bill
Create the vendor bill from the confirmed order — via Create Bill, Bill Matching, or any standard route. The bill is generated using the exact same rate as the PO.
Create Bill → Same currency rate carried over
Still Works via Manual Auto-Complete
Even if a bill is linked afterward via Odoo's Auto-Complete field, the module re-applies the correct rate — correcting Odoo's own logic that normally resets it to a fresh market rate.
Manual Auto-Complete → Rate still matches the original PO
Receive the Goods
Validate the receipt as normal. Behind the scenes, the module values incoming stock moves using your manual rate — not the market rate on the day goods happen to arrive.
Validate Receipt → Stock valued with the manual rate
Inventory Valuation Stays Aligned
For products costed with FIFO or Average Cost (AVCO), the product's running cost updates using your manual rate — keeping the PO total, vendor bill, and inventory valuation report all telling the same story.
Product cost reflects the agreed exchange rate
Built by Odoo Experts.
Trusted by Businesses.
Dedicated Support
We stand behind every product we ship, responsive support when you need it most. ✦10-Hour Free Support Included
Industry-Specific Expertise
Deep knowledge across manufacturing, retail, services, healthcare, and more — we don't apply generic ERP templates, we tailor solutions to your sector.
Fast & Phased Implementation
Our agile delivery model gets your core ERP live quickly, then scales with your needs — reducing risk and accelerating ROI.
Email us
sales@truodo.com
+91 99255 58791
https://www.linkedin.com/company/truodo-solutions
FAQ
Everything worth knowing before you install. Still unsure about something specific?
Built by Odoo Experts.
Trusted by Businesses.
Dedicated Support
We stand behind every product we ship, responsive support when you need it most. ✦10-Hour Free Support Included
Industry-Specific Expertise
Deep knowledge across manufacturing, retail, services, healthcare, and more — we don't apply generic ERP templates, we tailor solutions to your sector.
Fast & Phased Implementation
Our agile delivery model gets your core ERP live quickly, then scales with your needs — reducing risk and accelerating ROI.
Email us
sales@truodo.com
+91 99255 58791
https://www.linkedin.com/company/truodo-solutions
10-Hour Free Support Included
Try the Exchange Rate on Purchase Order module risk-free. No credit card required.
Our team will guide you through the entire setup and workflow.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Accounting (accountant)
• Invoicing (account) • Discuss (mail) • Purchase (purchase) • Inventory (stock) |
| Community Apps Dependencies | Show |
| Lines of code | 831 |
| Technical Name |
trdo_purchase_currency_rate |
| License | OPL-1 |
| Website | https://www.truodo.com |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module