{"id":20052,"date":"2026-07-07T11:24:00","date_gmt":"2026-07-07T11:24:00","guid":{"rendered":"https:\/\/tenthplanet.in\/idempiere\/?p=20052"},"modified":"2026-07-07T12:09:08","modified_gmt":"2026-07-07T12:09:08","slug":"how-to-generate-po-from-sales-order-in-idempiere","status":"publish","type":"post","link":"https:\/\/tenthplanet.in\/idempiere\/how-to-generate-po-from-sales-order-in-idempiere\/","title":{"rendered":"How to Generate PO from Sales Order in iDempiere"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Configure the Generate PO from Sales Order window in iDempiere to auto-create vendor purchase orders from retail sales order lines by current vendor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Introduction<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Generate PO from Sales Order is an iDempiere process window that automatically creates Purchase Orders from confirmed Sales Order lines, using each product&#8217;s active current vendor.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It shortens replenishment cycles, keeps sales and purchase documents linked for traceability, and reduces duplicate ordering across busy retail sales desks.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Business Rules<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Only Sales Orders with IsSOTrx = Y are eligible for PO generation.<\/li>\n\n\n\n<li>Sales Order lines already linked to a Purchase Order line are excluded automatically.<\/li>\n\n\n\n<li>One Purchase Order is created per vendor per Sales Order.<\/li>\n\n\n\n<li>Only products with an active Current Vendor in Product Purchasing are processed.<\/li>\n\n\n\n<li>If a Vendor parameter is entered, only that vendor&#8217;s products are processed.<\/li>\n\n\n\n<li>Header-level SO-to-PO link is set only when exactly one PO is created.<\/li>\n\n\n\n<li>Line-level links between SO and PO lines are always created for traceability.<\/li>\n\n\n\n<li>Drop Shipment copies Delivery Via Rule and Shipper from the Sales Order.<\/li>\n\n\n\n<li>At least one selection filter must be entered before running the process.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Process Flow<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"395\" src=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/Generate_PO_From_SO-1024x395.png\" alt=\"\" class=\"wp-image-20082\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/Generate_PO_From_SO-1024x395.png 1024w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/Generate_PO_From_SO-300x116.png 300w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/Generate_PO_From_SO-768x296.png 768w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/Generate_PO_From_SO.png 1432w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Navigation<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Menu \u2192 Sales \u2192 Sales Order \u2192 Generate PO from Sales Order<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"477\" src=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/TenthPlanet-iDempiere-Sales-GeneratePOFromSO-1024x477.png\" alt=\"\" class=\"wp-image-20066\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/TenthPlanet-iDempiere-Sales-GeneratePOFromSO-1024x477.png 1024w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/TenthPlanet-iDempiere-Sales-GeneratePOFromSO-300x140.png 300w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/TenthPlanet-iDempiere-Sales-GeneratePOFromSO-768x358.png 768w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/TenthPlanet-iDempiere-Sales-GeneratePOFromSO-1536x716.png 1536w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/07\/TenthPlanet-iDempiere-Sales-GeneratePOFromSO-2048x954.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Configuration Steps<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 1: Confirm Product Purchasing Setup<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Open Product Purchasing on each item, tick Current Vendor and Active, and confirm the linked Vendor Price List covers the product.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 2: Open the Generate PO from Sales Order Window<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Navigate via the menu, or run it directly from an open Sales Order so that order is auto-selected.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 3: Enter Selection Criteria<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Enter at least one of Date Ordered range, Business Partner, Vendor, or Order to scope which Sales Orders qualify.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample Value<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Date Ordered<\/td><td>07\/01\/2026 \u2013 07\/31\/2026<\/td><td>Restricts Sales Orders to a date range.<\/td><\/tr><tr><td>Business Partner<\/td><td>Alpha Retail Solutions<\/td><td>Filters Sales Orders for a specific customer.<\/td><\/tr><tr><td>Vendor<\/td><td>Aakash and Co<\/td><td>Generates POs only for the selected vendor.<\/td><\/tr><tr><td>Order<\/td><td>50007_06\/15\/2026<\/td><td>Processes one specific Sales Order document.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 4: Set the Drop Shipment Option<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Set Drop Shipment to Yes for direct-to-customer delivery, or leave it as No for standard warehouse receipt.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample<\/strong><\/td><td><strong>Purpose<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Drop Shipment<\/td><td>No<\/td><td>Controls whether the PO is flagged for direct customer delivery.<\/td><\/tr><tr><td>Run as Job<\/td><td>Unchecked<\/td><td>Runs the process in the background instead of immediately.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 5: Execute the Process<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Click OK to run immediately, or check Run as Job for large batches. Review the process log for the number of POs created.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 6: Verify Generated Purchase Orders<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Open the Purchase Order window, locate the new order via the Link Order reference, and verify vendor, lines, and pricing.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Common Issues and Resolutions<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Issue<\/strong><\/td><td><strong>Cause<\/strong><\/td><td><strong>Resolution<\/strong><\/td><\/tr><\/thead><tbody><tr><td>&#8220;You need to restrict selection&#8221; error<\/td><td>No filter criteria entered<\/td><td>Enter at least one of Date, Order, Customer, or Vendor.<\/td><\/tr><tr><td>No Purchase Order created for a product<\/td><td>Product has no active Current Vendor<\/td><td>Flag Current Vendor = Y in Product Purchasing for that item.<\/td><\/tr><tr><td>Sales Order line skipped silently<\/td><td>Line already linked to an existing PO line<\/td><td>Check the Purchase Order window before re-running the process.<\/td><\/tr><tr><td>Multiple POs created for one Sales Order<\/td><td>Products belong to different vendors<\/td><td>Expected behavior; review vendor assignment if consolidation is needed.<\/td><\/tr><tr><td>Incorrect PO line price<\/td><td>Vendor Price List missing or inactive for the product<\/td><td>Activate the correct Price List Version for the vendor.<\/td><\/tr><tr><td>Sales Order not showing Link to PO<\/td><td>More than one PO was generated for that order<\/td><td>Header link only applies when exactly one PO is created; use line links instead.<\/td><\/tr><tr><td>PO currency differs from Sales Order<\/td><td>Vendor Price List uses a different currency<\/td><td>Confirm the vendor price list currency matches business requirements.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Next Steps<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Configure Product Purchasing to maintain accurate Current Vendor records.<\/li>\n\n\n\n<li>Review and update Vendor Price List Versions regularly.<\/li>\n\n\n\n<li>Set up Organization Info for Drop Ship Warehouse defaults.<\/li>\n\n\n\n<li>Process the generated Purchase Orders for vendor confirmation and receipt.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Configure the Generate PO from Sales Order window in iDempiere to auto-create vendor purchase orders from retail sales order lines [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-20052","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"acf":[],"_links":{"self":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/20052","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/comments?post=20052"}],"version-history":[{"count":6,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/20052\/revisions"}],"predecessor-version":[{"id":20087,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/20052\/revisions\/20087"}],"wp:attachment":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/media?parent=20052"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/categories?post=20052"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/tags?post=20052"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}