{"id":22521,"date":"2026-08-03T11:52:30","date_gmt":"2026-08-03T11:52:30","guid":{"rendered":"https:\/\/tenthplanet.in\/idempiere\/?p=22521"},"modified":"2026-08-14T08:59:17","modified_gmt":"2026-08-14T08:59:17","slug":"how-to-configure-workflow-processor-in-idempiere","status":"publish","type":"post","link":"https:\/\/tenthplanet.in\/idempiere\/how-to-configure-workflow-processor-in-idempiere\/","title":{"rendered":"How to Configure Workflow Processor in iDempiere"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The Workflow Processor window in iDempiere schedules and runs the background engine that drives approval workflows, alerts, and reminders. Each cycle checks pending workflow activity, escalates overdue items to a supervisor, and logs the run so store and back-office teams can confirm approvals are processed on time.<\/p>\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=\"362\" src=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkflowProcessor-1024x362.png\" alt=\"\" class=\"wp-image-22525\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkflowProcessor-1024x362.png 1024w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkflowProcessor-300x106.png 300w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkflowProcessor-768x271.png 768w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkflowProcessor-1536x543.png 1536w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkflowProcessor.png 1962w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\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 Active Workflow Processor records are executed on their schedule.<\/li>\n\n\n\n<li>The Schedule interval controls how often pending workflow activities are checked.<\/li>\n\n\n\n<li>Supervisor is alerted when items exceed Reminder Days or Inactivity Alert Days.<\/li>\n\n\n\n<li>Days to keep Log determines how long execution history is retained.<\/li>\n\n\n\n<li>Every run creates a Log record showing duration, summary, and error status.<\/li>\n\n\n\n<li>Alert over Priority escalates only workflow items above the set priority.<\/li>\n\n\n\n<li>Date Next Run is recalculated automatically after each processor cycle.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Prerequisites<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tenant and System-level access configured for the processor record.<\/li>\n\n\n\n<li>Supervisor user (e.g., SuperUser) created and set to Active.<\/li>\n\n\n\n<li>Workflow definitions for retail documents (PO, SO approvals) already configured.<\/li>\n\n\n\n<li>Mail\/Notification server configured if reminder emails are required.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Navigation<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Menu \u2192 System Admin \u2192 General Rules \u2192 Workflow \u2192 Workflow Processor<\/p>\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: Name the Processor and Set Organization<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Open a new record, enter a descriptive Name, keep Tenant as System for global processors, and leave Organization as &#8220;*&#8221; unless scoping to one store.<\/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>Tenant<\/td><td>System<\/td><td>Scope of the workflow engine instance.<\/td><\/tr><tr><td>Organization<\/td><td>*<\/td><td>Organization the processor applies to.<\/td><\/tr><tr><td>Name<\/td><td>SuperUserWorkFlowProcess<\/td><td>Identifies the processor job.<\/td><\/tr><tr><td>Description<\/td><td>(optional)<\/td><td>Free-text note on job purpose.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"551\" src=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-1-1024x551.png\" alt=\"\" class=\"wp-image-22524\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-1-1024x551.png 1024w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-1-300x161.png 300w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-1-768x413.png 768w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-1-1536x827.png 1536w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-1.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 2: Set the Run Schedule<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Set Schedule to a practical interval (e.g., 1 Minute for high-volume PO approvals). Shorter intervals increase responsiveness but add server load.<\/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>Schedule<\/td><td>1 Minutes<\/td><td>Frequency of the background check.<\/td><\/tr><tr><td>Date Last Run<\/td><td>07\/31\/2026 2:09:45 PM<\/td><td>Timestamp of the previous cycle.<\/td><\/tr><tr><td>Date Next Run<\/td><td>07\/31\/2026 2:10:45 PM<\/td><td>Auto-calculated next execution time.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 3: Assign Supervisor and Alert Thresholds<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Select a Supervisor user, set Reminder Days for first notice, Inactivity Alert Days for stalled items, and Alert over Priority to escalate urgent documents only.<\/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>Supervisor<\/td><td>SuperUser<\/td><td>User notified of workflow alerts.<\/td><\/tr><tr><td>Reminder Days<\/td><td>7<\/td><td>Days before a reminder is sent.<\/td><\/tr><tr><td>Inactivity Alert Days<\/td><td>0<\/td><td>Days of inactivity before alert.<\/td><\/tr><tr><td>Alert over Priority<\/td><td>0<\/td><td>Minimum priority level to escalate.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 4: Set Log Retention<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Set Days to keep Log to a value matching audit needs (e.g., 7 days). Older log entries are purged automatically on each run.<\/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>Days to keep Log<\/td><td>7<\/td><td>Retention period for Log tab entries.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 5: Activate the Processor<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Check the Active checkbox, save the record, and confirm Date Next Run updates to reflect the configured schedule.<\/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>Active<\/td><td>Checked<\/td><td>Enables the processor to run.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 6: Monitor the Log Tab<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Review each Log row&#8217;s Summary and Reference columns; check the Error box for failed cycles and investigate the Text Message for details.<\/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>Created<\/td><td>07\/31\/2026 1:58:45 PM<\/td><td>Timestamp of the logged run.<\/td><\/tr><tr><td>Summary<\/td><td>Wakeup #0 &#8211; DynPriority #0 &#8211; EndWaitTime #0<\/td><td>Run statistics for the cycle.<\/td><\/tr><tr><td>Error<\/td><td>Unchecked<\/td><td>Indicates whether the run failed.<\/td><\/tr><tr><td>Reference<\/td><td>#0 &#8211; 0&#8217;00:00:00.35<\/td><td>Run sequence and execution time.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"520\" src=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-2-1024x520.png\" alt=\"\" class=\"wp-image-22523\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-2-1024x520.png 1024w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-2-300x152.png 300w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-2-768x390.png 768w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-2-1536x780.png 1536w, https:\/\/tenthplanet.in\/idempiere\/wp-content\/uploads\/sites\/13\/2026\/08\/TenthPlanet-iDempiere-GeneralRules-WorkFlowProcesor-2.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\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>Processor never runs<\/td><td>Active checkbox left unchecked<\/td><td>Enable Active and save the record.<\/td><\/tr><tr><td>Date Next Run not updating<\/td><td>Server process not restarted after change<\/td><td>Restart the application server instance.<\/td><\/tr><tr><td>No alerts reaching supervisor<\/td><td>Supervisor blank or mail server unset<\/td><td>Assign Supervisor; configure mail server settings.<\/td><\/tr><tr><td>Log table growing too large<\/td><td>Days to keep Log set too high<\/td><td>Lower retention days to control table size.<\/td><\/tr><tr><td>Error flagged in Log<\/td><td>Referenced workflow document invalid or deleted<\/td><td>Check the referenced document and workflow setup.<\/td><\/tr><tr><td>Approvals stuck despite active processor<\/td><td>Schedule interval set too long for volume<\/td><td>Reduce the Schedule interval for faster checks.<\/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 the Workflow window to define approval nodes and routing.<\/li>\n\n\n\n<li>Assign the workflow to the relevant Document Type (e.g., Purchase Order).<\/li>\n\n\n\n<li>Set up Mail Server \/ Mail Template for email-based notifications.<\/li>\n\n\n\n<li>Confirm Role and User setup for all approval participants.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The Workflow Processor window in iDempiere schedules and runs the background engine that drives approval workflows, alerts, and reminders. Each [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10,91],"tags":[],"class_list":["post-22521","post","type-post","status-publish","format-standard","hentry","category-idempiere-product","category-idempiere-general-rules"],"_links":{"self":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/22521","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=22521"}],"version-history":[{"count":2,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/22521\/revisions"}],"predecessor-version":[{"id":22526,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/22521\/revisions\/22526"}],"wp:attachment":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/media?parent=22521"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/categories?post=22521"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/tags?post=22521"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}